Actual source code: taopetsc.h
1: #ifndef TAOPETSCHEADER_H
2: #define TAOPETSCHEADER_H
4: #include "petscksp.h"
6: // #include "taoapp.h"
7: typedef struct _p_TAOAPPLICATION* TAO_APPLICATION;
8: typedef struct _p_TAO_SOLVER* TAO_SOLVER;
11: /* Actually wrappers around the TAO_SOLVER object so users can get access to PETSC structures */
25: /* Interface between TAO_SOLVER and TAO_APPLICATION */
32: /* May not be supported in future releases */
33: #define TaoPetscApplicationCreate(a,b) TaoApplicationCreate(a,b)
34: #define TaoSolvePetscApplication(a) TaoSolve(a)
35: #define TaoSetPetscInitialVector(a,b) TaoAppSetInitialSolutionVec(a,b)
36: #define TaoSetPetscVariableBounds(a,b,c) TaoAppSetVariableBounds(a,b,c)
37: #define TAO_COMPLEMENTARITY 0
48: class TaoVecPetsc;
49: class TaoMatPetsc;
50: class TaoIndexSetPetsc;
51: class TaoLinearSolverPetsc;
52: #include "taovec.h"
53: #include "taomat.h"
54: #include "taois.h"
55: #include "taolinearsolver.h"
70: typedef enum { /* Method used to identify variables */
71: TaoRedistributeSubset=0,
72: TaoNoRedistributeSubset=2,
73: TaoSingleProcessor=5,
74: TaoMaskFullSpace=3,
75: TaoMatrixFree=8} TaoPetscISType;
94: // #include "petscdaapp.h"
96: #endif