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