1 #ifndef __TAO_TRON_H 2 #define __TAO_TRON_H 3 4 #include <petsc/private/taoimpl.h> 5 #include <petscis.h> 6 7 typedef struct { 8 /* Parameters */ 9 PetscReal pg_ftol; 10 PetscReal actred; 11 PetscReal f_new; 12 13 PetscReal eta1, eta2, eta3, eta4; 14 PetscReal sigma1, sigma2, sigma3; 15 16 PetscInt maxgpits; 17 18 /* Problem variables, vectors and index sets */ 19 PetscReal stepsize; 20 PetscReal pgstepsize; 21 22 /* Problem statistics */ 23 24 PetscInt n; /* Dimension of the Problem */ 25 PetscReal delta; /* Trust region size */ 26 PetscReal gnorm; 27 PetscReal f; 28 29 PetscInt total_gp_its; 30 PetscInt gp_iterates; 31 32 Vec X_New; 33 Vec G_New; 34 Vec Work; 35 36 /* Subvectors and submatrices */ 37 Vec DXFree; 38 Vec R; 39 Vec rmask; 40 Vec diag; 41 Mat H_sub; 42 Mat Hpre_sub; 43 44 IS Free_Local; /* Indices of local variables equal to lower bound */ 45 VecScatter scatter; 46 47 PetscInt n_free; /* Number of free variables */ 48 PetscInt n_free_last; 49 50 } TAO_TRON; 51 52 #endif 53