Actual source code: blmvm.h

  1: /*
  2:   Private data structure used for blmvm method.
  3: */

  5: #pragma once

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

  9: /*
 10:  Context for limited memory variable metric method for bound constrained
 11:  optimization.
 12: */
 13: typedef struct {
 14:   Mat M;

 16:   Vec unprojected_gradient;
 17:   Vec Xold;
 18:   Vec Gold;

 20:   PetscInt n_free;
 21:   PetscInt n_bind;

 23:   PetscInt grad;
 24:   PetscInt reset;
 25:   Mat      H0;

 27:   PetscBool recycle;
 28: } TAO_BLMVM;