Actual source code: petscpc.h
petsc-3.5.4 2015-05-23
1: !
2: !
3: ! Include file for Fortran use of the PC (preconditioner) package in PETSc
4: !
5: #include finclude/petscpcdef.h
6: !
7: ! PCSide
8: !
9: PetscEnum PC_LEFT
10: PetscEnum PC_RIGHT
11: PetscEnum PC_SYMMETRIC
12: parameter (PC_LEFT=0,PC_RIGHT=1,PC_SYMMETRIC=2)
14: !
15: ! PCASMType
16: !
17: PetscEnum PC_ASM_BASIC
18: PetscEnum PC_ASM_RESTRICT
19: PetscEnum PC_ASM_INTERPOLATE
20: PetscEnum PC_ASM_NONE
22: parameter (PC_ASM_BASIC = 3,PC_ASM_RESTRICT = 1)
23: parameter (PC_ASM_INTERPOLATE = 2,PC_ASM_NONE = 0)
24: !
25: ! PCCompositeType
26: !
27: PetscEnum PC_COMPOSITE_ADDITIVE
28: PetscEnum PC_COMPOSITE_MULTIPLICATIVE
29: PetscEnum PC_COMPOSITE_SYM_MULTIPLICATIVE
30: PetscEnum PC_COMPOSITE_SPECIAL
31: PetscEnum PC_COMPOSITE_SCHUR
32: parameter (PC_COMPOSITE_ADDITIVE=0,PC_COMPOSITE_MULTIPLICATIVE=1)
33: parameter (PC_COMPOSITE_SYM_MULTIPLICATIVE=2)
34: parameter (PC_COMPOSITE_SPECIAL=3,PC_COMPOSITE_SCHUR=4)
35: !
36: ! PCRichardsonConvergedReason
37: !
38: PetscEnum PCRICHARDSON_CONVERGED_RTOL
39: PetscEnum PCRICHARDSON_CONVERGED_ATOL
40: PetscEnum PCRICHARDSON_CONVERGED_ITS
41: PetscEnum PCRICHARDSON_DIVERGED_DTOL
42: parameter (PCRICHARDSON_CONVERGED_RTOL = 2)
43: parameter (PCRICHARDSON_CONVERGED_ATOL = 3)
44: parameter (PCRICHARDSON_CONVERGED_ITS = 4)
45: parameter (PCRICHARDSON_DIVERGED_DTOL = -4)
46: !
47: ! PCFieldSplitSchurPreType
48: !
49: PetscEnum PC_FIELDSPLIT_SCHUR_PRE_SELF
50: PetscEnum PC_FIELDSPLIT_SCHUR_PRE_A11
51: PetscEnum PC_FIELDSPLIT_SCHUR_PRE_USER
52: parameter (PC_FIELDSPLIT_SCHUR_PRE_SELF=0)
53: parameter (PC_FIELDSPLIT_SCHUR_PRE_A11=1)
54: parameter (PC_FIELDSPLIT_SCHUR_PRE_USER=2)
55: !
56: ! PCPARMSGlobalType
57: !
58: PetscEnum PC_PARMS_GLOBAL_RAS
59: PetscEnum PC_PARMS_GLOBAL_SCHUR
60: PetscEnum PC_PARMS_GLOBAL_BJ
61: parameter (PC_PARMS_GLOBAL_RAS=0)
62: parameter (PC_PARMS_GLOBAL_SCHUR=1)
63: parameter (PC_PARMS_GLOBAL_BJ=2)
64: !
65: ! PCPARMSLocalType
66: !
67: PetscEnum PC_PARMS_LOCAL_ILU0
68: PetscEnum PC_PARMS_LOCAL_ILUK
69: PetscEnum PC_PARMS_LOCAL_ILUT
70: PetscEnum PC_PARMS_LOCAL_ARMS
71: parameter (PC_PARMS_LOCAL_ILU0=0)
72: parameter (PC_PARMS_LOCAL_ILUK=1)
73: parameter (PC_PARMS_LOCAL_ILUT=2)
74: parameter (PC_PARMS_LOCAL_ARMS=3)
75: !
76: ! PCFieldSplitSchurFactType
77: !
78: PetscEnum PC_FIELDSPLIT_SCHUR_FACT_DIAG
79: PetscEnum PC_FIELDSPLIT_SCHUR_FACT_LOWER
80: PetscEnum PC_FIELDSPLIT_SCHUR_FACT_UPPER
81: PetscEnum PC_FIELDSPLIT_SCHUR_FACT_FULL
82: parameter (PC_FIELDSPLIT_SCHUR_FACT_DIAG=0)
83: parameter (PC_FIELDSPLIT_SCHUR_FACT_LOWER=1)
84: parameter (PC_FIELDSPLIT_SCHUR_FACT_UPPER=2)
85: parameter (PC_FIELDSPLIT_SCHUR_FACT_FULL=3)
87: !
88: ! CoarseProblemType
89: !
90: PetscEnum SEQUENTIAL_BDDC
91: PetscEnum REPLICATED_BDDC
92: PetscEnum PARALLEL_BDDC
93: PetscEnum MULTILEVEL_BDDC
94: parameter (SEQUENTIAL_BDDC=0)
95: parameter (REPLICATED_BDDC=1)
96: parameter (PARALLEL_BDDC=2)
97: parameter (MULTILEVEL_BDDC=3)
99: PetscEnum PC_MG_MULTIPLICATIVE
100: PetscEnum PC_MG_ADDITIVE
101: PetscEnum PC_MG_FULL
102: PetscEnum PC_MG_KASKADE
103: PetscEnum PC_MG_CASCADE
104: parameter (PC_MG_MULTIPLICATIVE=0,PC_MG_ADDITIVE=1)
105: parameter (PC_MG_FULL=2,PC_MG_KASKADE=3)
106: parameter (PC_MG_CASCADE=3)
108: ! PCMGCycleType
109: PetscEnum PC_MG_CYCLE_V
110: PetscEnum PC_MG_CYCLE_W
111: parameter (PC_MG_CYCLE_V = 1,PC_MG_CYCLE_W = 2)
113: PetscEnum PC_EXOTIC_FACE
114: PetscEnum PC_EXOTIC_WIREBASKET
115: parameter (PC_EXOTIC_FACE=0,PC_EXOTIC_WIREBASKET=1)
117: external PCMGRESIDUALDEFAULT
118: !
119: ! End of Fortran include file for the PC package in PETSc