Actual source code: tron.h

  1: #ifndef __TAO_TRON_H

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

  7: typedef struct {
  8:   /* Parameters */
  9:   PetscReal pg_ftol;
 10:   PetscReal actred;
 11:   PetscReal f_new;

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

 16:   PetscInt maxgpits;

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

 22:   /* Problem statistics */

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

 29:   PetscInt total_gp_its;
 30:   PetscInt gp_iterates;

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

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

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

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

 50: } TAO_TRON;

 52: #endif