and jorge j. more'digital.library.unt.edu/ark:/67531/metadc...i )q~2 implementation guide for...

49
ANL-80-68 I )Q~ 2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE NATIONAL LABORATORY ARGONNE NATIONAL LABORATORY, ARGONNE, ILLINOIS Prepared for the U. S. DEPARTMENT OF ENERGY under Contract W-31-109-Eng-38 "I3e 1M. ANL-80-68

Upload: others

Post on 31-Jul-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

ANL-80-68

I )Q~2

IMPLEMENTATION GUIDE FOR MINPACK-1

by

Burton S. Garbow, Kenneth E. Hillstrom,

and Jorge J. More'

MASTER

ARGONNENATIONAL

LABORATORY

ARGONNE NATIONAL LABORATORY, ARGONNE, ILLINOIS

Prepared for the U. S. DEPARTMENT OF ENERGYunder Contract W-31-109-Eng-38

"I3e1M.

ANL-80-68

Page 2: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

Distribution Category:Mathematics and Computers

(UC-32)

ANL--80-68

ARGONNE NAT IONAL LABORATORY9700 South Cass Avenue

Argonne, Illinois 60439

IMPLEMENTATION GUIDE FOR MINPACK-1

by

Burton S. Garhow, Kenneth E. Hillstrom, Jorge J. More'

Applied Mathematics Division

July 1980

Page 3: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

3

TABLE OF CONTENTS

Abstract .......................................................... 5

1. Introduction ................................................. 5

2. The Tape Organization........................................6

3. Overview of Tape Contents....................................6

4. Machine-Dependent Constants................................... 7

5. Files 1-6: The MINPACK-1 Package and its Documentation....... 7

6. Files 7-23: The Testing Aids................................. 8

7. Evaluation of the Test Results............................... 10

8. Referral for Questions and Comments.......................... 11

Appendix A - SPMPAR and DPMP*.R Listings ........................ 13

Appendix B - Test Driver Listings ............................... 23

Appendix C - Test Output Summaries .............................. 41

Page 4: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE
Page 5: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

5

IMPLEMENTATION GUIDE FOR MINPACK-1

by

Burton S. Garbow, Kenneth E. Hillstrom, Jorge J. More'

ABSTRACT

MINPACK-1 is a package of Fortran subprograms for the numeicalsolution of systems of nonlinear equations and nonlinear leastsquares problems. This report describes how to implement thepackage from the tape on which it is transmitted.

1. Introduction

This report describes the tape containing MINPACK-1, a package of Fortran

subprograms for the numerical solution of systems of nonlinear equations and

nonlinear least squares problems. Future editions of the MINPACK package will

address unconstrained minimization and constrained optimization problems. For

each problem area MINPACK-1 contains algorithms that proceed either from an

analytic specification of the Jacobian matrix of the problem functions or

directly from the problem functions themselves. Since the specification of

the Jacobian matrix can be an error-prone task, MINPACK-l also contains an

algorithm to check that the Jacobian matrix is consistent with the func-

tions. Also included on the tape are machine-readable documentation and a

complete set of testing airs.

MINPACK-1 may be obtained from either:

National Energy Software CenterArgonne Na'ional Laboratory9700 S. Ca is Ave.Argonne, IL 60439Phone: (312) 972-7250

orIMSLSixth Floor-NBC Building7500 Bellaire Blvd.Houston, TX 77036

Phone: (713) 772-1927

Page 6: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

6

2. The Tape Jrganization

The tape contains 23 files. The card counts for the respective files are

given in Table 1.

TABLE 1

File

1234567891011121314151617181920212223

Count

1394,7713,526

1864,7783,528

283551879

1,0221,033673858284552881

1,0251,036675860232915

3. Overview of Tape Contents

The tape contains both single and double precision versions of the

routines in MINPACK-l. For each precision there is a function that provides

machine-dependent constants (when an appropriate set of DATA statements is

activated); all other MINPACK-1 subprograms are written in a portable subset

of ANSI standard Fortran. For those subprograms normally called by the user,

machine-readable documentation is provided for both the single and the double

precision forms.

The first six files on the tape are:

1. Function SPMPAR, single precision machine-dependent constants.

2. MINPACK-1, single precision, 22 subprograms.

Page 7: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

7

3. MINPACK-1 documentation, single precision, 11 documents.

4. Function DPMPAR, double precision machine-dependent constants.

5. MINPACK-1, double precision, 22 subprograms.

6. MINPACK-1 documentation, double precision, 11 Jocuments.

The remaining 17 files contain test material; their contents are described in

Section 6.

4. Machine-Dependent Constants

There are three machine-dependent constants that have to be set before

the single or double precision version of MINF'ACK-1 can be used; for most

machines the correct values of these constants are encoded into DATA state-

ments in functions SPMPAR (single precision) and DPMPAR (double precision).

As transmitted on the tape, the constants for the IBM 360,370 series are

"activated"; that is, the DATA statements encoding all other constants are

rendered comments by the presence of 'C' in column 1. If the activated

constants are appropriate for the target machine (various non-IBM machines

share these constants), then no changes are required to SPMPAR or DPMPAR.

Otherwise, a different set of constants will have to be "activated" and the

IBM constants "deactivated". The listings of SPMPAR and DPMPAR are included

as Appendix A of this report.

We are also including (files 7 and 14) single and double precision

versions (named SMCHAR and DMCHAR, respectively) of the environmental inquiry

program of W. J.. Cody, with which we confirmed many of the constants in SPMPAR

and DPMPAR (most of which were obtained from the corresponding Bell Labora-

tories PORT Library function). These programs should 'e useful in determining

the appropriate constants for machines not already covered in SPMPAR and

DPMPAR.

5. Files 1-6: The MINPACK-1 Package and Its Documentation

As described in Section 3, files 1-3 of the tape contain the single

precision version of MINPACK-1 and its associated documentation and files 4-6

contain the double precision equivalents. File 2 contains 22 Fortran sub-

programs: CHKDER, DOGLEG, ENORM, FDJAC1, FDJAC2, HYBRD, HYBRD1, HYBRJ, HYBRJI,

LMDER, LMDER1, LMDIF, LMDIF1, LMPAR, LMSTR, LMSTRI, QFORM, QRFAC, QRSOLV,

RWUPDT, RIMPYQ, and RIUPDT. ENORM is of FUNCTION type; the others are all

SUBROUTINE's. File 5 contains 22 subprograms with the same names and in the

Page 8: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

8

same order. There are no separator cards between members, but the last card

of each subprogram has 'END' in columns 7-9.

File 1 contains SPMPAR and file 4 contains DPMPAR. As described in

Section 4, these programs may have to be changed, after which the programs in

files 1 and 2, or 4 and 5, can be compiled into a library. We might suggest

that you choose the precision that corresponds to your normal operating

environment.

Machine-readable documentation is provided in files 3 and 6 for the 11

MINPACK-1 members normally called by the user: HYBRD1, HYBRD, HYBRJL, HYBRJ,

LMDER1, LMDER, LMSTR1, LMSTR, LMDIF1, LMDIF, and CHKDER. HYBRD, HYBRJ, LMDER,

LMSTR, and LMDIF are the core subroutines in the five general algorithmic

paths in MINPACK-1. HYBRD1, HYBRJ1, LMDER1, LMSTR1, and LMDIFl are "easy-to-

use" drivers with simplified calling sequences made possible by assuming

default settings for certain parameters and by returning a limited amount of

information; many applications do not require full flexibility and in these

cases "easy-to-use" drivers can be invoked. Finally, CHKDER should be helpful

to use'-s who wish to check the coding of their Jacobian evaluation subroutine.

The documents are recorded with both upper and lower case characters

(realizable if the TN print chain is available). They include carriage

control characters '1', '0', and ' ' that enable their printing in paged

format under program control; one blank page is inserted between successive

documents. The printed material can be trimmed to fit onto 8 1/2 x 11 sheets

of paper.

6. Files 7-23: The Testing Aids

Files 7-13 on the tape contain testing aids for running the environmental

inquiry program (see Section 4 above), the five available algorithmic paths

(HYBRD, LiYBkJ, LMDER, LMSTR, and LMDIF), and CRKDER, respectively, in single

precision. Files 14-20 contain testing aids for the corresponding double

precision versions. The testing aids include drivers, initial point specify-

ing subroutines, and subroutines (named FCN) that evaluate the functions and

Jacobians. Files 21-23 comprise the input data -- file 21 is used by HYBRD

and HYBRJ, file 22 by LMDER, LMSTR, and LMDIF, and file 23 by CHKDER.

In summary, the contents of files 7-23 are as follows:

7. SMCHAR test8. HYBRD test (single precision)

9. HYBRJ test (single precision)

Page 9: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

9

10. LMDER test (single precision)11. LMSTR test (single precision)12. LMDIF test (single precision)13. CHKDER test (single precision)14. DMCHAR test15. HYBRD test (double precision)16. HYBRJ test (double precision)17. LMDER test (double precision)18. LMSTR test (double precision)19. LMDIF test doublee precision)20. CHKDER test (double precision)21. HYBRD and HYBRJ data22. LMDER, LMSTR, and LMDIF data23. CHKDER data

Small changes may be required to the drivers, for example to renumber the

logical input and output units (from 5 and 6) or to include a program card.

To facilitate these changes we have placed the drivers at the beginning of the

respective test files and, in addition, are including listings of the drivers

(double precision versions) as Appendix B of this report.

For each test run, pair one of the program files with the corresponding

data file, and make available the library where the MINPACK-1 package has been

stored. For example, to run the double precision LMDER test you would point

to files 17 and 22.

A special note applies to the drivers for LMSTR in files 11 and 18.

Instead of calculating one row of the Jacobian per call, the test FCN subrou-

tine calculates the entire Jacobian at the first call and moves one row at

each subsequent call. This strategy depends, therefore, on retention by the

system of quantities stored at an earlier call of FCN toward accessing at

later calls. Although this feature is nonstandard, we hope that your system

enables it.

The test runs for HYBRD, HYBRJ, LMDER, LMSTR, and LMDIF each produce

about 1200 lines of output. The test run for CHKDER produces about 300 lines

of output, and the SMCHAR (or DMCHAR) test produces only a single page after

possibly triggering several underflow messages. The last page of the output

for each run contains a summary of the results. We are including listings of

the summaries that we produced from our double precision IBM runs (IBM 3033,

Fortran H Extended) as Appendix C of this report. Section 7 contains further

details toward the evaluation of the test results.

Towards estimating timing, we offer the following two tables: Table 2

records the CPU time in seconds on Argonne's IBM 3033 (including compilation)

Page 10: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

10

and Table 3 gives the approximate ratio of the speed of the 3033 to various

other machines.

TABLE 2 TABLE 3

HYBRD 17 CDC 7600 1HYBRJ 17 CDC 6600 5LMDER 21 Univac 1110 11LMSTR 26 Amdahl 470V/6 3LMDIF 21 IBM 370/168 3CHKDER 4 IBM 360/75 15

Honeywell 6070 10-20DEC PDP-10 100-150

Burroughs 6700 100

7. Evaluation of the Test Results

The test runs for the machine constants (files 7 and 14) compare the

results obtained by the environmental inquiry programs SMCHAR and DMCHAR with

the constants specified in SPMPAR and DPMPAR, respectively. The test programs

print

RERR(1) = (EPSMCH - EPS) / EPSMCHRERR(2) = (DWARF - XMIN) / DWARFRERR(3) = (XMAX - GIANT) / GIANT

where EPSMCH, DWARF, and GIANT are the constants specified in the MINPACK-1

functions, and EPS, XMIN, and XMAX are the values returned from the

environmental inquiry programs.

The constants specified in the MINPACK-l functions are conservative and

do not take into account special features of the system. Therefore, compo-

nents of RERR are not necessarily zero. For example, rounded arithmetic is

reflected by EPS being half as large as EPSMCH, thereby producing a value of

0.5 in RERR(l). Values with magnitude as large a unity should usually be

considered suspicious, but we have encountered the following exceptions:

a) Ia CDC systems, the treatment of small double precision numbersrequires a value of DWARF that is large relative to XMIN, and so thevalue of RERR(2) is close to unity.

b) In Honeywell and Prime systems, the use of extra length registers

