Guide to Matlab/Octave Software

picture 4
Matlab provides a wide range of functions for generating random variables and carrying out statistical analysis.  It includes statistics, fuzzy and time series analysis tool boxes.

The SAFE toolbox

The SAFE (Sensitivity Analysis for Environmental Applications) toolbox is a set of Matlab routines and workflows for carrying out a wide range of sensitivity analyses (see Pianosi, F., J. Rougier, J. Freer, J. Hall, D. B. Stephenson, K. J. Beven, and T. Wagener, 2016, Sensitivity Analysis of environmental models: a systematic review with practical workflows, Environmental Modelling and Software, 79: 214-232). The SAFE toolbox is hosted by the University of Bristol at

The CURE toolbox

The CURE (CREDIBLE Uncertainty and Risk Estimation) is a set of Matlab/Octave routines and workflows for a variety of forms of uncertainty estimation (including Forward Uncertainty Estimation, Bayesian MCMC methods, Approximate Bayesian Computation (ABC) methods,  Generalised Likelihood Uncertainty Estimation (GLUE) methods.  The  CURE toolbox is free to download.   For a more complete description and download go to the CURE pages (here)

The CAPTAIN toolbox

The CAPTAIN tool box for time series analysis includes routines on which some of the real-time forecasting methods described in Section 5.3 of Environmental Modelling: An Uncertain Future? may be found at

Octave implements much of the functionality of Matlab in a package freely available under the GNU General Public License

Generation of random variables

Matlab has a number of inbuilt random number generators for different forms of distribution.

Both the SAFE and CURE toolboxes (see above) include routines for the generation of independent and correlated random variables.

Generalised Sensitivity Analysis (GSA)

Routines for Hornberger-Spear-Young GSA are included in the SAFE package (see above)

Generalised Likelihood Uncertainty Estimation (GLUE)

Implementations of GLUE is included in the CURE toolbox (see above).