Method matrix/mcmc


  MCMC estimates paramters using a Monte Carlo Markov Chain.
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
  DESCRIPTION: MCMC estimate the parameters of a given model given
               inputs, outputs and noise using a Metropolis algorithm.
 
  CALL:        [b smplr] = mcmc(out,pl)
 
  INPUTS:      out     -  matrix objects with measured outputs
               pl      -  parameter list
 
  OUTPUTS:     b   - pest object contatining estimate information
               smplr - matrix containing info about the rejected points
 
  Parameters Description
 
  References:  M Nofrarias et al. Phys. Rev. D 82, 122002 (2010)
 
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Method Details
Access public
Defining Class matrix
Sealed 0
Static 0

Parameter Description

Default

no description
Key Default Value Options Description
SIMPLEX 0
  • 0
  • 1
Set to true to perform a simplex search to find the starting parameters of the MCMC chain.
MHSAMPLE 1
  • 1
  • 0
Set to true to perform a mhsample search. This is set to true by default. Only to be set to false by the user if we does not want to perform the mcmc search.
FREQUENCIES [] none Array of frequencies where the analysis is performed.
F1 [] none Initial frequency for the analysis.
F2 [] none Final frequency for the analysis.
FSOUT [] none Desired sampling frequency to resample the input time series.
NAVS 5 none The number of averages to use when calculating PSD and CPSD.
WINDOW 0
  • 0
  • 1
True-False flag to use a window on the data.
INNAMES '' none The input names. Used in the SSM case.
OUTNAMES '' none The output names. Used in the SSM case.
PINV 0
  • 0
  • 1
Use the Penrose-Moore pseudoinverse.
TOL [] none Tolerance for the Penrose-Moore pseudoinverse.
NOISE SCALE 'PSD'
  • 'PSD'
  • 'LPSD'
Select the way to handle the noise/weight data. Can use the PSD/CPSD or the LPSD/CLPSD functions.
BIN DATA 0
  • 0
  • 1
Set to true to re-bin the measured noise data.
JDES 1000 none The desired number of spectral frequencies to compute. Used in the case of 'LPSD' method.
NFFT -1 none The number of samples in each fft [default: length of input data].
A string value containing the variable 'fs' can also be used, e.g.,
plist('Nfft', '2*fs')
WIN 'BH92'
  • 'Rectangular'
  • 'Welch'
  • 'Bartlett'
  • 'Hanning'
  • 'Hamming'
  • 'Nuttall3'
  • 'Nuttall4'
  • 'Nuttall3a'
  • 'Nuttall3b'
  • 'Nuttall4a'
  • 'Nuttall4b'
  • 'Nuttall4c'
  • 'BH92'
  • 'SFT3F'
  • 'SFT3M'
  • 'FTNI'
  • 'SFT4F'
  • 'SFT5F'
  • 'SFT4M'
  • 'FTHP'
  • 'HFT70'
  • 'FTSRS'
  • 'SFT5M'
  • 'HFT90D'
  • 'HFT95'
  • 'HFT116D'
  • 'HFT144D'
  • 'HFT169D'
  • 'HFT196D'
  • 'HFT223D'
  • 'HFT248D'
  • 'Kaiser'
  • 'levelledHanning'
The window to be applied to the data to remove the discontinuities at edges of segments. [default: taken from user prefs]
Only the design parameters of the window object are used. Enter a string value containing the window name e.g.
plist('Win', 'Kaiser', 'psll', 200)
plist('Win', 'BH92')
PSLL 200 none The peak sidelobe level for Kaiser windows.
Note: it is ignored for all other windows
OLAP -1 none The segment percent overlap [-1 == take from window function]
ORDER, N 0
  • -1
  • 0
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
The order of segment detrending:
  • -1 - no detrending
  • 0 - subtract mean
  • 1 - subtract linear fit
  • N - subtract fit of polynomial, order N
TIMES, SPLIT [] none The time range to analyze. If not empty, sets the time interval to operate on.
As in ao/split, the interval can be specified by:
  • a vector of doubles
  • a timespan object
  • a cell array of time strings
  • a vector of time objects