results in an overly small value of EPS, and so the value of RERR(l)is close to unity; this only occurs in single precision on the Prime

but in both precisions on the Honeywell. In addition, these systems

do not allow a proper determination of XMAX in double precision and

produce a value of RERR(3) close to minus unity.

Page 11: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

11

The interpretation of the test results for the other MINPACK-1 programs

depends on the machine precision and on the sensitivity of the problems to the

precision of the computations. For those problems sensitive to the precision

of the computations we have underlined the (IBM) results in Appendix C. The

performances of the MINPACK-1 programs on these problems vary from machine to

machine, but in general we expect about the same number of successes and

failures as in the IBM runs if the working precision provides at least 10

decimal digits. If this is not the case, there is a deterioration in perfor-

mance commensurate to the lack of digits. For problems not sensitive to the

precision of the computations we expect about the same number of successes and

failures as in the IBM runs regardless of the machine precision.

The criteria for the designation "successful" that we have adopted are as

follows. For the nonlinear equation solvers success is obtained if the final

L2-norm is less than the square root of the machine precision. For the IBM

double precision runs (machine precision approximately 10**(-16)) there are 51

successes and four failures. For the nonlinear least squares solvers success

is obtained if either the absolute or the relative error in the final L2-norm

of the residuals is less than the square root of the machine precision. For

the IBM double precision runs there are 53 successes and one failure.

8. Referral for Questions and Comments

We hope that no difficulty will be encountered in installing MINPACK-1,

but if a problem occurs we will try to help. We are especially interested in

comments about the performance of the codes. Questions and comments may be

directed to:

Burton S. GarbowApplied Mathematics DivisionArgonne National Laboratory9700 S. Cass Ave.Argonne, IL 60439Phone: (312) 972-7184

Page 12: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE
Page 13: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

13

A P P E N D I X A

SPMPAR and DPMPAR Listin-3

Page 14: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE
Page 15: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

15

REAL FUNCTION SPMPAR(I) SPPROO10INTEGER I SPPR0020

C SPPR0030C SPPR0040C FUNCTION SPMPAR SPPR0050C SPPR0060C THIS FUNCTION PROVIDES SINGLE PREC. . 'HINE PARAMETERS SPPR0070C WHEN THE APPROPRIATE SET OF DATA S %. IS ACTIVATED (BY SPPR0080C REMOVING THE C FROM COLUMN 1) AND ALL uirIER DATA STATEMENTS ARE SPPR0090C RENDERED INACTIVE. MOST OF THE PARAMETER VALUES WERE OBTAINED SPPRO100C FROM THE CORRESPONDING BELL LABORATORIES PORT LIBRARY FUNCTION. SPPRO110C SPPR0120C THE FUNCTION STATEMENT IS SPPRO130C SPPR0140C REAL FUNCTION SPMPAR(I) SPPRO150C SPPRO160C WHERE SPPRO170C SPPRO180C I IS AN INTEGER INPUT VARIABLE SET TO 1, 2, OR 3 WHICH SPPR0190C SELECTS THE DESIRED MACHINE PARAMETER. IF THE MACHINE HAS SPPRO200C T BASE B DIGITS AND ITS SMALLEST AND LARGEST EXPONENTS ARE SPPRO210C EMIN AND EMAX, RESPECTIVELY, THEN THESE PARAMETERS ARE SPPR0220C SPPR0230C SPMPAR(1) = B**(1 - T), THE MACHINE PRECISION, SPPR0240C SPPRO250C SPMPAR(2) = B**(EMIN - 1), THE SMALLEST MAGNITUDE, SPPR0260C SPPR0270C SPMPAR(3) = B**EMAX*(1 - B**(-T)), THE LARGEST MAGNITUDE. SPPR0280C SPPR0290C ARGONNE NATIONAL LABORATORY. MINPACK PROJECT. MARCH 1980. SPPR0300C BURTON S. GARBOW, KENNETH E. HILLSTROM, JORGE J. MORE SPPRO310C SPPR0320C ***r*'r**'** SPPR0330

INTEGER MCHEPS(2) SPPRO340INTEGER MINMAG(2) SPPR0350INTEGER MAXMAG(2) SPPRO360REAL RMACH(3) SPPRO370EQUIVALENCE (RMACH(1),MCHEPS(1)) SPPR0380EQUIVALENCE (RMACH(2),MINMAG(1)) SPPR0390EQUIVALENCE (RMACH(3),MAXMAG(1)) SPPR0400

C SPPRO410C MACHINE CONSTANTS FOR THE IBM 360/370 SERIES, SPPR04^0C THE AMDAHL 470/V6, THE ICL 2900, THE ITEL AS/6, SPPR0430C THE XEROX SIGMA 5/7/9 AND THE SEL SYSTEMS 85/86. SPPR0440C SPPRO450

DATA RMACH(1) / Z3C100000 / SPPRO460DATA RMACH(2) / Z00100000 / SPPR0470DATA RMACH(3) / Z7FFFFFFF / SPPR0480

C SPPR0490C MACHINE CONSTANTS FOR THE HONEYWELL 600/6000 SERIES. SPPR0500C SPPRO510C DATA RMACH(1) / 0716400000000 / SPPRO520C DATA RMACH(2) / 0402400000000 / SPPRO530C DATA RMACH(3) / 0376777777777 / SPPRO540C SPPRO550C MACHINE CONSTANTS FOR THE CDC 6000/7000 SERIES. SPPRO560C SPPRO570C DATA RMACH(1) / 16414000000000000000B / SPPRO580C DATA RMACH(2) / 00014000000000000000B / SPPRO590C DATA RMACH(3) / 37767777777777777777B / SPPRO600

Page 16: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

16

C SPPR0610C MACHINE CONSTANTS FOR THE PDP-10 (KA OR KI PROCESSOR). SPPR0620C SPPR0630C DATA RMACH(1) / "147400000000 / SPPR0640C DATA RMACH(2) / "000400000000 / SPPR0650C DATA RMACH(3) / "377777777777 / SPPR0660C SPPR0670C MACHINE CONSTANTS FOR THE PDP-11 FORTRAN SUPPORTING SPPR060C 32-BIT INTEGERS (EXPRESSED IN INTEGER AND OCTAL). SPPR0690C SPPR0700C DATA MCHEPS(1) / 889192448 / SPPR0710C DATA MINMAG(1) / 8388608 / SPPR0720C DATA MAXMAG(1) / 2147483647 / SPPR0730C SPPR0740C DATA RMACH(1) / 006500000000 / SPPRO750C DATA RMACH(2) / 000040000000 / SPPR0760C DATA RMACH(3) / 017777777777 / SPPRO770C SPPRO780C MACHINE CONSTANTS FOR THE PDP-11 FORTRAN SUPPORTING SPPR0790C 16-BIT INTEGERS (EXPRESSED IN INTEGER AND OCTAL). SPPR0800C SPPR0810

