Actual source code: tron.h

  1: #ifndef __TAO_TRON_H

  4: #include <petsc/private/taoimpl.h>
  5: #include <petscis.h>

  7: typedef struct {

  9:   /* Parameters */
 10:   PetscReal pg_ftol;
 11:   PetscReal actred;
 12:   PetscReal f_new;

 14:   PetscReal eta1,eta2,eta3,eta4;
 15:   PetscReal sigma1,sigma2,sigma3;

 17:   PetscInt maxgpits;

 19:   /* Problem variables, vectors and index sets */
 20:   PetscReal stepsize;
 21:   PetscReal pgstepsize;

 23:   /* Problem statistics */

 25:   PetscInt n;   /* Dimension of the Problem */
 26:   PetscReal delta;  /* Trust region size */
 27:   PetscReal gnorm;
 28:   PetscReal f;

 30:   PetscInt total_gp_its;
 31:   PetscInt gp_iterates;

 33:   Vec X_New;
 34:   Vec G_New;
 35:   Vec Work;

 37:   /* Subvectors and submatrices */
 38:   Vec DXFree;
 39:   Vec R;
 40:   Vec rmask;
 41:   Vec diag;
 42:   Mat H_sub;
 43:   Mat Hpre_sub;

 45:   IS Free_Local;  /* Indices of local variables equal to lower bound */
 46:   VecScatter scatter;

 48:   PetscInt n_free;       /* Number of free variables */
 49:   PetscInt n_free_last;

 51: } TAO_TRON;

 53: #endif