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 */




 24: /* Interface between TAO_SOLVER and TAO_APPLICATION */



 31: /* May not be supported in future releases */
 32: #define TaoPetscApplicationCreate(a,b)     TaoApplicationCreate(a,b)
 33: #define TaoSolvePetscApplication(a)        TaoSolve(a)
 34: #define TaoSetPetscInitialVector(a,b)      TaoAppSetInitialSolutionVec(a,b)
 35: #define TaoSetPetscVariableBounds(a,b,c)   TaoAppSetVariableBounds(a,b,c)
 36: #define TAO_COMPLEMENTARITY 0



 49: class TaoVecPetsc;
 50: class TaoMatPetsc;
 51: class TaoIndexSetPetsc;
 52: class TaoLinearSolverPetsc;
 53:  #include taovec.h
 54:  #include taomat.h
 55:  #include taois.h
 56:  #include taolinearsolver.h







 71: typedef enum { /* Method used to identify variables */
 72:   TaoRedistributeSubset=0,
 73:   TaoNoRedistributeSubset=2,
 74:   TaoSingleProcessor=5,
 75:   TaoMaskFullSpace=3} TaoPetscISType;




 94: // #include "petscdaapp.h"

 96: #endif