*DECK SOSEQS SUBROUTINE SOSEQS (FNC, N, S, RTOLX, ATOLX, TOLF, IFLAG, MXIT, + NCJS, NSRRC, NSRI, IPRINT, FMAX, C, NC, B, P, TEMP, X, Y, FAC, + IS) C***BEGIN PROLOGUE SOSEQS C***SUBSIDIARY C***PURPOSE Subsidiary to SOS C***LIBRARY SLATEC C***TYPE SINGLE PRECISION (SOSEQS-S, DSOSEQ-D) C***AUTHOR (UNKNOWN) C***DESCRIPTION C C SOSEQS solves a system of N simultaneous nonlinear equations. C See the comments in the interfacing routine SOS for a more C detailed description of some of the items in the calling list. C C ******************************************************************** C C -INPUT- C FNC -Function subprogram which evaluates the equations C N -Number of equations C S -Solution vector of initial guesses C RTOLX-Relative error tolerance on solution components C ATOLX-Absolute error tolerance on solution components C TOLF-Residual error tolerance C MXIT-Maximum number of allowable iterations. C NCJS-Maximum number of consecutive iterative steps to perform C using the same triangular Jacobian matrix approximation. C NSRRC-Number of consecutive iterative steps for which the C limiting precision accuracy test must be satisfied C before the routine exits with IFLAG=4. C NSRI-Number of consecutive iterative steps for which the C diverging condition test must be satisfied before C the routine exits with IFLAG=7. C IPRINT-Internal printing parameter. You must set IPRINT=-1 if you C want the intermediate solution iterates and a residual norm C to be printed. C C -Internal work array, dimensioned at least N*(N+1)/2. C NC -Dimension of C array. NC .GE. N*(N+1)/2. C B -Internal work array, dimensioned N. C P -Internal work array, dimensioned N. C TEMP-Internal work array, dimensioned N. C X -Internal work array, dimensioned N. C Y -Internal work array, dimensioned N. C FAC -Internal work array, dimensioned N. C IS -Internal work array, dimensioned N. C C -OUTPUT- C S -Solution vector C IFLAG-Status indicator flag C MXIT-The actual number of iterations performed C FMAX-Residual norm C C -Upper unit triangular matrix which approximates the C forward triangularization of the full Jacobian matrix. C stored in a vector with dimension at least N*(N+1)/2. C B -Contains the residuals (function values) divided C by the corresponding components of the P vector C P -Array used to store the partial derivatives. After C each iteration P(K) contains the maximal derivative C occurring in the K-th reduced equation. C TEMP-Array used to store the previous solution iterate. C X -Solution vector. Contains the values achieved on the C last iteration loop upon exit from SOS. C Y -Array containing the solution increments. C FAC -Array containing factors used in computing numerical C derivatives. C IS -Records the pivotal information (column interchanges) C C ********************************************************************** C *** Three machine dependent parameters appear in this subroutine. C C *** The smallest positive magnitude, zero, is defined by the function C *** routine R1MACH(1). C C *** URO, The computer unit roundoff value, is defined by R1MACH(3) for C *** machines that round or R1MACH(4) for machines that truncate. C *** URO is the smallest positive number such that 1.+URO .GT. 1. C C *** The output tape unit number, LOUN, is defined by the function C *** I1MACH(2). C ********************************************************************** C C***SEE ALSO SOS C***ROUTINES CALLED I1MACH, R1MACH, SOSSOL C***REVISION HISTORY (YYMMDD) C 801001 DATE WRITTEN C 890531 Changed all specific intrinsics to generic. (WRB) C 890831 Modified array declarations. (WRB) C 891214 Prologue converted to Version 4.0 format. (BAB) C 900328 Added TYPE section. (WRB) C***END PROLOGUE SOSEQS