135bd34faSBarry Smith /* 2e1222f9fSBarry Smith Private data structure for ILU/ICC/LU/Cholesky preconditioners. 335bd34faSBarry Smith */ 435bd34faSBarry Smith #if !defined(__FACTOR_H) 535bd34faSBarry Smith #define __FACTOR_H 635bd34faSBarry Smith 735bd34faSBarry Smith #include "private/pcimpl.h" /*I "petscpc.h" I*/ 835bd34faSBarry Smith 935bd34faSBarry Smith typedef struct { 1035bd34faSBarry Smith Mat fact; /* factored matrix */ 1135bd34faSBarry Smith MatFactorInfo info; 1235bd34faSBarry Smith MatOrderingType ordering; /* matrix reordering */ 1335bd34faSBarry Smith MatSolverPackage solvertype; 1435bd34faSBarry Smith } PC_Factor; 1535bd34faSBarry Smith 16*85317021SBarry Smith EXTERN_C_BEGIN 17*85317021SBarry Smith extern PetscErrorCode PETSCKSP_DLLEXPORT PCFactorSetZeroPivot_Factor(PC,PetscReal); 18*85317021SBarry Smith extern PetscErrorCode PETSCKSP_DLLEXPORT PCFactorSetShiftNonzero_Factor(PC,PetscReal); 19*85317021SBarry Smith extern PetscErrorCode PETSCKSP_DLLEXPORT PCFactorSetShiftPd_Factor(PC,PetscTruth); 20*85317021SBarry Smith extern PetscErrorCode PETSCKSP_DLLEXPORT PCFactorSetUseDropTolerance_Factor(PC,PetscReal,PetscReal,PetscInt); 21*85317021SBarry Smith extern PetscErrorCode PETSCKSP_DLLEXPORT PCFactorSetFill_Factor(PC,PetscReal); 22*85317021SBarry Smith extern PetscErrorCode PETSCKSP_DLLEXPORT PCFactorSetMatOrderingType_Factor(PC,const MatOrderingType); 23*85317021SBarry Smith extern PetscErrorCode PETSCKSP_DLLEXPORT PCFactorSetLevels_Factor(PC,PetscInt); 24*85317021SBarry Smith extern PetscErrorCode PETSCKSP_DLLEXPORT PCFactorSetAllowDiagonalFill_Factor(PC); 25*85317021SBarry Smith extern PetscErrorCode PETSCKSP_DLLEXPORT PCFactorSetPivotInBlocks_Factor(PC,PetscTruth); 26*85317021SBarry Smith extern PetscErrorCode PETSCKSP_DLLEXPORT PCFactorSetShiftInBlocks_Factor(PC,PetscReal); 27*85317021SBarry Smith extern PetscErrorCode PETSCKSP_DLLEXPORT PCFactorGetMatrix_Factor(PC,Mat*); 28*85317021SBarry Smith extern PetscErrorCode PETSCKSP_DLLEXPORT PCFactorSetMatSolverPackage_Factor(PC,const MatSolverPackage); 29*85317021SBarry Smith extern PetscErrorCode PETSCKSP_DLLEXPORT PCFactorSetPivoting_Factor(PC,PetscReal); 30*85317021SBarry Smith EXTERN_C_END 31*85317021SBarry Smith 3235bd34faSBarry Smith #endif 33