xref: /petsc/src/dm/interface/dmregall.c (revision 44b85a236d0c752951b0573ba76bfb3134d48c1e)
1 
2 #include <petscdm.h>     /*I  "petscdm.h"  I*/
3 #include <petscdmplex.h> /*I  "petscdmplex.h"  I*/
4 PETSC_EXTERN PetscErrorCode DMCreate_DA(DM);
5 PETSC_EXTERN PetscErrorCode DMCreate_Composite(DM);
6 PETSC_EXTERN PetscErrorCode DMCreate_Sliced(DM);
7 PETSC_EXTERN PetscErrorCode DMCreate_Shell(DM);
8 PETSC_EXTERN PetscErrorCode DMCreate_Redundant(DM);
9 PETSC_EXTERN PetscErrorCode DMCreate_Plex(DM);
10 PETSC_EXTERN PetscErrorCode DMCreate_Patch(DM);
11 #if defined(PETSC_HAVE_MOAB)
12 PETSC_EXTERN PetscErrorCode DMCreate_Moab(DM);
13 #endif
14 PETSC_EXTERN PetscErrorCode DMCreate_Network(DM);
15 
16 #undef __FUNCT__
17 #define __FUNCT__ "DMRegisterAll"
18 /*@C
19   DMRegisterAll - Registers all of the DM components in the DM package.
20 
21   Not Collective
22 
23   Input parameter:
24 . path - The dynamic library path
25 
26   Level: advanced
27 
28 .keywords: DM, register, all
29 .seealso:  DMRegister(), DMRegisterDestroy()
30 @*/
31 PetscErrorCode  DMRegisterAll()
32 {
33   PetscErrorCode ierr;
34 
35   PetscFunctionBegin;
36   DMRegisterAllCalled = PETSC_TRUE;
37 
38   ierr = DMRegister(DMDA,         DMCreate_DA);CHKERRQ(ierr);
39   ierr = DMRegister(DMCOMPOSITE,  DMCreate_Composite);CHKERRQ(ierr);
40   ierr = DMRegister(DMSLICED,     DMCreate_Sliced);CHKERRQ(ierr);
41   ierr = DMRegister(DMSHELL,      DMCreate_Shell);CHKERRQ(ierr);
42   ierr = DMRegister(DMREDUNDANT,  DMCreate_Redundant);CHKERRQ(ierr);
43   ierr = DMRegister(DMPLEX,       DMCreate_Plex);CHKERRQ(ierr);
44   ierr = DMRegister(DMPATCH,      DMCreate_Patch);CHKERRQ(ierr);
45 #if defined(PETSC_HAVE_MOAB)
46   ierr = DMRegister(DMMOAB,       DMCreate_Moab);CHKERRQ(ierr);
47 #endif
48   ierr = DMRegister(DMNETWORK,    DMCreate_Network);CHKERRQ(ierr);
49   PetscFunctionReturn(0);
50 }
51 
52 PETSC_EXTERN PetscErrorCode PetscPartitionerCreate_Chaco(PetscPartitioner);
53 PETSC_EXTERN PetscErrorCode PetscPartitionerCreate_ParMetis(PetscPartitioner);
54 PETSC_EXTERN PetscErrorCode PetscPartitionerCreate_Shell(PetscPartitioner);
55 
56 #undef __FUNCT__
57 #define __FUNCT__ "PetscPartitionerRegisterAll"
58 /*@C
59   PetscPartitionerRegisterAll - Registers all of the PetscPartitioner components in the DM package.
60 
61   Not Collective
62 
63   Input parameter:
64 . path - The dynamic library path
65 
66   Level: advanced
67 
68 .keywords: PetscPartitioner, register, all
69 .seealso:  PetscPartitionerRegister(), PetscPartitionerRegisterDestroy()
70 @*/
71 PetscErrorCode PetscPartitionerRegisterAll()
72 {
73   PetscErrorCode ierr;
74 
75   PetscFunctionBegin;
76   PetscPartitionerRegisterAllCalled = PETSC_TRUE;
77 
78   ierr = PetscPartitionerRegister(PETSCPARTITIONERCHACO,    PetscPartitionerCreate_Chaco);CHKERRQ(ierr);
79   ierr = PetscPartitionerRegister(PETSCPARTITIONERPARMETIS, PetscPartitionerCreate_ParMetis);CHKERRQ(ierr);
80   ierr = PetscPartitionerRegister(PETSCPARTITIONERSHELL,    PetscPartitionerCreate_Shell);CHKERRQ(ierr);
81   PetscFunctionReturn(0);
82 }
83 #include <petscfe.h>     /*I  "petscfe.h"  I*/
84 
85 PETSC_EXTERN PetscErrorCode PetscSpaceCreate_Polynomial(PetscSpace);
86 PETSC_EXTERN PetscErrorCode PetscSpaceCreate_DG(PetscSpace);
87 
88 #undef __FUNCT__
89 #define __FUNCT__ "PetscSpaceRegisterAll"
90 /*@C
91   PetscSpaceRegisterAll - Registers all of the PetscSpace components in the PetscFE package.
92 
93   Not Collective
94 
95   Input parameter:
96 . path - The dynamic library path
97 
98   Level: advanced
99 
100 .keywords: PetscSpace, register, all
101 .seealso:  PetscSpaceRegister(), PetscSpaceRegisterDestroy()
102 @*/
103 PetscErrorCode PetscSpaceRegisterAll()
104 {
105   PetscErrorCode ierr;
106 
107   PetscFunctionBegin;
108   PetscSpaceRegisterAllCalled = PETSC_TRUE;
109 
110   ierr = PetscSpaceRegister(PETSCSPACEPOLYNOMIAL, PetscSpaceCreate_Polynomial);CHKERRQ(ierr);
111   ierr = PetscSpaceRegister(PETSCSPACEDG,         PetscSpaceCreate_DG);CHKERRQ(ierr);
112   PetscFunctionReturn(0);
113 }
114 
115 PETSC_EXTERN PetscErrorCode PetscDualSpaceCreate_Lagrange(PetscDualSpace);
116 PETSC_EXTERN PetscErrorCode PetscDualSpaceCreate_Simple(PetscDualSpace);
117 
118 #undef __FUNCT__
119 #define __FUNCT__ "PetscDualSpaceRegisterAll"
120 /*@C
121   PetscDualSpaceRegisterAll - Registers all of the PetscDualSpace components in the PetscFE package.
122 
123   Not Collective
124 
125   Input parameter:
126 . path - The dynamic library path
127 
128   Level: advanced
129 
130 .keywords: PetscDualSpace, register, all
131 .seealso:  PetscDualSpaceRegister(), PetscDualSpaceRegisterDestroy()
132 @*/
133 PetscErrorCode PetscDualSpaceRegisterAll()
134 {
135   PetscErrorCode ierr;
136 
137   PetscFunctionBegin;
138   PetscDualSpaceRegisterAllCalled = PETSC_TRUE;
139 
140   ierr = PetscDualSpaceRegister(PETSCDUALSPACELAGRANGE, PetscDualSpaceCreate_Lagrange);CHKERRQ(ierr);
141   ierr = PetscDualSpaceRegister(PETSCDUALSPACESIMPLE,   PetscDualSpaceCreate_Simple);CHKERRQ(ierr);
142   PetscFunctionReturn(0);
143 }
144 
145 PETSC_EXTERN PetscErrorCode PetscFECreate_Basic(PetscFE);
146 PETSC_EXTERN PetscErrorCode PetscFECreate_Nonaffine(PetscFE);
147 PETSC_EXTERN PetscErrorCode PetscFECreate_Composite(PetscFE);
148 #ifdef PETSC_HAVE_OPENCL
149 PETSC_EXTERN PetscErrorCode PetscFECreate_OpenCL(PetscFE);
150 #endif
151 
152 #undef __FUNCT__
153 #define __FUNCT__ "PetscFERegisterAll"
154 /*@C
155   PetscFERegisterAll - Registers all of the PetscFE components in the PetscFE package.
156 
157   Not Collective
158 
159   Input parameter:
160 . path - The dynamic library path
161 
162   Level: advanced
163 
164 .keywords: PetscFE, register, all
165 .seealso:  PetscFERegister(), PetscFERegisterDestroy()
166 @*/
167 PetscErrorCode PetscFERegisterAll()
168 {
169   PetscErrorCode ierr;
170 
171   PetscFunctionBegin;
172   PetscFERegisterAllCalled = PETSC_TRUE;
173 
174   ierr = PetscFERegister(PETSCFEBASIC,     PetscFECreate_Basic);CHKERRQ(ierr);
175   ierr = PetscFERegister(PETSCFENONAFFINE, PetscFECreate_Nonaffine);CHKERRQ(ierr);
176   ierr = PetscFERegister(PETSCFECOMPOSITE, PetscFECreate_Composite);CHKERRQ(ierr);
177 #ifdef PETSC_HAVE_OPENCL
178   ierr = PetscFERegister(PETSCFEOPENCL, PetscFECreate_OpenCL);CHKERRQ(ierr);
179 #endif
180   PetscFunctionReturn(0);
181 }
182 #include <petscfv.h>     /*I  "petscfv.h"  I*/
183 
184 PETSC_EXTERN PetscErrorCode PetscLimiterCreate_Sin(PetscLimiter);
185 PETSC_EXTERN PetscErrorCode PetscLimiterCreate_Zero(PetscLimiter);
186 PETSC_EXTERN PetscErrorCode PetscLimiterCreate_None(PetscLimiter);
187 PETSC_EXTERN PetscErrorCode PetscLimiterCreate_Minmod(PetscLimiter);
188 PETSC_EXTERN PetscErrorCode PetscLimiterCreate_VanLeer(PetscLimiter);
189 PETSC_EXTERN PetscErrorCode PetscLimiterCreate_VanAlbada(PetscLimiter);
190 PETSC_EXTERN PetscErrorCode PetscLimiterCreate_Superbee(PetscLimiter);
191 PETSC_EXTERN PetscErrorCode PetscLimiterCreate_MC(PetscLimiter);
192 
193 #undef __FUNCT__
194 #define __FUNCT__ "PetscLimiterRegisterAll"
195 /*@C
196   PetscLimiterRegisterAll - Registers all of the PetscLimiter components in the PetscFV package.
197 
198   Not Collective
199 
200   Input parameter:
201 . path - The dynamic library path
202 
203   Level: advanced
204 
205 .keywords: PetscLimiter, register, all
206 .seealso:  PetscLimiterRegister(), PetscLimiterRegisterDestroy()
207 @*/
208 PetscErrorCode PetscLimiterRegisterAll()
209 {
210   PetscErrorCode ierr;
211 
212   PetscFunctionBegin;
213   PetscLimiterRegisterAllCalled = PETSC_TRUE;
214 
215   ierr = PetscLimiterRegister(PETSCLIMITERSIN,       PetscLimiterCreate_Sin);CHKERRQ(ierr);
216   ierr = PetscLimiterRegister(PETSCLIMITERZERO,      PetscLimiterCreate_Zero);CHKERRQ(ierr);
217   ierr = PetscLimiterRegister(PETSCLIMITERNONE,      PetscLimiterCreate_None);CHKERRQ(ierr);
218   ierr = PetscLimiterRegister(PETSCLIMITERMINMOD,    PetscLimiterCreate_Minmod);CHKERRQ(ierr);
219   ierr = PetscLimiterRegister(PETSCLIMITERVANLEER,   PetscLimiterCreate_VanLeer);CHKERRQ(ierr);
220   ierr = PetscLimiterRegister(PETSCLIMITERVANALBADA, PetscLimiterCreate_VanAlbada);CHKERRQ(ierr);
221   ierr = PetscLimiterRegister(PETSCLIMITERSUPERBEE,  PetscLimiterCreate_Superbee);CHKERRQ(ierr);
222   ierr = PetscLimiterRegister(PETSCLIMITERMC,        PetscLimiterCreate_MC);CHKERRQ(ierr);
223   PetscFunctionReturn(0);
224 }
225 
226 PETSC_EXTERN PetscErrorCode PetscFVCreate_Upwind(PetscFV);
227 PETSC_EXTERN PetscErrorCode PetscFVCreate_LeastSquares(PetscFV);
228 
229 #undef __FUNCT__
230 #define __FUNCT__ "PetscFVRegisterAll"
231 /*@C
232   PetscFVRegisterAll - Registers all of the PetscFV components in the PetscFV package.
233 
234   Not Collective
235 
236   Input parameter:
237 . path - The dynamic library path
238 
239   Level: advanced
240 
241 .keywords: PetscFV, register, all
242 .seealso:  PetscFVRegister(), PetscFVRegisterDestroy()
243 @*/
244 PetscErrorCode PetscFVRegisterAll()
245 {
246   PetscErrorCode ierr;
247 
248   PetscFunctionBegin;
249   PetscFVRegisterAllCalled = PETSC_TRUE;
250 
251   ierr = PetscFVRegister(PETSCFVUPWIND,       PetscFVCreate_Upwind);CHKERRQ(ierr);
252   ierr = PetscFVRegister(PETSCFVLEASTSQUARES, PetscFVCreate_LeastSquares);CHKERRQ(ierr);
253   PetscFunctionReturn(0);
254 }
255 #include <petscds.h>     /*I  "petscds.h"  I*/
256 
257 PETSC_EXTERN PetscErrorCode PetscDSCreate_Basic(PetscDS);
258 
259 #undef __FUNCT__
260 #define __FUNCT__ "PetscDSRegisterAll"
261 /*@C
262   PetscDSRegisterAll - Registers all of the PetscDS components in the PetscDS package.
263 
264   Not Collective
265 
266   Input parameter:
267 . path - The dynamic library path
268 
269   Level: advanced
270 
271 .keywords: PetscDS, register, all
272 .seealso:  PetscDSRegister(), PetscDSRegisterDestroy()
273 @*/
274 PetscErrorCode PetscDSRegisterAll()
275 {
276   PetscErrorCode ierr;
277 
278   PetscFunctionBegin;
279   PetscDSRegisterAllCalled = PETSC_TRUE;
280 
281   ierr = PetscDSRegister(PETSCDSBASIC, PetscDSCreate_Basic);CHKERRQ(ierr);
282   PetscFunctionReturn(0);
283 }
284