In red is the input forcing \\( F(t) \\) which is an annual impulse-driven tidal signal. After each impulse, the signal is integrated into the previous value, thus creating an up-and-down stair-step appearing time series. This approach works well to fit to the [QBO time-series](https://contextearth.com/2018/10/16/asymptotic-qbo-period/), but obviously doesn't match to the ENSO time-series shown in blue.
This is the response \\( G(t) \\) after applying the LTE solution \\( G(t) = sin(A F(t) + B) \\). Now the model aligns to the data (whereas QBO works with a wavenumber=0 LTE solution). The art is in how to select the values of \\( A \\) and \\( B \\).
How to do that straightforwardly is the challenge. Can't simply apply an \\( \arcsin \\) to \\( G(T) \\) because that function is multi-valued and a variation of [amplitude folding](https://hal.archives-ouvertes.fr/hal-01007007/document) occurs when \\( A \\) is large enough.
May need some advice from the Category Theorists on how to develop a decent adjoint functor approach to seamlessly transition between \\( F(t) \\) and \\( G(t) \\) without resorting to a brute force iteration scheme.