mcmc.goodman_weare

Usage

obj = mcmc;
xPosterior = obj.goodman_weare(y,x0,weights,fitting,modelFWD,varargin)

I/O overview

Input

Description

y

measurements, [Nmeas, Nvoxels]

x0

structure variable containing starting points of all model parameters to be estimated

weights

N-D wieghts, same dimension as ‘data’ (optional)

fitting

structure contains fitting algorithm parameters

fitting.model_params

1xM cell variable, name of the model parameters, e.g. {‘S0’,’R2star’,’noise’};

fitting.lb

1xM numeric variable, fitting lower bound, same order as field ‘model_params’, e.g. [0.5, 0, 0.001];

fitting.ub

1xM numeric variable, fitting upper bound, same order as field ‘model_params’, e.g. [2, 1, 0.1];

fitting.iteration

# MCMC iterations

fitting.repetition

# repetition of MCMC proposal

fitting.thinning

sampling interval between iterations

fitting.burnin

iterations to be discarded at the beginning, if >1, the exact number will be used; else iteration*burnin

fitting.StepSize

step size for ‘GW’ in MCMC proposal (‘GW’ only)

fitting.Nwalker

# random walkers (‘GW’ only)

FWDfunc

function handle for forward signal generation; size of the output must match size of ‘data’

varargin

additional input for FWDfunc other than ‘parameter’ and ‘mask’ (same order as FWDfunc)

Output

Description

xPosterior

structure contains MCMC posterior samples

xPosterior.(model_params{k})

Model parameter MCMC posterior samples

Note

‘noise’ is always required in fitting.model_params.

See also MCMC Affine invariant ensemble sampler tutorial.