DATA MCHEPS(1),MCHEPS(2) / 13568, 0 / SPPR0820C DATA MINMAG(1),MINMAG(2) / 128, 0 / SPPR0830C DATA MAXMAG(1),MAXMAG(2) / 32767, -1 / SPPR0840C SPPR0850C DATA MCHEPS(1),MCHEPS(2) / 0032400, 0000000 / SPPR0860C DATA M;NMAG(J),MINMAG(2- / 0000200, 0000000 / SPPR0870C DATA MAXMAG(1),MAXMAG(2) / 0077777, 0177777 / SPPR0880C SPPRO890C MACHINE CONSTANTS FOR THE BURROUGHS 5700/6700/7700 SYSTEMS. SPPRO900C SPPRO910C DATA RMACH(1) / 01301000000000000 / SPPRO920C DATA RMACH(2) / 01771000000000000 / SPPRO930C DATA RMACH(3) / 00777777777777777 / SPPRO940C SPPR0950C MACHINE CONSTANTS FOR THE BURROUGHS 1700 SYSTEM. SPPRO960C SPPRO970C DATA RMACH(1) / Z4EA800000 / SPPRO980C DATA RMACH(2) / Z400800000 / SPPRO990C DATA RMACH(3) / Z5FFFFFFFF / SPPR1000C SPPR1010C MACHINE CONSTANTS FOR THE UNIVAC 1100 SERIES. SPPR1020C SPPR1030C DATA RMACH(1) / 0147400000000 / SPPR1040C DATA RMACH(2) / 0000400000000 / SPPR1050C DATA RMACH(3) / 0377777777777 / SPPR1060C SPPR1070C MACHINE CONSTANTS FOR THE DATA GENERAL ECLIPSE S/200. SPPR1080C SPPR1090C NOTE - IT MAY BE APPROPRIATE TO INCLUDE THE FOLLOWING CARD - SPPR1100C STATIC RMACH(3) SPPR1110C SPPR1120C DATA MINMAG/20K.0/,MAXMAG/77777K,177777K/ SPPR1130C DATA MCHEPS/36020K,0/ SPPR1140C SPPR1150C MACHINE CONSTANTS FOR THE HARRIS 220. SPPR1160C SPPR1170C DATA MCHEPS(1) / '20000000, '00000353 / SPPR1180C DATA MINMAG(1) / '20000000, '00000201 / SPPR1190C DATA MAXMAG(1) / '37777777, '00000177 / SPPR1200

Page 17: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

MACHINE CONSTANTS FOR THE CRAY-1.

DATA RMACH(1)DATA RMACH(2)DATA RMACH(3)

/ 0377224000000000000000B // 0200034000000000000000B // 05777777777777777777763 /

CCCCCCCCCCCCC

CCC

DATA MCHEPS(1)DATA MINMAG(1)DATA MAXMAG(1)

/ :10000000153 // :10000000000 // :17777777777 /

SPMPAR = RMACH(I)RETURN

LAST CARD OF FUNCTION SPMPAR.

END

17

MACHINE CONSTANTS FOR THE PRIME 400.

SPPR1210SPPR1220SPPR1230SPPR 1240SPPR1250SPPR1260SPPR1270SPPR1280SPPR1290SPPR1300SPPR1310SPPR1320SPPR1330SPPR1340SPPR1350SPPR1360SPPR1370SPPR1380SPPR1390

Page 18: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

18

Page 19: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

19

DOUBLE PRECISION FUNCTION DPMPAR(I) DPPROO10INTEGER I DPPR0020

C DPPR0030C DPPR0040C FUNCTION DPMPAR DPPR0050C DPPR0060C THIS FUNCTION PROVIDES DOUPLE PRECISION MACHINE PARAMETERS DPPR0070C WHEN THE APPROPRIATE SET OF DATA STATEMENTS IS ACTIVATED (BY DPPROO80C REMOVING THE C FROM COLUMN 1) AND ALL OTHER DATA STATEMENTS ARE DPPROO90C RENDERED INACTIVE. MOST OF THE PARAMETER VALUES WERE OBTAINED DPPRO100C FROM THE CORRESPONDING BELL LABORATORIES PORT LIBRARY FUNCTION. DPPRO110C DPPRO120C THE FUNCTION STATEMENT IS DPPRO130C DPPRO140C DOUBLE PRECISION FUNCTION DPMPAR(I) DPPRO150C DPPRO160C WHERE DPPRO170C DPPRO180C I IS AN INTEGER INPUT VARIABLE SET TO 1, 2, OR 3 WHICH DPPRO190C SELECTS THE DESIRED MACHINE PARAMETER. IF THE MACHINE HAS DPPRO200C T BASE B DIGITS AND ITS SMALLEST AND LARGEST EXPONENTS ARE DPPRO210C EMIN AND EMAX, RESPECTIVELY, THEN THESE PARAMETERS ARE DPPR0220C DPPRO230C DPMPAR(1) = B**(1 - T), THE MACHINE PRF.ISION, DPPR0240C DPPRO2S0C DPMPAR(2) = l**'r(EMIN - 1), THE SMALLEST MAGNITUDE, DPPRO260C DPPR0270C DPMPAR(3) = B**EMAX*(1 - B**(-T)), THE LARGEST MAGNITUDE. DPPRO280C DPPR0290C ARGONNE NATIONAL LABORATORY. MINPACK PROJECT. MARCH 1980. DPPRO300C BURTON S. GARBOW, KENNETH E. HILLSTROM, JORGE J. MORE DPPRO310C DPPRO320C * DPPR0330

INTEGER MCHEPS(4) DPPRO340INTEGER MINMAG(4) DPPR0350INTEGER MAXMAG(4) DPPRO360DOUBLE PRECISION DMACH(3) DPPRO370EQUIVALENCE (DMACH(1),MCHEPS(1)) DPPRO380EQUIVALENCE (DMACH(2),MINMAG(1)) DPPRO390EQUIVALENCE (DMACH(3),MAXMAG(1)) DPOR0400

C DPPRO410C MACHINE CONSTANTS FOR THE IBM 360/370 SERIES, DPPRO420C THE AMDAHL 470/V6, THE ICL 2900, THE ITEL AS/6, DPPR0430C THE XEROX SIGMA 5/7/9 AND THE SEL SYSTEMS 85/86. DPPRO440C DPPR0450

DATA MCHEPS(1),MCHEPS(2) / Z34100000, Z00000000 / DPPRO460DATA MINMAG(1),MINMAG(2) / 200100000, Z00000000 / DPPR0470DATA MAXMAG(1),MAXMAG(2) / Z7FFFFFFF, ZFFFFFFFF / DPPR0480

C DPPR0490C MACHINE CONSTANTS FOR THE HONEYWELL 600/6000 SERIES. DPPRO500C DPPR0510C DATA MCHEPS(1),MCHEPS(2) / 0606400000000, 0000000000000 / DPPRO520C DATA MINMAG(1),MINMAG(2) / 0402400000000, 0000000000000 / Drk53uC DATA MAXMAG(1),MAXMAG(2) / 0376777777777, 0777777777777 / DPPRO540C DPPR0550C MACHINE CONSTANTS FOR THE CDC 6000/7000 SERIES. DPPRO560C DPPR0570C DATA MCHEPS(1) / 15614000000000000000B / DPPRO580C DATA MCHEPS(2) / 15010000000000000000B / DPPRO590C DPPRO600

Page 20: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

DATA MINMAG(1) / 00604000000000000000B /DATA MINMAG(2) / 00000000000000000000B /

DATA MAXMAG(1) / 37767777777777777777B /DATA MAXMAG(2) / 37167777777777777777B /

MACHINE CONSTANTS FOR THE PDP-10 (KA PROCESSOR).

CCCCCCCCCCCCCCCCCCCCCCCCCCCCC

///

"114400000000,"033400000000,"377777777777,

"000000000000"000000000000"344777777777

MACHINE CONSTANTS FOR THE PDP-10 (KI PROCESSOR).

MCHEPS(1),MCHEPS(2)MINMAG(1),MINMAG(2)MAXMAG(1),MAXMAG(2)

//

/

"104400000000,"000400000000,"377777777777,

"000000000000"000000000000"377777777777

MACHINE CONSTANTS FOR THE PDP-11 FORTRAN SUPPORTING32-BIT INTEGERS (EXPRESSED IN INTEGER AND OCTAL).

MCHEPS(1) ,MCHEPS(2)sINMAG(1) ,MINMAG(2)MAXMAG(1) ,MAXMAG(2)

>CHEPS(1) ,MCHEPS(2)MINMAG(1) ,MINMAG(2)MAXMAG(1) ,MAXMAG(2)

///

///

620756992,8388608,

2147483647,

0/o/-1 /

004500000000, 000000000000000040000000, 000000000000017777777777, 037777777777

///

C MACHINE CONSTANTS FOR THE PDP-11 FORTRAN SUPPORTINGC 16-BIT INTEGERS (EXPRESSED IN INTEGER AND OCTAL).

DATA MCHEPS(1),MCHEPS(2) /DATA NCHEPS(3),MCHEPS(4) /

DATA MINMAG(1),MINMAG(2) /DATA MINMAG(3),MINMAG(4) /

DATA MAXMAG(1),MAXMAG(2) /DATA MAXMAG(3),MAXMAG(4) /

9472,0,

128.0,

32767,-1,

0/0/

0/0/

-1 /-1 /

DATA MCHEPS(1),MCHEPS(2) / 0022400, 0000000 /DATA MCHEPS(3),MCHEPS(4) / 0000000, 0000000 /

DATA MINMAG(1),MINMAG(2) / 0000200, 0000000 /DATA MIN MAG(3),M1INMAG(4) / 0000000, 0000000 /

DATA AXMAG(1),MAXMAG(2) / 0077777, 0177777 /DATA MAXMAG(3),MAXMAG(4) / 0177777, 0177777 /

MACHINE CONSTANTS FOR THE BURROUGHS 6700/7700 SYSTEMS.

DATA MCHEPS(1) / 01451000000000000 /DATA MCHEPS(2) / 00000000000000000 /

DATA MINMAG(1) / 01771000000000000 /DATA MINMAG(2) / 07770000000000000 /

DATA MAX'IAG(1) / 0077777777777777 /DATA MAXMAG(2) / 07777777777777777 /

20

DATADATADATA

MCHEPS(1) ,MCHEPS(2)MINMAG(1),MINMAG(2)MAXMAG(1),MAXMAG(2)

DATADATADATA

///

///

DATADATADATA

DATADATADATA

DPPR0610DPPR0620DPPR0630DPPR0640DPPR0650DPPR0660DPPR0670DPPR0680DPPR0690DPPR0700DPPRO710DPPR0720DPPR0730DPPRO740DPPR0750DPPR0760DPPRO770DPPR0780DPPR0790DPPR0800DPPRO810DPPR0820DPPR0830DPPRO840DPPRO850DPPR0860DPPR0870DPPR0880DPPR0890V 'PRO900DPPRO910DPPR0920DPPR0930DPPR0940DPPRO950DPPR0960DPPR0970DPPR0980DPPRO990DPPR1000DPPR1010DPPR1020DPPR1030DPPR1040DPPR1050DPPR1060DPPR1070DPPR1080DPPR1090DPPR1I100DPPR1110DPPR1120DPPR1130DPPRI140DPPR1150DPPR1160DPPR1170DPPR1180DPPR1190

CCCC

CCCCCCCCCCCCCCCCCCCCCCCC DPPR1200

Page 21: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

21

C DPPR1210C MACHINE CONSTANTS FOR THE BURROUGHS 5700 SYSTEM. DPPR1220C DPPR1230C DATA MCHEPS(1) / 01451000000000000 / DPPR1240C DATA MCHEPS(2) / 00000000000000000 / DPPR1250C DPPR1260C DATA MINMAG(1) / 01771000000000000 / DPPR1270C D.'iTA MINMAG(2) / 00000000000000000 / DPPR 1280C DPPR1290C DATA MAXMAG(1) / 00777777777777777 / DPPR1300C DATA MAXMAG(2) / 00007777777777777 / DPPR1310C DPPR 1320C MACHINE CONSTANTS FOR THE BURROUGHS 1700 SYSTEM. DPPR1330C DPPR1340C DATA MCHEPS(1) / ZCC6800000 / DPPR1350C DATA MCHEPS(2) / Z000000000 / DPPR1360C DPP:' 370C DATA MINMAG(1) / ZC00800000 / DPPR1380C DA"'A MINMAG(2) / Z000000000 / DPPR1390C DPPR1400C DATA MAXMAG(1) / ZDFFFFFFFF / DPPR1410C DATA MAXMAG(2) / ZFFFFFFFFF / DPPR1420C DPPR1430C MACHINE CONSTANTS FOR THE UNIVAC 1100 SERIES. DPPR1440C DPPR1450C DATA MCHEPS(1),MCHEPS(2) / 0170640000000, 0000000000000 / DPPR1460C DATA MINMG(1),MINMAG(2) / 0000040000000, 0000000000000 / DPPR1470C DATA MAXMAG(1),MAXMAG(2) / 0377777777777, 0777777777777 / DPPR1480C DPPR1490C MACHINE CONSTANTS FOR THE DATA GENERAL ECLIPSE S/200. DPPR1500C DPPR1510C NOTE - IT MAY BE APPROPRIATE TO INCLUDE THE FOLLOWING CARD - DPPR1520C STATIC DMACH(3) DPPR1530C DPPR1540C DATA MINMAG/20K,3*0/,MAXMAG/77'77K,3*177777K/ DPPR1550C DATA MCHEPS/32020K,3*0/ DPPR1560C DPPR1570C MACHINE CONSTANTS FOR THE HARRIS 220. DPPR1580C DPPR1590C DATA MCHEPS(1),MCHEPS(2) / '20000000, '00000334 / DPPR1600C DATA MINMAG(1),MINMAG(2) / '20000000, '00000201 / DPPR1610C DATA MAXMAG(1),MAXMAG(2) / '37777777, '37777577 / DPPR1620C DPPR1630C MACHINE CONSTANTS FOR THE CRAY-1. DPPR1640C DPPR1650C DATA MCHEPS(1) / 0376424000000000000000B / DPPR1660C DATA MCHEPS(2) / 0000000COOOO000000OOOB / DPPR1670C DPPR1680C DATA MINMAG(1) / 020003000000000000000B / DPPR1690C DATA MINMAG(2) / 000000000000000000000O B / DPPR1700C DPPR1710C DATA MAXMAG(1) / 0577777777777777777777B / DPPR1720C DATA MAXMAG(2) / 0000007777777777777776B / DPPR1730C DPPR1740C MACHINE CONSTANTS FOR THE PRIME 400. DPPR1750C DPPR1760C DATA MCHEPS(1),MCHEPS(2) / :10000000000, :00000000123 / DPPR1770C DATA MINMAG(1),MINMAG(2) / :10000000000, :00000100000 / DPPR1780C DATA MAXMAG(1),MAXMAG(2) / :17777777777, :37777677776 / DPPR1790C DPPR1800

Page 22: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

22

DPMPAR = DMACH(I) DPPR1R10RETURN DPPR1820

C DPPR1830C LAST CARD OF FUNCTION DPMPAR. DPPR1840C DPPR1850

END DPPR1860

Page 23: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

23

A PPE N D I X B

Test Driver Listings

Page 24: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

24

Page 25: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

25

C DPPD0010C DPPDO020C THIS PROGRAM CHECKS THE CONSTANTS OF MACHINE PRECISION AND DPPDO030C SMALLEST AND LARGEST MACHINE REPRESENTABLE NUMBERS SPECIFIED IN DPPDO040C FUNCTION DPMPAR, AGAINST THE CORRESPONDING HARDWARE-DETERMINED DPPDO050C MACHINE CONSTANTS OBTAINED BY DMCHAR, A SUBROUTINE DUE TO DPPDO060C W. J. CODY. DPPDO070C DPPDO080C DATA STATEMENTS IN DPMPAR CORRESPONDING TO THE MACHINE USED MUST DPPDO090C BE ACTIVATED BY REMOVING C IN COLUMN 1. DPPDO100C DPPDO110C THE PRINTED OUTPUT CONSISTS OF THE MACHINE CONSTANTS OBTAINED BY DPPDO120C DMCHAR AND COMPARISONS OF THE DPMPAR CONSTANTS WITH THEIR DPPDO130C DMCHAR COUNTERPARTS. DESCRIPTIONS OF THE MACHINE CONSTANTS ARE DPPDO140C GIVEN IN THE PROLOGUE COMMENTS OF DMCHAR. DPPDO350C DPPD0160C SUBPROGRAMS CALLED DPPDO170C DPPDO180C MINPACK-SUPPLIED ... DMCHAR,DPMPAR DPPDO190C DPPD0200C ARGONNE NATIONAL LABORATORY. MINPACK PROJECT. MARCH 1980. DPPD0210C BURTON S. GARBOW, KENNETH E. HILLSTROM, JORGE J. MORE DPPD0220C DPPD0230C DPPDO240

INTEGER IBETA,IEXP, IRND, IT,MACHEP,MAXEXP,MINEXP,NEGEP,NGRD, DPPD0250* NWRITE DPPD0260DOUBLE PRECISION DWARF,EPS,EPSMCH,EPSNEG,GIANT,XMAX,XMIN DPPD0270DOUBLE PRECISION RERR(3) DPPD0280DOUBLE PRECISION DPMPAR DPPD0290

C DPPD0300C LOGICAI OUTPUT UNIT IS ASSUMED TO BE NUMBER 6. DPPD0310C DPPD0320

DATA NWRITE /6/ DPPD0330C DPPD0340C DETERMINE THE MACHINE CONSTANTS DYNAMICALLY FROM DMCHAR. DPPDO350C DPPD0360

CALL DMCHAR(IBETA, IT,IRND,NGRD,MACHEP,NEGEP,IEXP,MINEXP,MAXEXP, DPPT00370* EPS,EPSNEG,XMIN,XMAX) DPPI)0380

