Elsevier Science Home
Computer Physics Communications Program Library
Full text online from Science Direct
Programs in Physics & Physical Chemistry
CPC Home

[Licence| Download | New Version Template] abmr_v1_0.gz(12 Kbytes)
Manuscript Title: A flexible, all-purpose curve-fitting program.
Authors: E.D. von Meerwall
Program title: UNIFIT2
Catalogue identifier: ABMR_v1_0
Distribution format: gz
Journal reference: Comput. Phys. Commun. 11(1976)211
Programming language: Fortran.
Computer: IBM 370/158.
Operating system: OS/VS2.
RAM: 13K words
Word size: 32
Peripherals: graph plotter.
Keywords: Curve fitting, Least-squares, Non-linear, General purpose, Variable metric Minimization, Theoretical models, Parameter optimization, Chi-square analysis.
Classification: 4.9.

Nature of problem:
The program fits theoretical models of arbitrary form (up to 20 parameters) to experimental data (x, y, delta y), calculates chi- square, and plots data, error bars, and fit.

Solution method:
A non-linear metric minimization technique is used to minimize chi squared for the spectral data, optimizing its parameters. The gradient of Chi squared is calculated by a finite-difference method.

Present dimensions limit each case to 100 data points and the model to 20 parameters; these limits may be changed by redimensioning and altering certain check statements. Arbitrarily many fit types may be accomodated without recompiling; the program performs successive fits of various types per run.

Unusual features:
The program is intended to give general fitting capabilities both for routine production work and special cases. To facilitate this, (1) for each compilation the program may be set to fit any of several model types, for each of which the parameters may vary in number but must be the first several, the remainder serving as fixed constants, (2) the data may be transformed before the fit; fit type and transformation may be elicited and coordinated by a code supplied with each case, (3) the fit procedure requires estimates for each model parameter, accepts their uncertainty to speed convergence, outputs a code for the success of the fit, the uncertainty in the optimized parameters, and chi squared per degree of freedom.

Running time:
On the IBM 370/158 at the University of Akron, compilation takes about 11 CPU s, while a typical 3-5 parameter fit to 40 points takes 3-6 s, of which over half is spent generating the line printer plot and the Calcomp plot.