xref: /petsc/src/tao/quadratic/impls/bqpip/bqpipimpl.h (revision 9dd11ecf0918283bb567d8b33a92f53ac4ea7840)
1 /*
2   Private data structure used for bqpip method
3 */
4 
5 #pragma once
6 
7 #include <petsc/private/taoimpl.h>
8 
9 typedef struct {
10   /* Parameters */
11   PetscInt predcorr;
12 
13   /* Problem variables, vectors and index sets */
14   PetscInt n; /* Dimension of the Problem */
15   PetscInt m; /* Number of constraints */
16 
17   /* Problem statistics */
18   PetscReal dinfeas;
19   PetscReal pinfeas;
20   PetscReal pobj;
21   PetscReal dobj;
22   PetscReal gap;
23   PetscReal rgap;
24   PetscReal mu;
25   PetscReal pathnorm;
26   PetscReal psteplength;
27   PetscReal dsteplength;
28   PetscReal rnorm;
29 
30   /* Variable Vectors */
31   Vec G;
32   Vec DG;
33   Vec T;
34   Vec DT;
35   Vec Z;
36   Vec DZ;
37   Vec S;
38   Vec DS;
39   Vec GZwork;
40   Vec TSwork;
41   Vec XL, XU;
42 
43   /* Work Vectors */
44   Vec R3;
45   Vec R5;
46   Vec HDiag;
47   Vec Work;
48 
49   Vec DiagAxpy;
50   Vec RHS;
51   Vec RHS2;
52 
53   /* Data */
54   Vec       C;
55   PetscReal d;
56 } TAO_BQPIP;
57