INPUT '' none The injection signals.
OUTPUT '' none The measured output data.
NOISE '' none The noise data.
MODEL '' none The model to use.
FREQS '' none The frequencies to calculate the bode. For SSMs.
X0 [] none The starting point.
DISPLAY 'iter'
  • 'iter'
  • 'off'
  • 'notify'
  • 'final'
Level of display..
FUNVALCHECK 'off'
  • 'off'
  • 'on'
Check whether objective function values are valid. 'on' displays an error when the objective function returns a value that is complex, Inf or NaN. 'off' (the default) displays no error.
MAXFUNEVALS 1000 none Maximum number of function evaluations allowed.
MAXITER 1000 none Maximum number of iterations allowed.
OUTPUTFCN [] none User-defined function that is called at each iteration.
PLOTFCNS [] none Plots various measures of progress while the algorithm executes.
TOLFUN 1.0000000000000001e-05 none Termination tolerance on the function value.
TOLX 1.0000000000000001e-05 none Termination tolerance on x.
FITPARAMS '' none The names of the parameters to fit.
LOG PARAMETERS '' none The parameters to sample in log-scale.
TXT 0
  • 0
  • 1
Set to true if a print of the parameters into a txt file is desired.
FUNC '' none The function handle to minimize.
DIFF MODEL '' none Model to use for the update of the covariance matrix during the search phase. It should be an unprocessed version of the model to fit.
NSAMPLES 1000 none number of samples of the chain.
COV [] none covariance of the gaussian jumping distribution.
LOGLIKELIHOOD [] none A log-likelihood function. Must be a 'mhf' LTPDA object.
RANGE [] none Range where the parameteters are sampled.
SEARCH 1
  • 1
  • 0
Set to true to use bigger jumps in parameter space during annealing and cool down.
PROPOSAL SAMPLER [] none Set the proposal PDF to sample from. If left empty the multivariate Gaussian is used.
PROPOSAL PDF [] none Input the proposal PDF. This is needed when the proposal PDF is not symmetric.If this field is empty, a symmetric PDF is assumed. Check help for details.
HEAT 1 none The heat index flattening likelihood surface during annealing.
TC [0 1] none An array of two values [i j], setting the i-th and j-th sample for the cooling down.
UPDATE FIM FREQ [] none Provide with the desired frequency where the FIM should be updated.
JUMPS [] none An array of four numbers setting the rescaling of the covariance matrix during the search phase.
PLOT TRACES [] none Select indexes of the parameters to be plotted.
PLOT DIAGNOSTICS 0
  • 0
  • 1
Set to true to plot diagnostigs at the end of the sampling.
DEBUG 0
  • 0
  • 1
Set to true to get debug information of the MCMC process.
FPRINT 100 none Print progress on screen every specified numeber of samples.
PRIOR '' none blah
ANNEAL 'simul'
  • 'simul'
  • 'thermo'
Choose type of annealing during sampling. Default value is simulated annealing. Choose "thermo" for annealing with a thermostat. SNR is computed and if it is larger than a fixed value SNR0 (provided also in the plist), then the chains are heated by a factor of (SNR(1)/SNR0)^2.
MODELFREQDEPENDENT 1
  • 1
  • 0
Set to true to use frequency dependent s models, set to false when using constant models
SNR0 200 none Fixed value for thermostated annealing.
FREQUENCIES VECTOR 200 none A vector of frequencies. Used for the update of the Fisher Matrix during the MH sampling.
DIFFSTEP [] none Numerical differentiation step for ssm models
NGRID [] none Number of points in the grid to compute the optimal differentiation step for ssm models
STEPRANGES [] none An array with upper and lower values for the parameters ranges. To be used to compute the optimal differentiation step for ssm models.
LOGA 1
  • 1
  • 0
True-False flag. If set to true, it computes the log(acceptance ratio).
MINIMIZE 1
  • 1
  • 0
True-False flag. If 'LOGA' is set to false, with this key, the mhsample function samples towards the minimum or the maximum of a given function.
back to top back to top

Some information of the method matrix/mcmc are listed below:
Class name matrix
Method name mcmc
Category Signal Processing
Package name ltpda
VCS Version 175910878ca914560542d679d9d392de37438d84
Min input args 1
Max input args -1
Min output args 1
Max output args -1




©LTP Team