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