Actual source code: lmvm.h

  1: /*
  2:  Context for limited memory variable metric method for unconstrained
  3:  optimization.
  4: */

  6: #pragma once
  7: #include <petsc/private/taoimpl.h>

  9: typedef struct {
 10:   Mat M;

 12:   Vec X;
 13:   Vec G;
 14:   Vec D;
 15:   Vec W;

 17:   Vec Xold;
 18:   Vec Gold;

 20:   PetscInt bfgs;
 21:   PetscInt grad;
 22:   Mat      H0;

 24:   PetscBool recycle;
 25: } TAO_LMVM;