C DPPD0390C COMPARE THE DPMPAR CONSTANTS WITH THEIR DMCHAR COUNTERPARTS AND DPPD0400C STORE THE RELATIVE DIFFERENCES IN RERR. DPPI)0410C DPPD0420

EPSMCH = DPMPAR(1) DPPD0430DWARF = DPMPAR(2) DPPD0440GIANT = DPMPAR(3) DPPD0450RERR(1) = (EPSMCH - EPS)/EPSMCH DPPD04tORERR(2) = (DWARF - XMIN)/DWARF DPPD0470RERR(3) = (XMAX - GIANT)/GIANT DPPD0480

C DPPD0490C WRITE THE DMCHAR CONSTANTS. DPPDO500C DPPDO510

WRITE (NWRITE,10) DPPDO520* IBETA,IT,IRND,NGRD,MACHEP,NEGEP,IEXP,MINEXP,MAXEXF,EPS, DPPD0'30* EPSNEG,XMIN,XMAX DPPDO540

C DPPDO550C WRITE THE DPMPAR CONSTANTS AND THE RELATIVE DIFFERENCES. DPPDO5 OC DPPDO570

WRITE (NWRITE,20) EPSMCH,RERR(1),DWARF,RERR(2),GIANT,RERR(3) DPPDO580STOP DPPDO590

10 FORMAT (17H1DMCHAR CONSTANTS // 8H IBETA s, 16 // 8H IT =, DPPD0600* 16 // 8H IRND =, 16 // 8H NGRD r, 16 // 9H MACHEP *, DPPD0610

Page 26: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

26

* 16 // 8H NEGEP =, 16 // 7H IEXP =, 16 // 9H 'IINEXP =, DPPD0620* 16 // 9H MAXEXP =, 16 // 6H EPS =, D15.7 // 9H EPSNEG , DPPD0630* D15.7 // 7H XMIN =, D15.7 // 7H XMAX =, D15.7) DPPD0640

20 FORMAT ( /// 42H DPMPAR CONSTANTS AND RELATIVE DIFFERENCES // DPPD0650* 9H EPSMCH =, D15.7 / 1OH RERR(1) ==, D15.7 // DPPD0660

8H DWARF =, D15.7 / 10H RERR(2) =, D15.7 / 8H GIANT , DPPD0670* D15.7 / 10H RERR(3) =, D15.7) DPPD0680

C DPPD0690C LAST CARD OF DRIVER. DPPD0700C DPPD0710

END DPPD072O

Page 27: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

27

C ***** HYBDO010C HYBDO020C THIS PROGRAM TESTS CODES FOR THE SOLUTION OF N NONLINEAR HYBDO030C EQUATIONS IN N VARIABLES. IT CONSISTS OF A DRIVER AND AN HYBDO040C INTERFACE SUBROUTINE FCN. THE DRIVER READS IN DATA, CALLS THE HYBDO050C NONLINEAR EQUATION SOLVER, AND FINALLY PRINTS OUT INFORMATION HYBDO060C ON THE PERFORMANCE OF THE SOLVER. THIS IS ONLY A SAMPLE DRIVER, HYBDO070C MANY OTHER DRIVERS ARE POSSIBLE. THE INTERFACE SUBROUTINE FCN HYBDO080C IS NECESSARY TO TAKE INTO ACCOUNT THE FORMS OF CALLING HYBDO090C SEQUENCES USED BY THE FUNCTION SUBROUTINES IN THE VARIOUS HYBDO100C NONLINEAR EQUATION SOLVERS. HYBDO110C HYBDO120C SUBPROGRAMS CALLED HYBD0130C HYBDO140C USER-SUPPLIED....... FCN HYBDO150C HYBDO160C MINPACK-SUPPLIED ... DPMPAR,ENORM,HYBRD1, INITPT,VECFCN HYBDO170C HYBDO180C FORTRAN-SUPPLIED ... DSQRT HYBDO190C HYBD0200C ARGONNE NATIONAL LABORATORY. MINPACK PROJECT. MARCH 1980. HYBD0210C BURTON S. GARBOW, KENNETH E. HILLSTROM, JORGE J. MORE HYBD0220C HYBDO230C * *HYBD0240

INTEGER I,IC,INFO,K,LWA,N,NFEV,NPROB,NREAD,NTRIES,NWRITE HYBD0250INTEGER NA(60),NF(60),NP(60),NX(60) ;YBD0260DOUBLE PRECISION FACTOR,FNORM1,FNORM2,ONE,TEN,TOL HYBDO270DOUBLE PRECISION FNM(60),FVEC(40),WA(2660),X(40) HYBD0280DOUBLE PRECISION DPHPAR,ENORM HYBD0290EXTERNAL FCN HYBD0300COMMON /REFNUM/ NPROB,NFEV HYBD0310

C HYBD0320C LOGICAL INPUT UNIT IS ASSUMED TO BE NUMBER 5. HYBD0330C LOGICAL OUTPUT UNIT IS ASSUMED TO BE NUMBER 6. HYBD0340C tiYBD03>0

DATA NREAD,NWRITE /5,6/ 1YBD0360C HYBD0370

DATA ONE,TEN /1.ODO,1.OD1/ HYBD0380TOL = DSQRT(DPMPAR(1)) HYBD0390LWA = 2660 HYBD0400IC = 0 HYBDO410

10 CONTINUE HYBD0420READ (NREAD,50) NPROB,N,NTRIES HYBDO430IF (NPROB .LE. 0) GO TO 30 HYBD0440FACTOR = ONE HYBD0450DO 20 K = 1, NTRIES HYBD0460

IC = IC + 1 HYBD0470CALL INITPT(N,X,NPROB,FACTOR) HYBD0480CALL VECFCN(N,X,FVEC,NPROB) HYBD0490FNORM1 = ENORM(N,FVEC) HYBDOS00WRITE (NWRITE,60) NPROB,N HYBDO510NFEV = 0 HYBD0520CALL HYBRD1(FCN,N,X,FVEC,TOL,INFO,WA,LWA) HYBDO530FNORM2 = ENORM(N,FVEC) HYBDO540NP(IC) NPROB HYBD0550NA(IC) = N HYDD0560NF(IC) = NFEV HYBD0570NX(IC) = INFO HYBDOJ80FNM(IC) = FNORM2 HYBDO590WRITE (NWRITE,70) FNORM1,FNORM2,NFEV,INFO,(X(I), I = 1, N) HYBDO600FACTOR = TEN*FACTOR HYBDOe 10

Page 28: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

20 CONTINUEGO TO 10

30 CONTINUEWRITE (NWRITE,80) ICWRITE (NWRITE,90)DO 40 I = 1, IC

WRITE (NWRITE,100) NP(I),NA(I),NF(I),NX(I),FNM(I)40 CONTINUE

STOP50 FORMAT60 FORMAT70 FORMAT

*

*

80 FORMAT90 FORMAT

100 FORMAT

(315)( //// 5X, 8H PROBLEM, I5, 5X, 10H DIMENSION, I5, 5X //)(5X, 33H INITIAL L2 NORM OF THE RESIDUALS, D15.7 // 5X,33H FINAL L2 NORM OF THE RESIDUALS , D15.7 // 5X,33H NUMBER OF FUNCTION EVALUATIONS , I10 // 5X,15H EXIT PARAMETER, 18X, I10 // 5X,27H FINAL APPROXIMATE SOLUTION // (5X, 5D15.7))(12H1SUMMARY OF , 13, 16H CALLS TO HYBRD1 /)(39H NPROB N NFEV INFO FINAL L2 NORM /)(I4, 16, 17, 16, 1X, D15.7)

CC LAST CARD OF DRIVER.C

ENDSUBROUTINE FCN(N,X,FVEC,IFLAG)INTEGER N,IFLAGDOUBLE PRECISION X(N),FVEC(N)

CCC THE CALLING SEQUENCE OF FCN SHOULD BE IDENTICAL TO THEC CALLING SEQUENCE OF THE FUNCTION SUBROUTINE IN THE NONLINEARC EQUATION SOLVER. FCN SHOULD ONLY CALL THE TESTING FUNCTIONC SUBROUTINE VECFCN WITH THE APPROPRIATE VALUE OF PROBLEMC NUMBER (NPROB).CC SUBPROGRAMS CALLEDCC MINPACK-SUPPLIED ... VECFCNCC ARGONNE NATIONAL LABORATORY. MINPACK PROJECT. MARCH 1980.C BURTCN S. GAREOW, KENNETH E. HILLSTROM, JORGE J. MORECC

INTEGER NPROB,NFEVCOMMON /REFNUM/ NPROB,NFEVCALL VECFCN(N,X,FVEC,NPROB)NFEV = NFEV + 1RETURN

CC LAST CARD OF INTERFACE SUBROUTINE FCN.C

END

28

HYBD0620HYBD0630HYBD0640HYBD0650HYBD0660HYBD0670HYBD0680HYBD0690HYBD0700HYBD0710HYBD0720HYBD0730HYBD0740HYBD0750HYBD0760HYBD0770HYBD0780HYBD0790HYBD0800HYBD0810HYBDO820HYBD0830HYBD0840HYBD0850HYBD0860HYBD0870HYBD0880HYBD0890HYBD0900HYBD0910HYBD0920HYBDO930HYBD0940HYBD0950HYBD0960HYBD0970HYBD0980HYBD0990HYBD1000HYBD1010HYBD1020HYBD1030HYBD1040HYBD1050HYBD1060HYBD1070HYBD1080HYBD1090HYBD1100HYBD1110HYBD1120

Page 29: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

29

C ********* HYJD0010C HYJD0020C THIS PROGRAM TESTS CODES FOR THE SOLUTION OF N NONLINEAR HYJD0030C EQUATIONS IN N VARIABLES. IT CONSISTS OF A DRIVER AND AN HYJD0040C INTERFACE SUBROUTINE FCN. THE DRIVER READS IN DATA, CALLS THE HYJD0050C NONLINEAR EQUATION SOLVER, AND FINALLY PRINTS OUT INFORMATION HYJD0060C ON THE PERFORMANCE OF THE SOLVER. THIS IS ONLY A SAMPLE DRIVER, HYJD0070C MANY OTHER DRIVERS ARE POSSIBLE. THE INTERFACE SUBROUTINE FCN HYJD')080C IS NECESSARY TO TAKE INTO ACCOUNT THE FORMS OF CALLING HYJD0090C SEQUENCES USED BY THE FUNCTION AND JACOBIAN SBROUTINES IN HYJDO100C THE VARIOUS NONLINEAR EQUATION SOLVERS. HYJDO110C IIYJD0120C SUBPROGRAMS CALLED HYJD0130C HYJI)0140C USER-SUPPLIED....... FCN HYJD0150C HYJDOI60C MINPACK-SUPPLIED ... DPMPAR,ENORM,HYBRJ1,INITPT,VECFCN HYJDO170C HYJD0180C FORTRAN-SUPPLIED ... DSQRT HYJD0190C HYJD0200C ARGONNE NATiONAL LABORATORY. MINPACK PROJECT. MARCH 1980. HYJDO210C BURTON S. GARBOW, KENNETH E. HILLSTROM, JORGE J. MORE HYJD0220C HYJD0230C HYJD0240

INTEGER I,IC,INFO,K,LDFJAC,LWA,N,NFEV,NJEV,NPROB,NREAI),NTRIES, HYJD02501 NWRITE HYJD0260INTEGER NA(60),NF(60),NJ(60),NP(60),NX(60) HYJD0270DOUBLE PRECISION FACTOR,FNORM1,FNORM2,ONETEN,TOL HYJD0280DOUBLE PRECISION FNM(60),FJAC(40,40),FVEC(40),WA(1060),X(40) HYJD0290DOUBLE PRECISION DPMPAR,ENORM HYJD0300EXTERNAL FCN HYJD0310COMMON /REFNUM/ NPROB,NFEV,NJEV HYJD0320

C HYJD0330C LOGICAL INPUT UNIT IS ASSUMED TO BE NUMBER 5. HYJD0340C LOGICAL OUTPUT UNIT IS ASSUMED TO BE NUMBER 6. HYJD0350C IIYJD0360

1ATA NREAD,NWRITE /5,6/ HYJD0370C HYJD0380

DATA ONE,TEN /1.ODO,1.OD1/ HYJD0390TOL = DSQRT(DPMPAR(1)) HYJD0400LDFJAC = 40 HYJD0410LWA = 1060 HYJD0420IC = 0 HYJD0430

10 CONTINUE HYJD0440READ (NREAD,50) NPROB,N,NTRIES HYJDO450IF (NPROB .LE. 0) GO TO 30 HYJDO460FACTOR = ONE IIYJD0470DO 20 K = 1, NTRIES HYJDO480

IC = IC + 1 HYJD0490CALL INITPT(N,X,NPROB,FACTOR) HYJD0500CALL VECFCN(N,X,FVEC,NPROB) HYJD0510FNORM1 = ENORM(N,FVEC) HYJD0520WRITE (NWRITE,60) NPROB,N HYJD0530NFEV = 0 HYJD0540NJEV = 0 HYJD0550CALL HYBRJ1(FCN,N,X,FVEC,FJAC,LDFJAC,TOL,INFO,WA,LWA) HYJD0560FNORM2 = ENORM(N,FVEC) HYJD0570NP(IC) = NPROB HYJD0580NA(IC) = N HYJD0590NF(IC) = NFEV HYJD0600NJ(IC) = NJEV HYJD0610

Page 30: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

30

NX(IC) = INFO HYJD0620FNM(IC) = FNORM2 HYJD0630WRITE (NWRITE,70) HYJD0640

1 FNORM1,FNORM2,NFEV,NJEV,INFO,(X(I), I = 1, N) HYJD0650FACTOR = TEN*FACTOR HYJD0660

20 CONTINUE HYJD0670GO TO 10 HYJD0680

30 CONTINUE HYJD0690WRITE (NWRITE,80) IC HYJD0700WRITE (NWRITE,90) HYJD0710DO 40 I = 1, IC HYJD0720

WRITE (NWRITE,100) NP(I),NA(I),NF(I),NJ(I),NX(I),FNM(I) HYJD073040 CONTINUE HYJD0740

STOP HYJD075050 FORMAT (315) HYJD076060 FORMAT ( //// 5X, 8H PROBLEM, 15, 5X, 10H DIMENSION, 15, 5X //) HYJD077070 FORMAT (5X, 33H INITIAL L2 NORM OF THE RESIDUALS, D15.7 // 5X, HYJD07801 3311 FINAL L2 NORM OF THE RESIDUALS , D15.7 // 5X, HYJD07902 33H NUMBER OF FUNCTI(I EVALUATIONS , 110 // 5X, HYJD08003 3311 NUMBER OF JACOBIAN EVALUATIONS , I10 // 5X, HYjD081O4 1511 EXIT PARAMETER, 18X, 110 // 5X, IYJD08205 2711 FINAL APPROXIMATE SOLUTION // (5X, 5D15.7)) HYJD0830

80 FCAMAT (12H1SUMMARY OF , 13, 16H CALLS TO HYBRJ1 /) HYJD084090 FORMAT (4611 NPROB N NFEV NJEV INFO FINAL L2 NORM /) HYJD0850100 FORMAT (14, 16, 217, 16, 1X, D15.7) HYJD0860

C HYJD0870C LAST CARD OF DRIVER. HYJD0880C HYJD0890

END HYJD0900SUBROUTINE FCN(N,X,FVEC,FJAC,LDFJAC,IFLAG) HYJD0910INTEGER N,LDFJACIFLAG HYJD0920DOUBLE PRECISION X(N),FVEC(N),FJAC(LDFJAC,N) HYJD0930

C ********** HYJD0940C HYJD0950C THE CALLING SEQUENCE OF FCN SHOULD BE IDENTICAL TO THE HYJD0960C CALLING SEQUENCE OF THE FUNCTION SUBROUTINE IN THE NONLINEAR HYJD0970C EQUATION SOLVER. FCN SHOULD ONLY CALL THE TESTING FUNCTION HYJD0980C AND JACOBIAN SUBROUTINES VECFCN AND VECJAC WITH THE HYJD0990C APPROPRIATE VALUE OF PROBLEM NUMBER (NPROB). HYJD1000C HYJD1010C SUBPROGRAMS CALLED HYJD1020C HYJD1030C MINPACK-SUPPLIED ... VECFCN,VECJAC HYJD1040C HYJD1050C ARGONNE NATIONAL LABORATORY. MINPACK PROJECT. MARCH 1980. HYJD1060C BURTON S. GARBOW, KENNETH E. HILLSTROM, JORGE J. MORE HYJD1070C HYJD1080C HYJD 1090

INTEGER NPROB,NFEV,NJEV HYJD1100COMMON /REFNUM/ NPROB,NFEV,NJEV HYJD1110IF (IFLAG .EQ. 1) CALL VECFCN(N,X,FVEC,NPROB) HYJD1120IF (IFLAG .EQ. 2) CALL VECJAC(N,X,FJAC,LDFJAC,NPROB) HYJD1130IF (IFLAG .EQ. 1) NFEV = NFEV + 1 HYJD1140IF (IFLAG .EQ. 2) NJEV = NJEV + 1 HYJD1150RETURN HYJD1160

C HYJD1170C LAST CARD OF INTERFACE SUBROUTINE FCN. HYJD1180C HYJD1190

END HYJD1200

Page 31: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

31

C ****s*.:**** LMDD0010C LMDD0020C THIS PROGRAM TESTS CODES FOR THE LEAST-SQUARES SOLUTION OF LMDD0030C M NONLINEAR EQUATIONS IN N VARIABLES. IT CONSISTS OF A DRIVER LMDD0040C AND AN INTERFACE SUBROUTINE FCN. THE DRIVER READS IN DATA, LMDD0050C CALLS THE NONLINEAR LEAST-SQUARES SOLVER, AND FINALLY PRINTS LMDD0060C OUT INFORMATION ON THE PERFORMANCE OF THE SOLVER. THIS IS LMDD0070C ONLY A SAMPLE DRIVER, MANY OTHER DRIVERS ARE POSSIBLE. THE LMDD0080C INTERFACE SUBROUTINE FCN IS NECESSARY TO TAKE INTO ACCOUNT THE LMDD0090C FORMS OF CALLING SEQUENCES USED BY THE FUNCTION AND JACOBIAN LMDD0100C SUBROUTINES IN THE VARIOUS NONLINEAR LEAST-SQUARES SOLVERS. LMDD0110C LMDD0120C SUBPROGRAMS CALLED LMDD0130C LMDD0140C USER-SUPPLIED....... FCN LMDDO150C LMDD0160C MINPACK-SUPPLIED ... DPMPAR,ENORM,INITPT,LMDER1,SSQFCN LMDD0170C LMDD0180C FORTRAN-SUPPLIED ... DSQRT LMDD0190C LMDD0200C ARGONNE NATIONAL LABORATORY. MINPACK PROJECT. MARCH 1980. LMDD0210C BURTON S. GARBOW, KENNETH E. HILLSTROM, JORGE J. MORE LMDD0220C LMI)D0230C LMDD0240

INTEGER I ,IC,INFO,K,LDFJAC,LWA,M,N,NFEV,NJEV,NPROB,NREAD,NTRIES, LMDD0250* NWRITE LMDD0260INTEGER IWA(40),MA(60),NA(60),NF(60),NJ(bO),NP(60),? :(60) LMDD0270DOUBLE PRECISION FACTOR,FNORM1,FNORM2,ONE,TEN,TOL LMDI)0280DOUBLE PRECISION FJAC(65,40),FNM(60),FVEC(65),WA(265),X(40) LMDD0290DOUBLE PRECISION DPMPAR,ENORM LMDD0300EXTERNAL FCN LMDD0310COMMON /REFNUM/ NPROB,NFEV,NJEV LMDD0320

