Actual source code: umls.h
1: /*$Id: umls.h,v 1.8 1999/11/23 18:10:43 bsmith Exp $*/
2: /*
3: Context for a Newton line search method (unconstrained minimization)
4: */
6: #ifndef __SNES_UMLS_H
8: #include "src/snes/snesimpl.h"
10: typedef struct {
12: /* --------------- Parameters used by line search method ----------------- */
13: Scalar gamma; /* damping parameter */
14: double maxstep; /* maximum step size */
15: double gamma_factor; /* damping parameter */
16: double rtol; /* relative tol for acceptable step (rtol>0) */
17: double ftol; /* tol for sufficient decrease condition (ftol>0) */
18: double gtol; /* tol for curvature condition (gtol>0)*/
19: double stepmin; /* lower bound for step */
20: double stepmax; /* upper bound for step */
21: double step; /* step size */
22: int max_kspiter_factor; /* computes max KSP iterations */
23: int maxfev; /* maximum funct evals per line search call */
24: int nfev; /* number of funct evals per line search call */
25: int bracket;
26: int infoc;
28: /* ------------------------- Line search routine ------------------------- */
29: int (*LineSearch)(SNES,Vec,Vec,Vec,Vec,double*,double*,double*,int*);
30: int line; /* line search termination code (set line=1 on success) */
31: } SNES_UM_LS;
33: #endif