Computer Programs
NESC0909 FC,LSEI,WNNLS.
last modified: 27-FEB-1989 | catalog | categories | new | search |

NESC0909 FC,LSEI,WNNLS.

FC,LSEI,WNNLS, Least-Square Fitting Algorithms Using B Splines

top ]
1. NAME OR DESIGNATION OF PROGRAM:  FC,LSEI,WNNLS.
top ]
2. COMPUTERS
To submit a request, click below on the link of the version you wish to order. Rules for end-users are available here.
Program name Package id Status Status date
FC,LSEI,WNNLS NESC0909/01 Tested 27-FEB-1989

Machines used:

Package ID Orig. computer Test computer
NESC0909/01 CDC 6600 CDC CYBER 830
top ]
3. DESCRIPTION OF PROBLEM OR FUNCTION

FC allows a user to fit dis- crete data, in a weighted least-squares sense, using piece-wise polynomial functions represented by B-splines on a given set of knots. In addition to the least-squares fitting of the data, equali- ty, inequality, and periodic constraints at a discrete, user-speci-  fied set of points can be imposed on the fitted curve or its deriva- tives. The subprograms LSEI and WNNLS solve the linearly-constrained least-squares problem. LSEI solves the class of problem with general inequality constraints, and, if requested, obtains a covariance matrix of the solution parameters. WNNLS solves the class of problem with nonnegativity constraints. It is anticipated that most users will find LSEI suitable for their needs; however, users with inequa- lities that are single bounds on variables may wish to use WNNLS.
top ]
4. METHOD OF SOLUTION

The discrete data are fit by a linear combina-  tion of piece-wise polynomial curves which leads to a linear least-  squares system of algebraic equations. Additional information is ex- pressed as a discrete set of linear inequality and equality cons- traints on the fitted curve which leads to a linearly-constrained least-squares system of algebraic equations. The solution of this system is the main computational problem solved.
top ]
5. RESTRICTIONS ON THE COMPLEXITY OF THE PROBLEM:
top ]
6. TYPICAL RUNNING TIME

The sample driver required 0.3 seconds of CP  time on a CDC6600, and less than 0.2 seconds of CP time on a CDC CYBER175.
NESC0909/01
The test case included in this package was executed by  NEA-DB on a CDC CYBER 830 computer in 0.5 seconds of CPU time.
top ]
7. UNUSUAL FEATURES OF THE PROGRAM:  The user has the ability to constrain the fitted curve.
top ]
8. RELATED AND AUXILIARY PROGRAMS

The Basic Linear Algebra Sub-  programs (BLAS) required are included in the package.
top ]
9. STATUS
Package ID Status date Status
NESC0909/01 27-FEB-1989 Tested at NEADB
top ]
10. REFERENCES

- Karen H. Haskell and Richard J. Hanson,
  Selected Algorithms for the Linearly Constrained Least Squares
  Problem - A User's Guide,
  SAND78-1290, August 1979.
- Richard J. Hanson,
  Constrained Least Squares Curve Fitting to Discrete Data Using B-
  Splines - A Users Guide,
  SAND78-1291, February 1979.
- FC,LSEI,WNNLS, NESC No. 909.6600, FC,LSEI,WNNLS Tape Description,
  National Energy Software Center Note 81-37, May 21, 1981.
- Chuck L. Lawson, Richard J. Hanson, David R. Kincaid, and Fred T.
  Krogh,
  Basic Linear Algebra Subprograms for FORTRAN Usage,
  SAND77-0898, October 1977 (also published in Association for Com-
  puting Machinery, Transactions on Mathematical Software, Vol. 5,
  No. 3, pp. 308-323, September 1979).
- C. de Boor,
Package for Calculating with B-Splines, Society for Industrial and   Applied Mathematics Journal of Numerical Analysis, Vol. 14, No. 3,    pp. 441-472, June 1977.
NESC0909/01, included references:
- Karen H. Haskell and Richard J. Hanson :
  Selected Algorithms for the Linearly Constrained Least Squares
  Problem - A User's Guide
  SAND78-1290 (August 1979)
- Richard J. Hanson :
  Constrained Least Squares Curve Fitting to Discrete Data Using
  B- Splines - A Users Guide
  SAND78-1291 (February 1979)
- FC,LSEI,WNNLS Tape Description
  NESC Note 81-37 (May 21, 1981)
top ]
11. MACHINE REQUIREMENTS

37,000 (octal) words of storage are needed to execute the sample driver that is provided. The storage required is  a linear function of the number of data points plus a quadratic function of the number of piecewise polynomial coefficients. The code is edited output produced by the FORTRAN preprocessor, FLECS.
NESC0909/01
60,000 (octal) words were required to run the test case on a CDC CYBER 830 computer.
top ]
12. PROGRAMMING LANGUAGE(S) USED
Package ID Computer language
NESC0909/01 FORTRAN+ASSEMBLER
top ]
13. OPERATING SYSTEM UNDER WHICH PROGRAM IS EXECUTED

NOS 1.4 (CDC6600) SCOPE 2.1 (CDC7600), NOS 1.3 (CDC CYBER175).
NESC0909/01
NOS2.5.1 (CDC CYBER 830).
top ]
14. OTHER PROGRAMMING OR OPERATING INFORMATION OR RESTRICTIONS

For use in other computing environments the environmental parameter subrou-  tine, I1MACH, should be modified appropriately. Instructions are included as comments in the routine.
top ]
15. NAME AND ESTABLISHMENT OF AUTHOR

R.J. Hanson
Numerical Mathematics Division

K.H. Haskell
Sandia Laboratories
P.O. Box 5800
Alburquerque, New Mexico 87185
top ]
16. MATERIAL AVAILABLE
NESC0909/01
File name File description Records
NESC0909_01.001 Information file 47
NESC0909_01.002 JCL and control information 13
NESC0909_01.003 FC, LSEI, and WNNLS FORTRAN source 5572
NESC0909_01.004 Basic Linear Algebra Subprograms (BLAS) 726
NESC0909_01.005 Sample driver 537
NESC0909_01.006 Output sample problem 80
top ]
17. CATEGORIES
  • P. General Mathematical and Computing System Routines

Keywords: data processing, least square fit, numerical solution, optimization, polynomials, spline functions.