Actual source code: stcgimpl.h

      1: /*
      2:    Context for using preconditioned conjugate gradient method to minimized a
      3:    quadratic function subject to a trust region constraint.  If the matrix
      4:    is indefinite, a direction of negative curvature may be encountered.  If
      5:    a direction of negative curvature is found, then we follow it to the
      6:    boundary of the trust region.

      8:    This method is described in:
      9:      T. Steihaug, "The Conjugate Gradient Method and Trust Regions in Large
     10:        Scale Optimization", SIAM Journal on Numerical Analysis, 20,
     11:        pages 626-637, 1983.
     12: */

     14: #pragma once

     16: #include <petsc/private/kspimpl.h>

     18: typedef struct {
     19:   PetscReal radius;
     20:   PetscReal norm_d;
     21:   PetscReal o_fcn;
     22:   PetscInt  dtype;
     23: } KSPCG_STCG;