PDAS home > Computer Methods > Procedures
Public Domain Aeronautical Software (PDAS)

The original procedure names and lists of dummy arguments have been modified to be more in line with modern Fortran style. Click on a procedure name to see a list of the dummy arguments.

namedescription
Decomp LU-decomposition of a square matrix
Solve Solves a system of linear equations. Use after Decomp.
FMMspline Fit a cubic spline to data. FMM end conditions.
NaturalSpline Same as FMMspline, but with zero second derivatives at endpoints
Seval Evaluate a cubic spline at a given point.
Seval3 Evaluate a cubic spline at a given point. Returns value of spline plus 1st,2nd,3rd derivatives.
Quanc8 Numerical integration of a function.
Rkf45 Solves a system of ordinary differential equations as an initial value problem.
Zeroin Find a zero of a function.
BrentZero Same as Zeroin, but with additional dummy arguments
Fmin Find the minimum of a function.
BrentMin Same as Fmin, but with additional dummy arguments.
SVD Singular Value Decomposition of a matrix

### Description of dummy arguments

var intent dim def CALL Decomp(a, ipvt, errCode, cond) a in out : , : matrix to be decomposed ipvt out : index of pivot rows errCode out - error code cond out - condition number
var intent dim def CALL Solve(a, b, ipvt) a in : , : decomposed matrix (from Decomp) b in out : right-hand side; replaced with solution ipvt in : record of row interchanges (from Decomp)
var intent dim def CALL FMMspline(x, y, b, c, d) x in : abscissas of knots y in : ordinates of knots b out : linear coefficients c out : quadratic coefficients d out : cubic coefficients
var intent dim def CALL NaturalSpline(x, y, b, c, d) x in : abscissas of knots y in : ordinates of knots b out : linear coefficients c out : quadratic coefficients d out : cubic coefficients
var intent dim def Seval(u, x, y, b, c, d) u in - abscissa where spline is to be evaluated x in : abscissas of knots y in : ordinates of knots b in : linear coefficients c in : quadratic coefficients d in : cubic coefficients
var intent dim def CALL Seval3(u, x,y, b, c, d, f, fp, fpp, fppp) u in - abscissa where spline is to be evaluated x in : abscissas of knots y in : ordinates of knots b in : linear coefficients c in : quadratic coefficients d in : cubic coefficients f out - value of spline at u fp out - value of 1st derivative of spline at u fpp out - value of 2nd derivative of spline at u fppp out - value of 3rd derivative of spline at u
var intent dim def CALL Quanc8(F, a, b, abserr, relerr, result, errest, nofun, flag) F - - function to be integrated a in - lower limit of integration b in - upper limit of integration abserr in - absolute error tolerance relerr in - relative error tolerance result out - approximate value of the integral errest out - estimate of actual error nofun out - number of function evaluations flag out - reliability indicator
var intent dim def CALL Rkf45 (F, y, t, tout, relerr, abserr, iflag, work, iwork) F - - subroutine that computes derivatives y in out : solution vector at t t in out - independent variable tout in out - output point at which solution is desired relerr in out - relative error tolerance abserr in - absolute error tolerance iflag in out - indicator for status of work work in out : work arrak iwork in out : work array
var intent dim def Zeroin(ax, bx, F, tol) ax in - lower endpoint of interval bx in - upper endpoint of interval F in - function to be investigated tol in - desired interval of uncertainity
var intent dim def CALL BrentZero(ax, bx, F, tol, maxIter, neval, xZero, fZero) ax in - left-hand limit on x-coor bx in - right-hand limit on x-coor F in - the function to be investigated tol in - user-specified tolerance maxIter in - user specified limit on the number of iterations neval out - number of function evaluations required to find the zero xZero out - x-coor of the zero fZero out - last evaluation of the function. Should be very small.)
var intent dim def Fmin(ax, bx, F, tol) ax in - lower endpoint of initial interval bx in - upper endpoint of initial interval F in - function to be investigated tol in - desired interval of uncertainity
var intent dim def CALL BrentMin(ax, bx, F, tol, maxIter, neval, errCode, xZero, fZero) ax in - lower endpoint of initial interval bx in - upper endpoint of initial interval F in - function to be investigated tol in - desired interval of uncertainity maxIter in - maximum number of iterations allowed neval in - number of function evaluations errCode in - errorCode; =0 OK; =1 too many iter xZero in - x-coor of the minimum point fZero in - f(xZero)
var intent dim def CALL SVD(a, w, matu, u, matv, v, ierr) a in : , : matrix to be decomposed. On output, a is unaltered (unless overwritten by u or v). w out : w contains the n (non-negative) singular values of a (the diagonal elements of s). They are unordered. If an error exit is made, the singular values should be correct for indices ierr+1,ierr+2,...,n. matu in - matu should be set to .TRUE. if the u matrix in the decomposition is desired, and to .FALSE. otherwise. u out : , : u contains the matrix u of orthogonal column vectors of the decomposition if matu has been set to .TRUE. Otherwise, u is used as a temporary array. u may coincide with a. If an error exit is made, the columns of u corresponding to indices of correct singular values should be correct. matv in - matv should be set to .TRUE. if the v matrix in the decomposition is desired, and to .FALSE. otherwise. v out : , : v contains the matrix v (orthogonal) of the decomposition if matv has been set to .TRUE. Otherwise v is not referenced. v may also coincide with a if u is not needed. If an error exit is made, the columns of v corresponding to indices of correct singular values should be correct. ierr out - zero for normal return, k if the k-th singular value has not been determined after 30 iterations.

PDAS home > Computer Methods > Procedures
Public Domain Aeronautical Software (PDAS)