xref: /petsc/src/tao/unconstrained/impls/lmvm/lmvm.h (revision 9dd11ecf0918283bb567d8b33a92f53ac4ea7840)
1a7e14dcfSSatish Balay /*
2a7e14dcfSSatish Balay  Context for limited memory variable metric method for unconstrained
3a7e14dcfSSatish Balay  optimization.
4a7e14dcfSSatish Balay */
5a7e14dcfSSatish Balay 
6*a4963045SJacob Faibussowitsch #pragma once
7af0996ceSBarry Smith #include <petsc/private/taoimpl.h>
8a7e14dcfSSatish Balay 
9a7e14dcfSSatish Balay typedef struct {
10d5ae2380SAlp Dener   Mat M;
11a7e14dcfSSatish Balay 
12a7e14dcfSSatish Balay   Vec X;
13a7e14dcfSSatish Balay   Vec G;
14a7e14dcfSSatish Balay   Vec D;
15a7e14dcfSSatish Balay   Vec W;
16a7e14dcfSSatish Balay 
17a7e14dcfSSatish Balay   Vec Xold;
18a7e14dcfSSatish Balay   Vec Gold;
19a7e14dcfSSatish Balay 
20a7e14dcfSSatish Balay   PetscInt bfgs;
21a7e14dcfSSatish Balay   PetscInt grad;
22a9603a14SPatrick Farrell   Mat      H0;
23cd929ea3SAlp Dener 
24d5ae2380SAlp Dener   PetscBool recycle;
25a7e14dcfSSatish Balay } TAO_LMVM;
26