Actual source code: factor.h
petsc-3.7.3 2016-08-01
1: /*
2: Private data structure for ILU/ICC/LU/Cholesky preconditioners.
3: */
7: #include <petsc/private/pcimpl.h>
8: #include <petsc/private/matimpl.h>
10: typedef struct {
11: Mat fact; /* factored matrix */
12: MatFactorInfo info;
13: MatOrderingType ordering; /* matrix reordering */
14: MatSolverPackage solvertype;
15: MatFactorType factortype;
16: } PC_Factor;
18: PETSC_INTERN PetscErrorCode PCFactorGetMatrix_Factor(PC,Mat*);
20: PETSC_INTERN PetscErrorCode PCFactorSetZeroPivot_Factor(PC,PetscReal);
21: PETSC_INTERN PetscErrorCode PCFactorSetShiftType_Factor(PC,MatFactorShiftType);
22: PETSC_INTERN PetscErrorCode PCFactorSetShiftAmount_Factor(PC,PetscReal);
23: PETSC_INTERN PetscErrorCode PCFactorSetDropTolerance_Factor(PC,PetscReal,PetscReal,PetscInt);
24: PETSC_INTERN PetscErrorCode PCFactorSetFill_Factor(PC,PetscReal);
25: PETSC_INTERN PetscErrorCode PCFactorSetMatOrderingType_Factor(PC,MatOrderingType);
26: PETSC_INTERN PetscErrorCode PCFactorGetLevels_Factor(PC,PetscInt*);
27: PETSC_INTERN PetscErrorCode PCFactorSetLevels_Factor(PC,PetscInt);
28: PETSC_INTERN PetscErrorCode PCFactorSetAllowDiagonalFill_Factor(PC,PetscBool);
29: PETSC_INTERN PetscErrorCode PCFactorGetAllowDiagonalFill_Factor(PC,PetscBool*);
30: PETSC_INTERN PetscErrorCode PCFactorSetPivotInBlocks_Factor(PC,PetscBool);
31: PETSC_INTERN PetscErrorCode PCFactorSetMatSolverPackage_Factor(PC,const MatSolverPackage);
32: PETSC_INTERN PetscErrorCode PCFactorSetUpMatSolverPackage_Factor(PC);
33: PETSC_INTERN PetscErrorCode PCFactorGetMatSolverPackage_Factor(PC,const MatSolverPackage*);
34: PETSC_INTERN PetscErrorCode PCFactorSetColumnPivot_Factor(PC,PetscReal);
35: PETSC_INTERN PetscErrorCode PCSetFromOptions_Factor(PetscOptionItems *PetscOptionsObject,PC);
36: PETSC_INTERN PetscErrorCode PCView_Factor(PC,PetscViewer);
38: #endif