xref: /petsc/src/snes/impls/tr/trimpl.h (revision 519f805a543c2a7f195bcba21173bb2cdfadb956)
1acbee50cSBarry Smith 
2acbee50cSBarry Smith /*
3acbee50cSBarry Smith    Context for a Newton trust region method for solving a system
4acbee50cSBarry Smith    of nonlinear equations
5acbee50cSBarry Smith  */
6acbee50cSBarry Smith 
7*519f805aSKarl Rupp #if !defined(__SNES_TR_H)
8acbee50cSBarry Smith #define __SNES_TR_H
9b45d2f2cSJed Brown #include <petsc-private/snesimpl.h>
10acbee50cSBarry Smith 
11acbee50cSBarry Smith typedef struct {
12acbee50cSBarry Smith   /* ---- Parameters used by the trust region method  ---- */
13acbee50cSBarry Smith   PetscReal  mu;            /* used to compute trust region parameter */
14acbee50cSBarry Smith   PetscReal  eta;           /* used to compute trust region parameter */
15acbee50cSBarry Smith   PetscReal  delta;         /* trust region parameter */
16acbee50cSBarry Smith   PetscReal  delta0;        /* used to initialize trust region parameter */
17acbee50cSBarry Smith   PetscReal  delta1;        /* used to compute trust region parameter */
18acbee50cSBarry Smith   PetscReal  delta2;        /* used to compute trust region parameter */
19acbee50cSBarry Smith   PetscReal  delta3;        /* used to compute trust region parameter */
20acbee50cSBarry Smith   PetscReal  sigma;         /* used to detemine termination */
21ace3abfcSBarry Smith   PetscBool  itflag;        /* flag for convergence testing */
22acbee50cSBarry Smith   PetscReal  rnorm0,ttol;   /* used for KSP convergence test */
2304d7464bSBarry Smith } SNES_NEWTONTR;
24acbee50cSBarry Smith 
25acbee50cSBarry Smith #endif
26