MATERNOISE is the jMatern module of jLab.

 MATERNOISE  Realizations of the Matern process and variations, including fBm.  [with A. Sykulski]
 
    Z=MATERNOISE(DT,N,SIGMA,ALPHA,LAMBDA) simulates a length N complex-
    valued Matern random process Z having variance SIGMA^2, slope parameter
    ALPHA, and damping parameter LAMBDA.
 
    DT is the sample interval.  Note that LAMBDA is understood to have the
    same units as the inverse sample interval 1/DT.  For values of LAMBDA
    greater than about 1/DT, the process becomes essentially white noise. 
    Thus typical values will have LAMBDA<(1/DT).
 
    Z=MATERNOISE(DT,[N,M],SIGMA,ALPHA,LAMBDA) generate M realizations of  
    this process, so that Z is of size N x M.
 
    See MATERNSPEC for details on the input arguments. 
 
    Note that the process Z is explicitly set to have zero temporal mean. 
 
    For details, including the fast generation method described below, see:
 
      Lilly, Sykulski, Early, and Olhede, (2016).  Fractional Brownian
         motion, the Matern process, and stochastic modeling of turbulent 
         dispersion.  Submitted to IEEE Trans. Info. Theory.
    __________________________________________________________________
 
    Special cases
 
    Z=MATERNOISE(DT,N,A,ALPHA,0) generates realizations of fractional
    Brownian motion.  In this case, the third input argument is the 
    spectral amplitude A, not the standard deviation SIGMA.
 
    Z=MATERNOISE(DT,N,SIGMA,ALPHA,LAMBDA,NU,MU) simulates extensions of 
    the Matern process.  MATERNOISE(...,'composite') also works.  See 
    MATERNSPEC for details on these options.
    __________________________________________________________________
 
    Multiple parameter values
 
    The input arguments SIGMA, ALPHA, etc. may all be either scalars, or
    arrays of the same length, say K.  
 
    Z=MATERNOISE(DT,N,SIGMA,ALPHA,...), with at least one of SIGMA, ALPHA,
    etc. being an array of length K, returns a matrix Z that is N x K. 
 
    Z=MATERNOISE(DT,[N M],SIGMA,ALPHA,...) then gives Z of size N x M x K.
    __________________________________________________________________
 
    Algorithm
 
    MATERNOISE uses a Cholesky matrix decomposition method which makes the
    autocovariance matrix of the generated process Z have exactly the form 
    of a sampled Matern autocovariance function, for nonzero LAMBDA, or of 
    fractional Brownian motion for H=0. 
 
    Note that since the Cholesky decomposition requires O(N^3) operations,
    generating very long time series (>2000 points or so) may be slow.
    __________________________________________________________________
 
    Fast algorithm 
 
    MATERNOISE(...,'fast') uses a fast approximate generation algorithm 
    described in Lilly et al. (2016).  This method works by making use of 
    the known analytic form for the Matern impulse response function.
 
    In the fast algorithm, oversampling is used to ensure that the 
    structure of the Green's function is accurately resolved. 
 
    [Z,ERR]=MATERNOISE(...,'fast') also returns the error ERR involved in 
    the fast algorithm's approximation of the autocovariance sequence.  
    Note that this is for testing purposes only, as it substantially slows
    down the algorithm. 
    __________________________________________________________________
 
    See also MATERNSPEC, MATERNCOV, MATERNIMP.
 
    'maternoise --t' runs some tests.
    'maternoise --f' generates a sample figure.
 
    Usage: z=maternoise(dt,N,sigma,alpha,lambda);
           z=maternoise(dt,N,sigma,alpha,lambda,'fast');
           z=maternoise(dt,[N,M],sigma,alpha,lambda,nu,mu);
           z=maternoise(dt,N,A,alpha,0);
    __________________________________________________________________
    This is part of JLAB --- type 'help jlab' for more information
    (C) 2013--2016  A.M. Sykulski and J.M. Lilly
                                  --- type 'help jlab_license' for details

contents | allhelp | index