1: ! 2: ! 3: ! Include file for Fortran use of the PC (preconditioner) package in PETSc 4: ! 5: #if !defined (__PETSCPCDEF_H) 8: #include finclude/petscmatdef.h 9: #include finclude/petscdadef.h 11: #if !defined(PETSC_USE_FORTRAN_TYPES) 12: #define PC PetscFortranAddr 13: #endif 14: #define PCSide PetscEnum 15: #define PCASMType PetscEnum 16: #define PCCompositeType PetscEnum 17: #define PCRichardsonConvergedReason PetscEnum 18: #define PCType character*(80) 19: ! 20: ! Various preconditioners 21: ! 22: #define PCNONE 'none' 23: #define PCJACOBI 'jacobi' 24: #define PCSOR 'sor' 25: #define PCLU 'lu' 26: #define PCSHELL 'shell' 27: #define PCBJACOBI 'bjacobi' 28: #define PCMG 'mg' 29: #define PCEISENSTAT 'eisenstat' 30: #define PCILU 'ilu' 31: #define PCICC 'icc' 32: #define PCASM 'asm' 33: #define PCKSP 'ksp' 34: #define PCCOMPOSITE 'composite' 35: #define PCREDUNDANT 'redundant' 36: #define PCSPAI 'spai' 37: #define PCMILU 'milu' 38: #define PCNN 'nn' 39: #define PCCHOLESKY 'cholesky' 40: #define PCSAMG 'samg' 41: #define PCPBJACOBI 'pbjacobi' 42: #define PCMAT 'mat' 43: #define PCHYPRE 'hypre' 44: #define PCFIELDSPLIT 'fieldsplit' 45: #define PCML 'ml' 46: #define PCPYTHON 'python' 47: #endif