Skip to content

Latest commit

 

History

History
61 lines (30 loc) · 2.7 KB

README.md

File metadata and controls

61 lines (30 loc) · 2.7 KB

multifit

The repo consists of two sets of Matlab routines for fitting transient absorption data.



multioscfit

Iterative fitting of a single free induction decay time trace into a sum of exponential decay-modulated (co)sinusoids. The routine uses starting point re-initialization to find a close fit in a much faster and more reliable way than conventional single-starting approach.

Fitting to a model of the type,

Alt text

The background removal (multi-exponential decay type) may be carried out using the global fitting approach (see following section).



globalfit

Global fitting of multi-exponential decay relaxation dynamics with a Gaussian impulse response.

Goal: achieve small confidence interval on the evaluation of parameters (e.g. time constants) by fitting simultaneously over a large number of traces.

Fitting to a model of the type,

Alt text

Operation steps:

  1. Construct fitting model (e.g. DecayModel or use a model constructor like constructExpDecayModel).

  2. Single-trace fitting to provide feasible initial guesses for the fitting parameters (esp. time constants).

    Tool to use: Matlab's cftool interactive interface

  3. Construct initial guesses and (upper and/or lower) bounds, if necessary, for every fitting parameter.

    function to use: fvconstruct

  4. Construct the minimizer by plugging the model, initial guesses (and bounds) into it.

    minimizer of choice for least-square problems: Levenberg-Marquardt, trust region reflective

    functions to use: lsqcurvefit, lsqnonlin, etc.

  5. Run the minimizer and check for results numerically or graphically. Modify initial guesses, bounds, fitting options, if needed, to get a better fit.

  6. Calculate the 95% confidence intervals (CIs) for all fitting parameters.

    function to use: nlparci (need the Jacobian matrix obtained from the minimizer)

  7. Distribute the fitted parameters and CIs.

    function to use: vardist

  8. Construct dictionary/structure to store fitted parameters and CIs.

    function to use: dictConstructor