## NLSF Fitter

What is fitting? Suppose that you have a table of numbers, Yi and Xi, i=0..n. Then suppose that you have model representation for these numeric Y(X) data: Y=f(X,pj), j=1..m, and you want to find numeric values of pj that made table-defined curve Yi( Xi) and model curve Y=f(X,pj) most similar. This process is known as fitting. If model function has linear dependence on fitting parameters, this can be treated as linear fitting, otherwise you will have non-linear fitting problem.

What is NLSF? NLSF stands for non-linear least-square fitting. DM2000 uses one of the most popular and effective NLSF algorithms, namely Levenberg-Marquardt algorithm, that can be thought of as a trust-region modification of the well-known Gauss-Newton algorithm.

How to use NLSF fitter? First you should plot data to be processed (this tool works only with active plot serie). Then make plot active and select Process|LM Fit menu item to display NLSF Fitter window. You will see your curve on the separate plot. Click "Function" button to input desirable fitting expression and define initial values of the fitting parameters in the Parameters table. You should verify parameter values before start fitting session: click "Update" button and see how fit curve conforms your data. Also you may change NLSF Options. Click "Fit" button and when fitter finishes calculation (it may take a lot of time for slow computers and long expressions) save your results.

In DM2000 you have a wide set of options that allows you to have full control over the fitting process.

• Zoom / UnZoom / Rescale - use these buttons to control plot scale.
• Select - you can fit only points whose coordinates belong selected rectangular plot region.
• Function - click this button to define expression to be fitted. This expression must be composed from internal functions (see expression syntax for more details), operators and only following parameters: cx, p1, p2...p26. Parameters with user-defined names and standard column names a..z currently are NOT allowed.
• Options - click to invoke NLSF Options dialog box.
• Update - fit curve will be plotted with current values of parameters (listed in the parameter table).
• Parameter table lets you fix parameter values (fixed values actually are not fitted).
• Fit - click this button to perform up to maximal number of LM iterations.
• Add / Prev / Next - use these buttons to manipulate the parameter set. These are only for your convenience.
• When you click OK button, you may save fitting results in several ways: copy fit curve to selected serie, add fitting results to the Notes window, add parameter set to the selected worksheet and create additional column with the fit curve in the worksheet referenced by fitted serie.

Please keep in mind that the result of your fitting session critically depends on initial values of parameters because usually your expression will have a lot of local minima that can prevent fitter to find absolute minimum. Probably you will have to select parameter values manually before start fitting (use Update button to display fit curve and remember intermediate parameter sets).

NLSF fitter is available via OLE Automation (see IDMApplication interface for more details). This feature allows you to create powerful automatic routines for initial parameter evaluation and batch fitting.