| LTPDA Toolbox™ | contents | ![]() |
MHSAMPLE The Metropolis - Hastings algorithm %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% The Metropolis - Hastings algorithm: Samples a given likelihood function. Warning: The function mhsample does not performs sanity checks on the inputs. It assumes that the given data-sets are in frequency domain and correctly defined. CALL: b = mhsample(out, pl) INPUTS: out - analysis objects with measured outputs pl - parameter list OUTPUTS: b - pest object contatining estimated information Parameters Description %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
| Method Details | |
|---|---|
| Access | public |
| Defining Class | ao |
| Sealed | 0 |
| Static | 0 |
| Sets for this method … |
|---|
| Default |
Default |
|||
|---|---|---|---|
| no description | |||
| Key | Default Value | Options | Description |
| mhsample | |||
| INNAMES | '' | none | Input names. Used for ssm models |
| OUTNAMES | '' | none | Output names. Used for ssm models |
| MODEL | '' | none | Model to fit. |
| FITPARAMS | [] | none | A cell array of evaluated parameters. |
| INPUT | '' | none | A matrix array of input signals. |
| NSAMPLES | 1000 | none | number of samples of the chain. |
| COV | [] | none | covariance of the gaussian jumping distribution. |
| SCALE MATRIX | '' | none | A matrix array of noise spectrum (PSD) used to compute the likelihood. It is possible to input just a scale matrix, containing the desirable weights. |
| LOG-LIKELIHOOD | '' | none | The log-likelihood to sample with the MH or Simplex algorithm. If left empty, then the standard Gaussian approximation will be employed. |
| RANGE | [] | none | Range where the parameteters are sampled. |
| SEARCH | 1 |
|
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. |
| X0 | [] | none | The proposed initial values. |
| 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 |
|
Set to true to plot diagnostigs at the end of the sampling. |
| DEBUG | 0 |
|
Set to true to get debug information of the MCMC process. |
| INMODEL | '' | none | Input model. Still under test |
| OUTMODEL | '' | none | Output model. Still under test |
| FPRINT | 100 | none | Print progress on screen every specified numeber of samples. |
| TXT | 0 |
|
Set to true to print the acceptance ratio to a txt file during the MH sampling. |
| PRIOR | '' | none | blah |
| LOG PARAMETERS | '' | none | Select the parameters to be treated in log scale. |
| ANNEAL | 'simul' |
|
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 |
|
Set to true to use frequency dependent s models, set to false when using constant models |
| LOGSPACE | 1 |
|
False-True key to choose the way of sampling. |
| 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. |
| crb | |||
| PINV | 0 |
|
Use the Penrose-Moore pseudoinverse |
| TOL | [] | none | Tolerance for the Penrose-Moore pseudoinverse |
| 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. |
| FREQUENCIES | [] | none | The frequencies to perform the analysis. |
| FSOUT | [] | none | Resampling. |
| F1 | [] | none | Initial frequency for the analysis. |
| F2 | [] | none | Final frequency for the analysis. |
| NOISE SCALE | 'PSD' |
|
Select the way to handle the noise/weight data. Can use the PSD/CPSD or the LPSD/CLPSD functions. |
| YUNITS | 'm s^-2' | none | The Y units of the noise time series, in case the MFH object is a 'core' type. |
| TRIM | [100 -100] | none | A 2x1 vector that denotes the samples to split from the star and end of the time-series (split in offsets). |
| REGULARIZE | 0 |
|
If the resulting fisher matrix is not positive definite, try a numerical trick to continue sampling. |
| NEARESTSPD | 0 |
|
Try to find the nearest symmetric and positive definite covariance matrix, with the 'nearestSPD' method from MATLAB file exchange. |
| VERSION | 'core' |
|
Choose between 'AO' and 'CORE' types. Applies to MFH models. |
| 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' |
|
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 |
|
The order of segment detrending:
|
| NAVS | -1 | none | Force number of averages. If set, and if Nfft was set to 0 or -1, the number of points for each window will be calculated to match the request. |
| DROP WINDOW SAMPLES | 1 |
|
Drop the recommended (by the window) number of samples of the final computed spectral series. |
| 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:
|
| computeICSMatrix | |||
| NOUT | '' | none | The number of outputs. |
| INVERSE | 1 |
|
Set to false to return the spectrum matrix, but not inverted. |
| ISDIAG | 0 |
|
For the case of systems where the cross-spectrum matrix is diagonal it can be set to true to skip estimating the non-diagonal elements. Useful for multiple inputs/outputs. |
| FS | 1 | none | The sampling frequency of the data. |
| INTERPOLATION METHOD, INTERP METHOD | 'LINEAR' |
|
The interpolation method. |
| FREQS | [] | none | Array of frequencies where the analysis is performed. |
| BIN DATA | 0 |
|
Set to true to re-bin the measured noise data. |
| FIT NOISE MODEL | 0 |
|
Set to true to attempt a fit on the noise spectra using the 'polyfitSpectrum' function. |
| POLYNOMIAL ORDER | [-4 -3 -2 -1 0 1 2 3 4] | none | The order of the polynomial to be used in the 'polyfitSpectrum' function. |
| PLOT FITS | 0 |
|
Set to true to produce plots of the fits in case of 'fit noise model' is set to true. |
| lpsd | |||
| KDES | 100 | none | The desired number of averages. |
| JDES | 1000 | none | The desired number of spectral frequencies to compute. |
| LMIN | 0 | none | The minimum segment length. |
| SCALE | 'PSD' |
|
The scaling of output. Choose from:
|
Example |
|---|
| plist('INNAMES', '', 'OUTNAMES', '', 'MODEL', '', 'FITPARAMS', [[]], 'INPUT', '', 'NSAMPLES', [1000], 'COV', [[]], 'SCALE MATRIX', '', 'LOG-LIKELIHOOD', '', 'RANGE', [[]], 'SEARCH', [true], 'PROPOSAL SAMPLER', [[]], 'PROPOSAL PDF', [[]], 'HEAT', [1], 'TC', [[0 1]], 'X0', [[]], 'UPDATE FIM FREQ', [[]], 'JUMPS', [[]], 'PLOT TRACES', [[]], 'PLOT DIAGNOSTICS', [false], 'DEBUG', [false], 'INMODEL', '', 'OUTMODEL', '', 'FPRINT', [100], 'TXT', [false], 'PRIOR', '', 'LOG PARAMETERS', '', 'ANNEAL', 'simul', 'MODELFREQDEPENDENT', [true], 'LOGSPACE', [true], 'SNR0', [200], 'FREQUENCIES VECTOR', [200], 'PINV', [false], 'TOL', [[]], 'DIFFSTEP', [[]], 'NGRID', [[]], 'STEPRANGES', [[]], 'FREQUENCIES', [[]], 'FSOUT', [[]], 'F1', [[]], 'F2', [[]], 'NOISE SCALE', 'PSD', 'YUNITS', 'm s^-2', 'TRIM', [[100 -100]], 'REGULARIZE', [false], 'NEARESTSPD', [false], 'VERSION', 'core', 'NFFT', [-1], 'WIN', 'BH92', 'PSLL', [200], 'OLAP', [-1], 'ORDER', [0], 'NAVS', [-1], 'DROP WINDOW SAMPLES', [true], 'TIMES', [[]], 'NOUT', '', 'INVERSE', [true], 'ISDIAG', [false], 'FS', [1], 'INTERPOLATION METHOD', 'LINEAR', 'FREQS', [[]], 'BIN DATA', [false], 'FIT NOISE MODEL', [false], 'POLYNOMIAL ORDER', [[-4 -3 -2 -1 0 1 2 3 4]], 'PLOT FITS', [false], 'KDES', [100], 'JDES', [1000], 'LMIN', [0], 'SCALE', 'PSD') |
back to top
| Some information of the method ao/mhsample are listed below: | |
|---|---|
| Class name | ao |
| Method name | mhsample |
| Category | Signal Processing |
| Package name | ltpda |
| VCS Version | 967b0eec0dece803a81af8ef54ad2f8c784b20b2 |
| Min input args | 1 |
| Max input args | -1 |
| Min output args | 1 |
| Max output args | -1 |
| Can be used as modifier | 1 |
| Supported numeric types | {'double'} |
|
Method: ao/map3D | Method: ao/modelSelect | ![]() |
©LTP Team