Actual source code: dmregall.c
petsc-3.6.1 2015-08-06
2: #include <petscdm.h> /*I "petscdm.h" I*/
3: #include <petscdmplex.h> /*I "petscdmplex.h" I*/
4: #include <petsc/private/dmimpl.h>
5: #include <petsc/private/dmpleximpl.h>
6: #include <petsc/private/petscfeimpl.h>
7: #include <petsc/private/petscfvimpl.h>
8: #include <petsc/private/petscdsimpl.h>
9: PETSC_EXTERN PetscErrorCode DMCreate_DA(DM);
10: PETSC_EXTERN PetscErrorCode DMCreate_Composite(DM);
11: PETSC_EXTERN PetscErrorCode DMCreate_Sliced(DM);
12: PETSC_EXTERN PetscErrorCode DMCreate_Shell(DM);
13: PETSC_EXTERN PetscErrorCode DMCreate_Redundant(DM);
14: PETSC_EXTERN PetscErrorCode DMCreate_Plex(DM);
15: PETSC_EXTERN PetscErrorCode DMCreate_Patch(DM);
16: #if defined(PETSC_HAVE_MOAB)
17: PETSC_EXTERN PetscErrorCode DMCreate_Moab(DM);
18: #endif
19: PETSC_EXTERN PetscErrorCode DMCreate_Network(DM);
23: /*@C
24: DMRegisterAll - Registers all of the DM components in the DM package.
26: Not Collective
28: Input parameter:
29: . path - The dynamic library path
31: Level: advanced
33: .keywords: DM, register, all
34: .seealso: DMRegister(), DMRegisterDestroy()
35: @*/
36: PetscErrorCode DMRegisterAll()
37: {
41: if (DMRegisterAllCalled) return(0);
42: DMRegisterAllCalled = PETSC_TRUE;
44: DMRegister(DMDA, DMCreate_DA);
45: DMRegister(DMCOMPOSITE, DMCreate_Composite);
46: DMRegister(DMSLICED, DMCreate_Sliced);
47: DMRegister(DMSHELL, DMCreate_Shell);
48: DMRegister(DMREDUNDANT, DMCreate_Redundant);
49: DMRegister(DMPLEX, DMCreate_Plex);
50: DMRegister(DMPATCH, DMCreate_Patch);
51: #if defined(PETSC_HAVE_MOAB)
52: DMRegister(DMMOAB, DMCreate_Moab);
53: #endif
54: DMRegister(DMNETWORK, DMCreate_Network);
55: return(0);
56: }
58: PETSC_EXTERN PetscErrorCode PetscPartitionerCreate_Chaco(PetscPartitioner);
59: PETSC_EXTERN PetscErrorCode PetscPartitionerCreate_ParMetis(PetscPartitioner);
60: PETSC_EXTERN PetscErrorCode PetscPartitionerCreate_Shell(PetscPartitioner);
61: PETSC_EXTERN PetscErrorCode PetscPartitionerCreate_Simple(PetscPartitioner);
65: /*@C
66: PetscPartitionerRegisterAll - Registers all of the PetscPartitioner components in the DM package.
68: Not Collective
70: Input parameter:
71: . path - The dynamic library path
73: Level: advanced
75: .keywords: PetscPartitioner, register, all
76: .seealso: PetscPartitionerRegister(), PetscPartitionerRegisterDestroy()
77: @*/
78: PetscErrorCode PetscPartitionerRegisterAll()
79: {
83: if (PetscPartitionerRegisterAllCalled) return(0);
84: PetscPartitionerRegisterAllCalled = PETSC_TRUE;
86: PetscPartitionerRegister(PETSCPARTITIONERCHACO, PetscPartitionerCreate_Chaco);
87: PetscPartitionerRegister(PETSCPARTITIONERPARMETIS, PetscPartitionerCreate_ParMetis);
88: PetscPartitionerRegister(PETSCPARTITIONERSHELL, PetscPartitionerCreate_Shell);
89: PetscPartitionerRegister(PETSCPARTITIONERSIMPLE, PetscPartitionerCreate_Simple);
90: return(0);
91: }
92: #include <petscfe.h> /*I "petscfe.h" I*/
94: PETSC_EXTERN PetscErrorCode PetscSpaceCreate_Polynomial(PetscSpace);
95: PETSC_EXTERN PetscErrorCode PetscSpaceCreate_DG(PetscSpace);
99: /*@C
100: PetscSpaceRegisterAll - Registers all of the PetscSpace components in the PetscFE package.
102: Not Collective
104: Input parameter:
105: . path - The dynamic library path
107: Level: advanced
109: .keywords: PetscSpace, register, all
110: .seealso: PetscSpaceRegister(), PetscSpaceRegisterDestroy()
111: @*/
112: PetscErrorCode PetscSpaceRegisterAll()
113: {
117: if (PetscSpaceRegisterAllCalled) return(0);
118: PetscSpaceRegisterAllCalled = PETSC_TRUE;
120: PetscSpaceRegister(PETSCSPACEPOLYNOMIAL, PetscSpaceCreate_Polynomial);
121: PetscSpaceRegister(PETSCSPACEDG, PetscSpaceCreate_DG);
122: return(0);
123: }
125: PETSC_EXTERN PetscErrorCode PetscDualSpaceCreate_Lagrange(PetscDualSpace);
126: PETSC_EXTERN PetscErrorCode PetscDualSpaceCreate_Simple(PetscDualSpace);
130: /*@C
131: PetscDualSpaceRegisterAll - Registers all of the PetscDualSpace components in the PetscFE package.
133: Not Collective
135: Input parameter:
136: . path - The dynamic library path
138: Level: advanced
140: .keywords: PetscDualSpace, register, all
141: .seealso: PetscDualSpaceRegister(), PetscDualSpaceRegisterDestroy()
142: @*/
143: PetscErrorCode PetscDualSpaceRegisterAll()
144: {
148: if (PetscDualSpaceRegisterAllCalled) return(0);
149: PetscDualSpaceRegisterAllCalled = PETSC_TRUE;
151: PetscDualSpaceRegister(PETSCDUALSPACELAGRANGE, PetscDualSpaceCreate_Lagrange);
152: PetscDualSpaceRegister(PETSCDUALSPACESIMPLE, PetscDualSpaceCreate_Simple);
153: return(0);
154: }
156: PETSC_EXTERN PetscErrorCode PetscFECreate_Basic(PetscFE);
157: PETSC_EXTERN PetscErrorCode PetscFECreate_Nonaffine(PetscFE);
158: PETSC_EXTERN PetscErrorCode PetscFECreate_Composite(PetscFE);
159: #ifdef PETSC_HAVE_OPENCL
160: PETSC_EXTERN PetscErrorCode PetscFECreate_OpenCL(PetscFE);
161: #endif
165: /*@C
166: PetscFERegisterAll - Registers all of the PetscFE components in the PetscFE package.
168: Not Collective
170: Input parameter:
171: . path - The dynamic library path
173: Level: advanced
175: .keywords: PetscFE, register, all
176: .seealso: PetscFERegister(), PetscFERegisterDestroy()
177: @*/
178: PetscErrorCode PetscFERegisterAll()
179: {
183: if (PetscFERegisterAllCalled) return(0);
184: PetscFERegisterAllCalled = PETSC_TRUE;
186: PetscFERegister(PETSCFEBASIC, PetscFECreate_Basic);
187: PetscFERegister(PETSCFENONAFFINE, PetscFECreate_Nonaffine);
188: PetscFERegister(PETSCFECOMPOSITE, PetscFECreate_Composite);
189: #ifdef PETSC_HAVE_OPENCL
190: PetscFERegister(PETSCFEOPENCL, PetscFECreate_OpenCL);
191: #endif
192: return(0);
193: }
194: #include <petscfv.h> /*I "petscfv.h" I*/
196: PETSC_EXTERN PetscErrorCode PetscLimiterCreate_Sin(PetscLimiter);
197: PETSC_EXTERN PetscErrorCode PetscLimiterCreate_Zero(PetscLimiter);
198: PETSC_EXTERN PetscErrorCode PetscLimiterCreate_None(PetscLimiter);
199: PETSC_EXTERN PetscErrorCode PetscLimiterCreate_Minmod(PetscLimiter);
200: PETSC_EXTERN PetscErrorCode PetscLimiterCreate_VanLeer(PetscLimiter);
201: PETSC_EXTERN PetscErrorCode PetscLimiterCreate_VanAlbada(PetscLimiter);
202: PETSC_EXTERN PetscErrorCode PetscLimiterCreate_Superbee(PetscLimiter);
203: PETSC_EXTERN PetscErrorCode PetscLimiterCreate_MC(PetscLimiter);
207: /*@C
208: PetscLimiterRegisterAll - Registers all of the PetscLimiter components in the PetscFV package.
210: Not Collective
212: Input parameter:
213: . path - The dynamic library path
215: Level: advanced
217: .keywords: PetscLimiter, register, all
218: .seealso: PetscLimiterRegister(), PetscLimiterRegisterDestroy()
219: @*/
220: PetscErrorCode PetscLimiterRegisterAll()
221: {
225: if (PetscLimiterRegisterAllCalled) return(0);
226: PetscLimiterRegisterAllCalled = PETSC_TRUE;
228: PetscLimiterRegister(PETSCLIMITERSIN, PetscLimiterCreate_Sin);
229: PetscLimiterRegister(PETSCLIMITERZERO, PetscLimiterCreate_Zero);
230: PetscLimiterRegister(PETSCLIMITERNONE, PetscLimiterCreate_None);
231: PetscLimiterRegister(PETSCLIMITERMINMOD, PetscLimiterCreate_Minmod);
232: PetscLimiterRegister(PETSCLIMITERVANLEER, PetscLimiterCreate_VanLeer);
233: PetscLimiterRegister(PETSCLIMITERVANALBADA, PetscLimiterCreate_VanAlbada);
234: PetscLimiterRegister(PETSCLIMITERSUPERBEE, PetscLimiterCreate_Superbee);
235: PetscLimiterRegister(PETSCLIMITERMC, PetscLimiterCreate_MC);
236: return(0);
237: }
239: PETSC_EXTERN PetscErrorCode PetscFVCreate_Upwind(PetscFV);
240: PETSC_EXTERN PetscErrorCode PetscFVCreate_LeastSquares(PetscFV);
244: /*@C
245: PetscFVRegisterAll - Registers all of the PetscFV components in the PetscFV package.
247: Not Collective
249: Input parameter:
250: . path - The dynamic library path
252: Level: advanced
254: .keywords: PetscFV, register, all
255: .seealso: PetscFVRegister(), PetscFVRegisterDestroy()
256: @*/
257: PetscErrorCode PetscFVRegisterAll()
258: {
262: if (PetscFVRegisterAllCalled) return(0);
263: PetscFVRegisterAllCalled = PETSC_TRUE;
265: PetscFVRegister(PETSCFVUPWIND, PetscFVCreate_Upwind);
266: PetscFVRegister(PETSCFVLEASTSQUARES, PetscFVCreate_LeastSquares);
267: return(0);
268: }
269: #include <petscds.h> /*I "petscds.h" I*/
271: PETSC_EXTERN PetscErrorCode PetscDSCreate_Basic(PetscDS);
275: /*@C
276: PetscDSRegisterAll - Registers all of the PetscDS components in the PetscDS package.
278: Not Collective
280: Input parameter:
281: . path - The dynamic library path
283: Level: advanced
285: .keywords: PetscDS, register, all
286: .seealso: PetscDSRegister(), PetscDSRegisterDestroy()
287: @*/
288: PetscErrorCode PetscDSRegisterAll()
289: {
293: if (PetscDSRegisterAllCalled) return(0);
294: PetscDSRegisterAllCalled = PETSC_TRUE;
296: PetscDSRegister(PETSCDSBASIC, PetscDSCreate_Basic);
297: return(0);
298: }