cgrdh

NAME
SYNOPSIS
DESCRIPTION
ARGUMENTS
AUTHORS
SEE ALSO

NAME

CGRDH − CUTEr tool to evaluate constraints gradients, Hessian of Lagrangian function and gradient of objective/Lagrangian function.

By convention, the signs of the Lagrange multipliers V are set so the Lagrangian function can be written as L(X, V) = f(X) + < c(X), V >.

SYNOPSIS

CALL CGRDH( N, M, X, GRLAGF, LV, V, G, JTRANS, LCJAC1, LCJAC2, CJAC, LH1, H )

DESCRIPTION

The CGRDH subroutine evaluates the gradients of the general constraints and of either the objective function or the Lagrangian corresponding to the problem decoded into OUTSDIF.d at the point X, in the constrained programming case. It also evaluates the Hessian matrix of the Lagrangian function at X. The gradients and matrices are stored in a dense format.

ARGUMENTS

The arguments of CGRDH are as follows

N [in] - integer

the number of variables for the problem,

M [in] - integer

the total number of general constraints,

X [in] - real/double precision

an array which gives the current estimate of the solution of the problem,

GRLAGF [in] - logical

a logical variable which should be set .TRUE. if the gradient of the Lagrangian function is required and .FALSE. if the gradient of the objective function is sought,

LV [in] - integer

the actual declared dimension of V,

V [in] - real/double precision

an array which should give the Lagrange multipliers whenever GRLAGF is set .TRUE. but need not otherwise be set,

G [out] - real/double precision

an array which gives the value of the gradient of the objective function evaluated at X (GRLAGF = .FALSE.) or of the Lagrangian function evaluated at X and V (GRLAGF = .TRUE.),

JTRANS [in] - logical

a logical variable which should be set to .TRUE. if the transpose of the constraint Jacobian is required and to .FALSE. if the Jacobian itself is wanted. The Jacobian matrix is the matrix whose i-th row is the gradient of the i-th constraint function,

LCJAC1 [in] - integer

the actual declared size of the leading dimension of CJAC (with LCJAC1 no smaller than N if JTRANS is .TRUE. or M if JTRANS is .FALSE.),

LCJAC2 [in] - integer

the actual declared size of the second dimension of CJAC (with LCJAC2 no smaller than M if JTRANS is .TRUE. or N if JTRANS is .FALSE.),

CJAC [out] - real/double precision

a two-dimensional array of dimension (LCJAC1, LCJAC2) which gives the value of the Jacobian matrix of the constraint functions, or its transpose, evaluated at X. If JTRANS is .TRUE., the i,j-th component of the array will contain the i-th derivative of the j-th constraint function. Otherwise, if JTRANS is .FALSE., the i,j-th component of the array will contain the j-th derivative of the i-th constraint function.

LH1 [in] - integer

the actual declared size of the leading dimension of H (with LH1 no smaller than N),

H [out] - real/double precision

a two-dimensional array which gives the value of the Hessian matrix of the Lagrangian function evaluated at X and V.

AUTHORS

I. Bongartz, A.R. Conn, N.I.M. Gould, D. Orban and Ph.L. Toint

SEE ALSO

CUTEr (and SifDec): A Constrained and Unconstrained Testing Environment, revisited, N.I.M. Gould, D. Orban and Ph.L. Toint, ACM TOMS, 29:4, pp.373-394, 2003.

CUTE: Constrained and Unconstrained Testing Environment, I. Bongartz, A.R. Conn, N.I.M. Gould and Ph.L. Toint, TOMS, 21:1, pp.123-160, 1995.

ugrdh(3M).