The starting point of our implementation of stochastic parameterizations in NEMO is to observe that many existing parameterizations are based on autoregressive processes, which are used as a basic source of randomness to transform a deterministic model into a probabilistic model. A generic approach is thus to add one single new module in NEMO, generating processes with appropriate statistics to simulate each kind of uncertainty in the model (see Brankart et al.  for more details).
In practice, at every model grid point, independent Gaussian autoregressive processes are first generated using the same basic equation:
where is the index of the model timestep; and , , are parameters defining the mean () standard deviation ( ) and correlation timescale ( ) of each process:
In this way, higher order processes can be easily generated recursively using the same piece of code implementing Eq. (14.3), and using succesively processes from order 0 to as . The parameters in Eq. (14.5) are computed so that this recursive application of Eq. (14.3) leads to processes with the required standard deviation and correlation timescale, with the additional condition that the first derivatives of the autocorrelation function are equal to zero at , so that the resulting processes become smoother and smoother as is increased.
Overall, this method provides quite a simple and generic way of generating a wide class of stochastic processes. However, this also means that new model parameters are needed to specify each of these stochastic processes. As in any parameterization of lacking physics, a very important issues then to tune these new parameters using either first principles, model simulations, or real-world observations.
Gurvan Madec and the NEMO Team
NEMO European Consortium2017-02-17