C LMDD0330C LOGICAL INPUT UNIT IS ASSUMED TO BE NUMBER 5. LMDD0340C LOGICAL OUTPUT UNIT IS ASSUMED TO BE NUMBER 6. LMDD0350C LMDD0360

DATA NREAD,NWRITE /5,6/ LMDD0370C LM0I)I)O380

DATA ONE,TEN /1.ODO,1.OD1/ LMDD0390TOL = DSQRT(DPMPAR(1)) LMDD0400LDFJAC = 65 LMDD0410LWA = 265 LNDD0420IC = 0 LMDD0430

10 CONTINUE LMDD0440READ (NREAD,50) NPROB,N,M,NTRIES LMLD0450IF (NPROB .LE. 0) GO TO 30 LMDD0460FACTOR = ONE LMDD0470DO 20 K = 1, NTRIES LMDD0480

IC = IC + 1 LMDD0490CALL INITPT(N,X,NPROB,FACTOR) LMDD0500CALL SSQFCN(M,N,X,FVEC,NPROB) LMDDO510FNORM1 = ENORM(M,FVEC) LNDD0520WRITE (NWRITE,60) NPROB,N,M LMDD0530NFEV = 0 LMDD040NJEV = 0 L.MDDOSSOCALL LMDER1(FCN,M,N,X,FVEC,FJAC,LDFJAC,TOL,INFO,IWA,WA, LMDDC560

* LWA) LMDD0570CALL SSQFCN(M,N,X,FVEC,NPROB) LMDD0580FNNRM2 * ENORM(M,FVEC) LMDD0590NPIC) * NPROB LMDD0600NA(IC) = N LDD0610

Page 32: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

MA(IC) = MNF(IC) = NFEVNJ(IC) = NJEVNX(IC) = INFOFNM(IC) = FNOR 2WRITE (NWRITE,70)

* FNORM1,FNORM2,NFEV,NJEV,INFO,(X(I), I = 1, N)FACTOR = TEN*FACTOR

20 CONTINUEGO TO 10

30 CONTINUEWRITE (NWRITE,80) ICWRITE (NWRITE,90)DO 40 I = 1, IC

WRITE (NWRITE,100) NP(I),NA(I),MA(I),NF(I),NJ(I),NX(I),FNM(I)40 CONTINUE

STOP50 FORMAT60 FORMAT

*

70 FORMAT*

*

*

*

'

80 FORMAT90 FORMAT

100 FORMAT

(415)

