Jan, Some of that is part of the CSALT model -- the reference to log_model is a factor concerning log(CO2), which is the AGW forcing parameter. Ignore that for now, but eventually it will get incorporated into a larger model.

I don't typically use Fourier transforms to root out the spectral components. Those were obtained (1) from using exploratory machine learning via Eureqa and (2) from the knowledge of main tidal periods, wobble periods, etc. I am avoiding tweaking these values too much because that may lead to overfitting.

The validation is that a set of frequencies is used on the training interval and then the constructed waveform is extended, i.e. extrapolated, across the validation interval.

Yes, the goal is to determine whether the time series is stationary, see my comment #13 above.

This model is first-order physics of the sloshing of the ocean, following Allan Clarke's derivation of the wave equation described in comment #35.

In the differential equation expansion mode, I compare the data on the left-hand side (LHS) against the forcing on the right-hand side (RHS)

$LHS(t) \leftarrow f''(t) + \omega_0^2 f(t) = B \cdot cw(t) + C \cdot tide(t)\rightarrow RHS(t)$

where the LHS is the wave equation transformed ENSO data (observe the noise in the signal), and the RHS is an empirical model of the known forcing factors. What this interactive application does is determine what combination of forcing input parameters will match best the forced response. I imagine that many people have done this as part of researching ENSO but I have yet to find anything in the peer-reviewed literature.

I will add the parameters to the input so those can be tweaked to see what impact it has on the fit.