Overview of fitter

My fitter is divided into two primary parts and several auxiliary programs. Each will be described here.

Marquardt-Levenberg Fitter with Bayes Priors

This program is based on the Levenberg-Marquardt method [1]. Briefly, this is a method to vary smoothly between the steepest descent method (used far from the minimum) and the inverse-Hessian method (used near the minimum). One downside of the method is that it requires the derivative of the fit function which, as in our case, may be difficult to compute.

A rough outline of the program is as follows:

Driver script

The fitting program is extremely versatile, and therefore requires a large number of input values. Typing these in by hand (or even copy-pasting them in) quickly becomes tedious. It's also often useful to try varying a specific parameter over a range of values. To ease the burden, I've written a script that calls the main fitter. Here's a brief list of its capabilities:

Detailed Descriptions

Here is a more complete description of each stage of the process:

References

1 Press et. al., Numerical Recipes, Section 15.5 "Nonlinear Models"