( f/// 5X, 8H PROBLEM, I, 5X, 11H DIMENSIONS, 215, 5X //)

(5X, 33H INITIAL L2 NORM OF THE RESIDUALS, D15.7 // 5X,33H FINAL L2 NORM OF THE RESIDUALS , D15.7 // 5X,3311 NUMBER OF FUNCTION EVALUATIONS , 110 // 5X,33H1 NUMBER OF JACOBIAN EVALUATIONS , 110 // 5X,15H EXIT PARAMETER, 18X, 110 // 5X,27H FINAL APPROXIMATE SOLUTION // (5X, 5D15.7))

(12H1SUMMARY OF , 13, 16H CALLS TO LMDER1 /)(49H NPROB N P NFEV NJEV INFO FINAL L2 NORM /)(315, 316, 1X, D15.7)

CC LAST CARD OF DRIVER.C

ENDSUBROUTINE FCN(M,N,X,FVEC,FJAC,LDFJAC,IFLAG)INTEGER M,N,LDFJAC, FLAGDOUBLE PRECISION X(N),FVEC(M),FJAC(LDFJAC,N)

C **********CC THE CALLING SEQUENCE OF FCN SHOULD BE IDENTICAL TO THEC CALLING SEQUENCE OF THE FUNCTION SUBROUTINE IN THE NONLINEARC LEAST-SQUARES SOLVER. FCN SHOULD ONLY CALL THE TESTINGC FUNCTION AND JACOBIAN SUBROUTINES SSQFCN AND SSQJAC WITHC THE APPROPRIATE VALUE OF PROBLEM NUMBER (NPROB).CC SUBiROGRAMS CALLEDCC MINPACK-SUPPLIED ... SSQFCN,SSQJACCC ARGONNE NATIONAL LABORATORY. MINPACK PROJECT. MARCH 1980.C BURTON S. GARBOW, KENNETH E. HILLSTROM, JORGE J. MORECC **********

I NTEGER NPROB,NFEV , NJEVCOMMON /REFNUM/ NPROB,NFEV,NJEVIF (IFLAG .EQ. 1) CALL SSQFCN(M,N,X,FVEC,NPROB)IF (IFLAG .EQ. 2) CALL SSQJAC(M,N,X,FJAC,LDFJAC,NPROB)IF (IFLAG .EQ. 1) NFEV = NFEV + 1IF (IFLAG .EQ. 2) NJEV a NJEV + 1RETURN

CC LAST CARD OF INTERFACE SUBROUTINE FCN.

32

LMDD0620LMDD0630LMDD0640LMDD0650LMDD0660LMDD0670LMDD068OLMDD0690LMDD0700LMDD0710LMDD0720LMIDDO730LMDD0740LMUDO750LNDDO760LNDDO770LDDO780LMDD0790LMDDO800LMDDO810LMDDO82OLMDD0830LNDD0840LMDDO850LMDD0860LMDD0870L1DD0880L"1DD0890LMDD0900LMDD0910L!1DD0920LMDD0930LMDD0940IMDD0950LMDD0960LMDD0970LMDD098OLMDD0990LMDD1000L9DD1010L1DD1020LMDD1030L9PD1040LMDD1050LMDD1060L'IDD 1070LMDD 1080LMDD1090LMDD1100L'1DD1110LMDD1120LMDD1130LMDD1140L1DD 1150L'IDD1160LMDD1170LMDD1180L9DD1190LNDD1200LIDD1210LMDD1220

Page 33: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

INMDD 1230LMDD1240

CEND

33

Page 34: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

34

C ********** LMSDO010C LMSDOO20C THIS PROGRAM TESTS CODES FOR THE LEAST-SQUARES SOLUTION OF LMSDO030C M NONLINEAR EQUATIONS IN N VARIABLES. IT CONSISTS OF A DRIVER LMSDO040C AND AN INTERFACE SUBROUTINE FCN. THE DRIVER READS IN DATA, LMSDO050C CALLS THE NONLINEAR LEAST-SQUARES SOLVER, AND FINALLY PRINTS LMSDO060C OUT INFORMATION ON THE PERFORMANCE OF THE SOLVER. THIS IS LMSDO070C ONLY A SAMPLE DRIVER, MANY OTHER DRIVERS ARE POSSIBLE. THE LMSD0080C INTERFACE SUBROUTINE FCN IS NECESSARY TO TAKE INTO ACCOUNT THE LMSDO090C FORMS OF CALLING SEQUENCES USED BY THE FUNCTION AND JACOBIAN LMSD0100C SUBROUTINES IN "HE VARIOUS NONLINEAR LEAST-SQUARES SOLVERS. LMSDO110C LMSDO120C SUBPROGRAMS CALLED LMSDO130C LMSD0140C USER-SUPPLIED....... FCN LMSDO150C LMSDO160C MINPACK-SUPPLIED ... DPMPAR,ENORM, INITPT,LMSTR1,SSQFCN LMSDO170C LMSDO180C FORTRAN-SUPPLIED ... DSQRT LMSDO190C LMSD0200C ARGONNE NATIONAL LABORATORY. MINPACK PROJECT. MARCH 1980. LMSDO210C BURTON S. GARBOW, KENNETH E. HILLSTROM, JORGE J. MORE LMSD0220C LMSDO2 30C ********* LMSD0240

INTEGER I, IC, INFO,K,LDFJAC,LWA,M,N FEV,NJEV,NPROB,NREAD,NTRIES, LMSD0250NWRITE LMSD0260

INTEGER IWA(40),MA(60),NA(60),NF(60),NJ(60),NP(60),NX(60) LMSD0270DOUBLE PRECISION FACTOR,FNORM1,FNORM2,ONE,TENTOL LMSD0280DOUBLE PRECISION FJAC(40,40),FNM(60),FVEC(65),WA(265),X(40) LMSD0290DOUBLE PRECISION DPMPAR,ENORM LMSD0300EXTERNAL FCN LMSD0310COMMON /REFNUM/ NPROB,NFEV,NJEV LMSD0320

C LMSDO330C LOGICAL INPUT UNIT IS ASSUMED TO BE NU'IBER 5. LMSDO340C LOGICAL OUTPUT UNIT IS ASSUMED TO BE NUMBER b. LMSD0350C LMSD0360

DATA NREAD,NWRITE /5,6/ LMSD0370C LMSD0380

DATA ONETEN /1.ODO,1.ODI/ LMSDO390TOL = DSQRT(DPMPAR(I)) LSDO400LDFJAC = 40 L1SD0410LWA = 265 LNSD0420IC = 0 LMSD0430

10 CONTINUE LMSD0440READ (NREAD,50) NPROB,N,M,NTRIES LMSD0450IF (NPROB .LE. 0) GO TO 30 LMSD0460FACTOR = ONE LMSD0470DO 20 K = 1, NTRIES LMSDO480

IC = IC + 1 LMSDO490CALL INITPT(N,X,NPROB,FACTOR) LMSD0500CALL SSQFCN(M,N,X,FVEC,NPROB) LMSD0510FNORM1 -ENORd(M,FVEC) LMSDO520WRITE (NWRITE,60) NPROB,N,M L1SD0530NFEV = 0 LMSDO540NJEV : 0 LMSDO550CALL LMSTR1(FCN,M,N,X,FVEC,FJAC.LDFJAC.TOLINFO,IWAWA, LMSD0560

* LWA) LMSDO570CALL SSQFCN(M,N,X,FVEC,NPROB) LMSDO580FNORM2 a ENORM(MFVEC) LNSDO590NP(IC) s NPROB LMISD0600

NA(IC) = N LISD0610

Page 35: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

35

MA(IC) = M LMSD0620NF(IC) = NFEV LMSD0630NJ(IC) = NJEV LMSD0640NX(IC) = INFO LMSD0650FNM(IC) = FNORM2 LMSD0660WRITE (NWRITE,70) LMSDO670

* FNORM1,FNORM2,NFEV,NJEV,INFO,(X(I), I = 1, N) LMSD0680FACTOR = TEN*FACTOR LMSD0690

20 CONTINUE LMSD0700GO TO 10 LMSD0710

30 CONTINUE LMSD0720WRITE (NWRITE,80) IC LMSDO730WRITE (NWRITE,90) LMSD0740DO 40 I = 1, IC LMSD0750

WRITE (NWRITE,100) NP(I),NA(I),MA(I),NF(I),NJ(I),NX(I),FNM(I) LMSDO76040 CONTINUE LMSD0770

STOP LMSD078050 FORMAT (415) LMSD079060 FORMAT ( /// 5X, 8i PROBLEM, 15, 5X, 11H DIMENSIONS, 215, 5X // LMSDO800

* ) LMSDO81070 FORMAT (5X, 33H INITIAL L2 NORM OF THE RESIDUALS, D15.7 // 5X, LMSD0820

* 33H FINAL L2 NORM OF THE RESIDUALS , D15.7 // 5X, LMSD0830* 33H NUMBER OF FUNCTION EVALUATIONS , I10 // 5X, LMSDO840* 33H NUMBER OF JACOBIAN EVALUATIONS , 110 // 5X, LMSD0850* 15H EXIT PARAMETER, 18X, I10 // 5X, LMSD0860* 27H FINAL APPROXIMATE SOLUTION // (5X, 5D15.7)) LMSD0870

80 FORMAT (12H1SUMMARY OF , 13, 16H CALLS TO LMSTR1 /) LMSDO88090 FORMAT (49H NPROb N M NFEV NJEV INFO FINAL L2 NORM /) LMSDO890

100 FORMAT (3IS, 316, 1X, D15.,) LMSD0900C LMSD0910C LAST CARD OF DRIVER. LMSD0920C LMSDO930

END LMSD0940SUBROUTINE FCN(M,N,X,FVEC,FJROW,IFLAG) LMSD0950INTEGER M,N,IFLAG LMSD0960DOUBLE PRECISION X(N),FVEC(M),FJROW(N) LMSD0970

C ********** LMSDO980C LMSD0990C THE CALLING SEQUENCE OF FCN SHOULD BE IDENTICAL TO THE LMSD1000C CALLING SEQUEr'CE OF THE FUNCTION SUBROUTINE IN THE NONLINEAR LMSDIO10C LEAST SQUARES SOLVER. IF IFLAG = 1, FCN SHOULD ONLY CALL THE LMSD1020C TESTING FUNCTION SUBROUTINE SSQFCN. IF IFLAG = I, I .GE. 2, LMSD1030C FCN SHOULD ONLY CALL SUBROUTINE SSQJAC TO CALCULATE THE LMSD1040C (I-1)-ST ROW OF THE JACOBIAN. (THE SSQJAC SUBROUTINE PROVIDED LMSD1O50C HERE FOR TESTING PURPOSES CALCULATES THE ENTIRE JACOBIAN LMSD1060C MATRIX AND IS THEREFORE CALLED ONLY WHEN IFLAG = 2.) EACH LSD1070C CALL TO SSQFCN OR SSQJAC SHOULD SPECIFY THE APPROPRIATE LMSD1080C VALUE OF PROBLEM NUMBER (NPROB). L1SD109CC LMSD1100C SUBPROGRAMS CALLED LMSD1110C LMSD1120C MINPACK-SUPPLIED ... SSQFCN,SSQJAC LMSD1130C LMSD1140C ARGONNE NATIONAL LABORATORY. MINPACK PROJECT. MARCH 1980. LMSD1150C BURTON S. GARBOW, KENNETH E. HILLSTROM, JORGE J. MORE LMSD1160C LMSD1170C LMSD1180

INTEGER NPROB,NFEV,NJEV,J L-SD1190DOUBLE PRECISION TEMP(65,40) LISD1200COMMON /REFNUM/ NPROB,NFEV,NJEV LMSD1210IF (IFLAG .EQ. 1) 'ALL SSQFCN(M,N,X,FVEC,NPROB) LMSD1220

Page 36: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

IF (IFLAG .EQ. 2) CALL SSQJAC(M,N,X,TEMP,65,NPROB)IF (IFLAG .EQ. 1) NFEV = NFEV + 1IF (IFLAG .EQ. 2) NJEV = NJEV + 1IF (IFLAG .EQ. 1) GO TO 120DO 110 J = 1, N

FJROW(J) = TEMP(IFLAG-1,J)110 CONTINUE120 CONTINUE

RETURN

LAST CARD OF INTERFACE SUBROUTINE FCN.

END

36

CCC

LMSD1230LMSD1240LMSD1250LNSD1260LMSD1270LMSD1280LMSD 1290LMSD1300LMSD1310LMSD1320LMSP 1330LMSD1340LMSD1350

Page 37: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

37

C ********** LMFDOO'0C LMFDO020C THIS PROGRAM TESTS CODES FOR THE LEAST-SQUARES SOLUTION OF LMFDO030C M NONLINEAR EQUATIONS IN N VARIABLES. IT CONSISTS OF A DRIVER LMFD04OC AND AN INTERFACE SUBROUTINE FCN. THE DRIVER READS IN DATA, LMFDO050C CALLS THE NONLINEAR LEAST-SQUARES SOLVER, AND FINALLY PRINTS LMFDO060C OUT INFORMATION ON THE PERFORMANCE OF THE SOl ER. THIS IS LMFDO070C ONLY A SAMPLE DRIVER, MANY OTHER DRIVERS ARE POSSIBLE. THE LMFDO080C INTERFACE SUBROUTINE FCN IS NECESSARY TO TAKE INTO ACCOUNT THE LMFDO090C FORMS OF CALLING SEQUENCES USED BY THE FUNCTION AND JACOBIAN LMFDO100C SUBROUTINES IN THE VARIOUS NONLINEAR LEAST-SQUARES SOLVERS. LMFDO110C LMFD0120C SUBPROGRAMS .ALLED LMFDO130C LMFDO140C USER-SUPPLIED....... FCN LMFDO150C LMFDO160C NINPACK-SUPPLIED ... DPMPAR,ENORM,INITPT,LMDIF1,SSQFCN LMFDO170C LMFDO180C FORTRAN-SUPPLIED ... DSQRT LMFD0190C LMFD0200C ARGONNE NATIONAL LABORATORY. MINPACK PROJECT. MARCH 1980. LMFDO210C BURTON S. GARBOW, KENNETH E. HILLSTROM, JORGE J. MORE LMFDO220C LMFDO230C LMFDO240

INTEGER I,IC,INFO,K,LWA,M,N,NFEV,NJEV,NPROB,NREAD,NTRIES,NWRITE LMFD0250INTEGER IWA(40),MA(60),NA(60),NF(60),NJ(60),NP(60),NX(60) LMFDO260DOUBLE PRECISION FACTOR,FNORM1,FNORM2,ONE,TEN,TOL LMFD0270DOUBLE PRECISION FNM(60),FVEC(65),WA(2865),X(40) LMFDO280DOUBLE PRECISION DPMPAR,ENORM LMFD0290EXTERNAL FCN LMFD0300COMMON /REFNUM/ NPROB,NFEV,NJEV LMFD0310

C LMFD0320C LOGICAL INPUT UNIT IS ASSUMED TO BE NUMBER 5. LMFD0330C LOGICAL OUTPUT UNIT IS ASSUMED TO BE NUMBER 6. LMFD0340C LMFD035(

DATA NREAD,NWRITE /5,6/ LMFD0360C LMFD0370

DATA ONE,TEN /1.ODO,1.OD1/ LMFD0380TOL = DSQRT(DPMPAR(1)) 1L2-P0390LWA = 2865 LMFDO400IC = 0 LMFD0410

10 CONTINUE LMFDO420READ (NREAD,50) NPROB,N,M,NTRIES LMFDO430IF (NPROB .LE. 0) GO TO 30 LMFD0440FACTOR = ONE LMFD0450DO 20 K - 1, NTPIES LMFD0460

IC = IC + 1 LMFDO470CALL INITPT(N,X,NPROB,FACTOR) LMFDO480CALL SSQFCN(M,N,X,FVEC,NPROB) i.MFD0490FNORMI = ENORM(M,FVEC) LMFD0500WRITE (NWRITE,60) NPROB,N,M LMFD0510NFEV = 0 LMFD0520NJEV = 0 LMFDOS30CALL LMDIF1(FCNM,N,X,FVEC,TOL,INFO,IWA,WA,LWA) LMFD0540CALL SSQFCN(M,N,X,FVEC,NPROB) LMFDOS50FNORM2 = ENORM(M,FVEC) LMFDGS60NP(IC) NPROB LMFDO570NA(IC) = N LMFDO580MA(IC) = H LFDOS90NF(IC) " NFEV LMFDO600NJEV " NJEV/N LMFDOb10

Page 38: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

NJ(IC) = NJEVNX(IC) = INFOFNM(IC) = FNORM2WRITE (NWRITE,70)

* FNORM1,FNORM2,NFEV,NJEV,INFO,(X(I), I = 1, N)FACTOR = TEN*FACTOR

20 CONTINUEGO TO 10

30 CONTINUEWRITE (NWRITE,80) ICWRITE (NWRITE,9G)DO 40 I = 1, IC

WRITE (NWRITE,100) NP(I),NA(I),MA(I),NF(I),NJ(I),NX(I),FNM(I)40 CONTINUE

STOP50 FORMAT (415)60 FORMAT ( //// 5X, 8H PROBLEM, I5, 5X, 11H DIMENSIONS, 215, 5X //

* )

70 FORMAT (5X, 3311 INITIAL L2 NORM OF THE RESIDUALS, D15.7 // 5X,* 33H FINAL L2 NORM OF THE RESIDUALS , D15.7 // 5X,* 33H NUMBER OF FUNCTION EVALUATIONS , 110 // 5X,* 33H NUMBER OF JACOBIAN EVALUATIONS , 110 // 5X,* 154 EXIT PARAMETER, 18X, I10 // 5X,* 27H FINAL APPROXIMATE SOLUTION // (5X, 5D15.7))

80 FORMAT (12H1SUMMARY OF , 13, 16H CALLS TO LMDIF1 /)90 FORMAT (49H NPROB N M NFEV NJEV INFO FINAL L2 NORM /)100 FORMAT (315, 316, 1X, D15.7)

CC LAST CARD OF DRIVER.C

ENDSUBROUTINE FCN(M,N,X,FVEC, IFLAG)INTEGER M,N,IFLAGDOUBLE PRECISION X(N),FVEC(M)

C *****CC THE CALLING SEQUENCE GF FCN SHOULD BE IDENTICAL TO THEC CALLING SEQUENCE OF THE FUNCTION SUBROUTINE IN THE NONLINEARC LEAST-SQUARES SOLVER. FCN SHOULD ONLY CALL THE TESTINGC FUNCTION SUBROUTINE SSQFCN WITH THE APPROPRIATE VALUE OFC PROBLEM NUMBER (NPROB).CC SUBPROGRAMS CALLEDCC MINPACK-SUPPLIED ... SSQFCNCC ARGONNE NATIONAL LABORATORY. MINPACK PROJECT. MARCH 1980.C BURTON S. GARBOW, KENNETH E. HILLSTROM, JORGE J. MORECC *******

INTEGER NPROB,NFEV,NJEVCOMMON /REFNUM/ NPROB,NFEV,NJEVCALL SSQFCN(M,N,X,' ".C,NPROB)IF (IFLAG .EQ. 1) NFEV a NFEV + 1IF (IFLAG .EQ. 2) NJEV s NJEV + 1RETURN

CC LAST CARD OF INTERFACE SUBROUTINE FCN.C

LMFD1210

38

LMFD0620LMFD0630LMFD0640LMFD0650LMFDO660LMFD0670LMFD0680LMFD0690LMFD0700LMFD0710LMFD0720LMFD0730LMFDO740LMFD0750LMFD0760LMFDO770LMFDO780LMFD0790LMFDO800LIFDO810LMUD0820LMFDO830LMFDO840LMFDO850LMFDO860LMFDO870LMFDO880LMFDO890LMFDO900LMFD0910LMFD0920LMFDO930LMFD0940LMFD0950LMFDO960LMFD0970LMFD0980L1FDO990LMFD1000LMFD1010LMFD1020LMFD1030LMFD1040LMFD1050LMFD1060LMFD1070LMFD1080ULFD1090LMFD1100LM- D1110LMFD1120LMFD1130LNFD1140LMFD1150LMFD1160LMFD1170LMFD1180LMFD1190LMFD1200

I

END

Page 39: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

39

C ****CHKDO010C CHKDO020C THIS PROGRAM TESTS THE ABILITY OF CHKDER TO DETECT CHKDO030C INCONSISTENCIES BETWEEN FUNCTIONS AND THEIR FIRST DERIVATIVES. CHKDO040C FOURTEEN TEST FUNCTION VECTORS AND JACOBIANS ARE USED. ELEVEN OF CHKD005CC THE TESTS ARE FALSE(F), I.E. THERE ARE INCONSISTENCIES BETWEEN CHKDO060C THE FUNCTION VECTORS AND THE CORRESPONDING JACOBIANS. THREE OF CHKDO070C THE TESTS ARE TRUE(T), I.E. THERE ARE NO INCONSISTENCIES. THE CHKDO080C DRIVER READS IN DATA, CLsLLS CHKDER AND PRINTS OUT INFORMATION CHKDO090C REQUIRED BY AND RECEIVED FROM CHKDER. CHKDO100C CHKDO110C SUBPROGRAMS CALLED CIIKDO120C CHKDO130C MINPACK SUPPLIED ... CHKDER,ERRJAC,INITPT,VECFCN CHKDO140C CHKDO150C ARGONNE NATIONAL LABORATORY. MINPACK PROJECT. MARCH 1980. CHKDO160C BURTON S. GARBOW, KENNETH E. HILLSTROM, JORGE J. MORE CHKDO170C CHKDO180C ********CHKDO190

INTEGER I,LDFJAC,LNP,MODE,N,NPROB,NREAD,NWRITE CHKDO200INTEGER NA(14),NP(14) CHKD0210LOGICAL A(14) CHKD0220DOUBLE PRECISION CP,ONE CHKD0230DOUBLE PRECISION DIFF(10),ERR(1O),ERRMAX(14),RRMIN(14), CHKD0240

* FJAC(10,10),FVEC1(1O),FVEC2(10),X1(10),X2(10) CHKD0250C CHKD0260C LOGICAL INPUT UNIT IS ASSUMED TO BE NUMBER 5. CHKDO270C LOGICAL OUTPUL UNIT IS ASSUMED TO BE NUMBER 6. CHKDO280C CHKD0290

DATA NIEAD,NWRITE /5,6/ CHKDO300C CHKD0310

DATA A(1),A(2),A(3),A(4),A(5),A(6),A(7),A(8),A(9),A(1O),A(11), CHKD0320* A(12),A(13),A(14) CHKD0330* /.FALSE.,.FALSE.,.FALSE.,.TRUE.,.FALSE.,.FALSE.,.FALSE., CHKDO340* .TRUE.,.FALSE.,.FALSE.,.FALSE.,.FALSE.,.TRUE.,.FALSE./ CHKDO3C

DATA CP,ONE /1.23D-1,1.ODO/ CP'DO360LDFJAC = 10 CHKD0370

10 CONTINUE CHKD0380READ (NREAD,60) NPROB,N CHKD0390IF (NPROB .LE. 0) GO TO 40 CHKDO400CALL INITPT(N,X1,NPROB,ONE) CHKD0410DO 20 I = 1, N CHKD0420

X1(I) = X1(I) + CP CHKD0430CP a -CP CHKD0440

20 CONTINUE CHKD0450'RITE (NWRITE,70) NPROB,N,A(NPROB) CHKD0460MODE = 1 CHKD0470CALL CHKDER(N,N,X1,FVEC1,FJAC,LDFJAC,X2,FVEC2,MODE,ERR) CHKD0480MODE s 2 CHKD0490CALL VECFCN(N,X1,FVECI,NPROB) CHKDO500CALL ERRJAC(N,X1,FJAC,LDFJAC,NPROB) CHKD0510CALL VECFCN(N,X2,FVEC2,NPROB) CHKD520CALL CHKDER(N,N,X1,FVEC1,FJAC,LDFJAC,X2,FVEC2,MODE,ERR) CHKD0530ERRMIN(NPROB) = ERR(1) CHKDO540ERRMAX(NPROB) = F.RR(1) CHKDO550DO 30 I a 1, N CHKDO560

DIMF(I) = FVEC2(I) - FVEC1(I) CHKDO0570IF (ERRMIN(NPROB) .GT. ERR(I)) ERRMIN(NPROB) = ERR(I) CHKDO580IF (ERRMAX(NPROB) .LT. ERR(I)) ERRMAX(NPROB) - ERR(I) CHKD0590

30 CONTINUE CHKDO600NP(NPROB) a NPROB CHKDOo10

Page 40: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

40

LNP = NPROB CHKD0620NA(NPROB) = N CHKD0630WRITE (NWRITE,80) (FVEC1(I), I = 1, N) CHKD0640WRITE (NWRITE,90) (DIFF(I), I = 1, N) CHKD0650WRITE (NWRITE,100) (ERR(I), I = 1, N) CHKD0660GO TO 10 CHKD0670

40 CONTINUE CHKD0680WRITE (NWRITE,110) LNP CHKD0690WRITE (NWRITE,120) CHKD0700DO 50 I = 1, LNP CHKD0710

WRITE (NWRITE,130) NP(I),NA(I),A(I),ERRMIN(I),ERRMAX(I) CHKD072050 CONTINUE CHKD0730

STOP CHKDO 74060 FORMAT (2I5) CHKD075070 FORMAT ( /// 5X, 8H PROBLEM, 15, 5X, 15H WITH DIMENSION, 15, 2X, CHKD0760

5H IS , L1) CHKD077080 FORMAT ( // 5X, 25H FIRST FUNCTION VECTOR / (5X, 5D15.7)) CHKD078090 FORMAT ( // 5X, 27H FUNCTION DIFFERENCE VECTOR // (5X, 5D15.7)) CHKD0790100 FORMAT ( // 5X, 13H ERROR VECTOR // (5X, 5D15.7)) CHKD0800110 FORMAT (12H1SUMMARY OF , 13, 16H TESTS OF "HKDER /) CHKD0s1i120 FORMAT (46H NPROB N STATUS ERRMII ERRMAX /) CHKD08..130 FORMAT (14, 16, 6X, L1, 3X, 2D15.7) CHKD0830

C CHKD0840C LAST CARD OF DERIVATIVE CHECK TEST DRIVER. CHKD0850C CHKD0860

END CHKDO870

Page 41: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

41

A P P E N D I X C

Test Output Summaries

Page 42: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

42

Page 43: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

43

DMCHAR CONSTANTS

BETA = 16

IT = 14

IRND = 0

NCRD = 1

aACHEP = -13

NEGEP = -14

IEXP = 7

MINEXP = -65

M AXEXP = 63

EFS = 0.22204460-15

aPSNEG = 0.13877790-16

XIIN = 0.53976050-78

XMAX = 0.7237006D+76

OPHPAR CONSTANTS AND R'_LATIVE DIFFERENCES

EI'SICH = 0.22204460-15RERR(1) = 0.0

DWORF ='.53976050-78RERR(2) = 0.0

GIANT = 0.7237006D+76RERR(3) = 0.0

Page 44: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

44

SUMMARY OF 55 CALLS TO HYBRO1

NPROB N NFEV INFO FINAL

1 2 24 1 0.C1 2 9 1 0.341 2 9 1 0.02 4 107 4 0.16P2 4 114 4 0.26C2 4 125 4 0.11CJ 2 181 1 0.173 2 11 1 0.3744 4 94 1 0.39S4 4 233 1 0.334

S 4 505 0.17.5 3 27 1 0.275 3 32 1 0.22'5 3 40 1 0.16'6 6 96 1 0.336 6 171 1 0..166 9 124 '1 0.156 9 470 4 0.307 5 17 1 0.327 5 238 10.15

7 6 25 1 0.37!7 6 172 1 0.10'7 6 253 1 0.187 7 20 1 0.27

7 616 1 0.187 139 4 0.10

7 8 120 4 0.647 9 41 1 0.18r8 10 31 1 0.613 10 31 1 0.298 10 77 1 0.33

S 30 112 1 .7&'

9 10 16 1 0.259 10 19 1 0.179 10 52 1 0.41

10 1 7 1 0.2710 1 9 1 0.5510 1 16 1 0.010 10 16 1 0.5010 10 19 1 0.2110 10 39 1 0.3011 10 130 4 0.5211 10 84 1 0.5911 10 83 1 0.34

0 1 460 0.3_

13 10 21 1T6.1413 10 59 1 0.5113 10 42 1 0.9814 10 30 1 0.2014 10 45 1 0.7914 10 58 1 0.45

L L2 NORM

694470-14

80600D-32024970-33037890-32124930-G3444l50-07

939060-10417140-0831553 -9

534-75D-12508750-09234310-12167300-12

809590-12793'40-01526530-11

570520-0

294020-09246890-11425370-08094710-09063040+1440508D-01S 1?850-08956510-14546330-1416379D-13

V952 1 -1

165'D-14259570-127434'10-09755580-16511150-16

131840-14382510-12457010-14963'D-02150500-10274320-08

0429 10-0872540-105798CD-08536 12D-08264230-09

Page 45: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

45

SUMMARY OF 55 CALLS TO HYBRJ1

NPROB N NFEV NJEV INFO FINAL L2 NORM

1 2 17 3 1 0.01 2 7 1 1 0.01 2 7 1 1 0.02 4 163 10 4 0.46346650-332 4 122 8 4 0.36781470-352 4 128 6 4 0.36793060-333 2 169 6 1 0.17126670-083 2 9 1 1 0.3744062D-074 4 86 2 1 0.393552'D-104 4 202 8 1 0.37713350-09

4 38 35 1 0.3t76459D-15 3 18 3 -1 0.275343-125 3 20 4 1 0.22509960-095 3 37 8 1 0.72027770-096 6 60 6 1 0.35125520-12

6 140 6 1 0.2629950-16 9 92 4t 1Y513497D-1T

6 9 274 12 4 0.3 84320-017 5 10 1 1 0.60463390--127 5 134 24 1 0.19366490-0

-7 13 2 1TT14 10-7 6 91 13 1 0.72196360-107 6 129 21 1 0.15009950-107 7 11 1 1 0.1935160-09

270 43 0.1713097Q-08777 7 64 11 4 .779+1

7 8 56 8 4 0.64405120-017 9 23 2 1 0.4208290-098 10 11 2 1 0.61956510-148 10 11 2 1 0.2946630-148 10 27 5 1 0.3262082)-138 30 22 3 1 0.4298D-1

9 10 9 1 1 0.17258220-129 10 42 1 1 0.41741720-09

10 1 6 1 1 0.27755580-1610 1 8 1 1 0.55511150-1610 1 15 1 1 0.13877790-1610 10 6 1 1 0.50058600-1410 10 9 1 1 0.21822280-1210 10 19 2 1 0.30397060-1411 10 60 7 4 0.52963920-0211 10 34 5 1 0.59165910-10

' 10 39 2 1 .0148 11 1 1 -8 93879D-07

13 10 49 1 1 0.5081991D-0813 10 22 2 1 0.9878839-1014 10 20 1 1 0.20579000-0814 10 25 2 1 0.7953613D-0814 10 38 2 1 0.45264300-09

r

I

I

I

i

"

I

F

f

r

D

Page 46: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

46

SUMMARY OF 53 CALLS TO LDERI

NPROB N M NFEV NJEV INFO FINAL L2 NORM

1 5 10 3 21 5 50 3 22 5 10 3 22 5 50 3 23 5 10 3 23 5 50 3 24 2 2 22 164 2 2 8 54 2 2 6 45 3 3 11 85 3 3 20 155 3 3 19 166 4 4 62 596 4 4 68 646 4 4 75 687 2 2 14 87 2 2 19 127 2 2 24 178 3 15 6 58 3 15 37 368 3 15 14 139 4 11 18 169 4 11 78 70

10 3 16 400 34811 6 31 8 711 6 31 14 1311 6 31 15 1411 9 31 8 711 9 31 19 15

1 9 31 18 15

12 3 10 7 6'3 2 10 21 1214 4 20 255 2371. 4 20 53 4214 4 20 237 22115 1 8 1 115 1 8 29 2815 1 8 47 4615 8 8 39 2015 9 9 12 915 10 10 25 1216 10 10 14 1216 10 10 13 8

16 10 10

18 11 65 16 12

3 0.22360680+013 0.67032040+011 0.14638500+011 0.34826300+011 0.19097270+011 0.36917290+012 0.13947000-152 0.13877790-152 0.13977790-152 0.9935519D-162 0.10446770-182 0.18032670-284 0.45023130-334 0.18943940-344 0.4699954D-331 0.69985750+011 0.699&3750+011 0.699*5750+011 0.90635960-011 0.41747690+011 0.417476904011 0.17535340-011 0.320!,2190-01

5 0.20060490'031 0.47829590-011 0.47829590-011 0.47829590-012 0.11831150-021 0.11831150-021 0.11331150-023 4 2 7 3

10 4D-pf

1 0.11151780.021 0.29295430+031 0.29954304031 0.29295430+034 0.1&3623800011 0. 18E11 248D+011 0. 1 342480+011 0.59203240-012 0.23731031-151 0.80'47100-012 0.2831'0OO-142 0.59933520-14

1 0.20034400+00

Y

b

Page 47: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

47

SUMMARY OF 53 CALLS TO L31R1

NPROB N M NFEV NJEV INFO FINAL L2 NORM

1 5 10 3 2 2 0.22360620+011 5 50 3 2 2 0.67032040+012 5 10 3 2 1 0.14633500+012 5 50 3 2 1 0.34826300+013 5 10 3 2 1 0.19037270+013 5 50 3 2 1 0.36917270+014 2 2 21 16 4 04 2 2 8 5 2 U.13877790-154 2 2 6 4 2 0.05 3 3 11 8 2 0.99365210-165 3 3 20 15 2 0.10446780-185 3 3 19 16 2 0.23540330-286 4 4 65 60 4 0.44331520-336 4 4 67 64 4 0.79451770-355 4 4 77 73 4 0.64184650-377 2 2 14 8 1 f.6923S750+017 2 2 19 12 1 0.697'750+017 2 2 24 17 1 0.c9;^87 -9a018 3 15 6 5 1 0.90635960-018 3 15 37 35 1 0.41747690+018 3 15 14 13 1 0.417769D4019 4 11 18 16 1 0.1751 '.D-019 4 11 78 70 1 0.32052190-01

9 4 11 4 .% 377 I fl.17 5 ': _ . 1-l0

16313131313131

102020208888910101010

65

4008141581919

2125453

2371

29473912251413

16

3447131471516

1223642

2211

2846209

12128

12

5 0.'997702D+031 0.4729:d-011 0.47L:95'-011 0.47 J2S;r-012 0.1133114-021 0.118311!10-022 0.1133110D-02

1 0.111517ID+021 0.29275431+031 0.29295430031 0.2929543D+034 0.1&S522D+01

1 0.18342430+011 0.183.2430+011 0.59303240-012 0.4204300 0-151 0.80647100-012 0.41706C0-142 0.14269850-14

1 0.20034400+00

3666999

2444111

1C111111111111

131414141515151515151616

18

89

101010

11

.r

... ..

. .

0 a

I

Page 48: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

48

SUMMARY OF 53 CALLS TO LDIF1NPROB N M NFEV NJEV INFO FINAL L2 STORM

1 5 101 5 502 5 102 5 503 5 103 5 504 2 24 2 24 2 25 3 33 3 35 3 36 4 46 4 46 4 47 2 27 2 27 2 28 3 158 3 158 3 159 4 119 4 119 4 1110 3 1610 3 1611 6 3111 6 31

11 6 31

-19 311 1 31

12 3112 #-310

13 2 104 4 20

14 4 204 4 2

15 1 815 1 815 8 8

15 9 915 10 1016 10 1016 10 1016 10 10

1 8 0 30

18 11 65

334434

2287

122019

234232230141924636141877

232

491415

2323r

421

212

212

29473912257

13284

16

222222

165591516

192192193812175

35131669

1931W6

381314

16

12

197

197

284620

91258

26

12

1 0.22360680+011 0.67032040+011 0.146395004011 0.34326300+011 0.19097270+011 0.36917290+012 0.02 0.693889-1J-152 0.02 0.51656260-242 0.444779!D-172 0.1043223D-215 0.982373470-215 0.76547260-195 0.830930+D-191 0.699&8/50011 0.699387504011 0.69933750+011 0.90635960-011 0.41747690+011 0.4174769D4011 0.17535340-011 0.32052190 -015 0.30708940-03 0.93779450+014 0.62375990+051 0.510466291-01 0.472'9590-011 0.47329590-01

2 0.11831150-02 0.*2173-1 D-0

2 .217.;20 D-02 0.21732640-042 0.14220500-151 0.111517:D+025 0.292 ?5630+0)5 0.29543 +

1 0.13Zi2430).011 0.1'42480+011 0.59303240-012 0.19390120-151 0.8064710D-011 0.100000004012 0.14613910-14

,.1.10000 00401

1 0.20034400+00

mmmmmlw-...

. ...

.....

...

...

r....

r

Page 49: and Jorge J. More'digital.library.unt.edu/ark:/67531/metadc...I )Q~2 IMPLEMENTATION GUIDE FOR MINPACK-1 by Burton S. Garbow, Kenneth E. Hillstrom, and Jorge J. More' MASTER ARGONNE

SUMMARY OF 14 TESTS OF CHKDER

WPROB N STATUS ERRMIN

0.36441650-010.56784320-010.00.98018550+000.00.00.00.1000000 +

0.00.00.20279080-010.83444290+000.0

0.10000000+010.10000000+010.00.10000000+010. 10000000+010.1062543D+000.0

2.0 8D+0*

0.57618770-010.00.20279170-010.10000000+010.0

49

ERRMAX

123.1

6

7

1011121314

2424397

10101010101010

FFFTFFFTFFFF

TF

mmm