Actual source code: dmregall.c

petsc-3.8.0 2017-09-26
Report Typos and Errors

  2:  #include <petscdm.h>
  3:  #include <petscdmplex.h>
  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: PETSC_EXTERN PetscErrorCode DMCreate_Swarm(DM);
 17: #if defined(PETSC_HAVE_MOAB)
 18: PETSC_EXTERN PetscErrorCode DMCreate_Moab(DM);
 19: #endif
 20: PETSC_EXTERN PetscErrorCode DMCreate_Network(DM);
 21: PETSC_EXTERN PetscErrorCode DMCreate_Forest(DM);
 22: #if defined(PETSC_HAVE_P4EST)
 23: PETSC_EXTERN PetscErrorCode DMCreate_p4est(DM);
 24: PETSC_EXTERN PetscErrorCode DMCreate_p8est(DM);
 25: #endif

 27: /*@C
 28:   DMRegisterAll - Registers all of the DM components in the DM package.

 30:   Not Collective

 32:   Input parameter:
 33: . path - The dynamic library path

 35:   Level: advanced

 37: .keywords: DM, register, all
 38: .seealso:  DMRegister(), DMRegisterDestroy()
 39: @*/
 40: PetscErrorCode  DMRegisterAll(void)
 41: {

 45:   if (DMRegisterAllCalled) return(0);
 46:   DMRegisterAllCalled = PETSC_TRUE;

 48:   DMRegister(DMDA,         DMCreate_DA);
 49:   DMRegister(DMCOMPOSITE,  DMCreate_Composite);
 50:   DMRegister(DMSLICED,     DMCreate_Sliced);
 51:   DMRegister(DMSHELL,      DMCreate_Shell);
 52:   DMRegister(DMREDUNDANT,  DMCreate_Redundant);
 53:   DMRegister(DMPLEX,       DMCreate_Plex);
 54:   DMRegister(DMPATCH,      DMCreate_Patch);
 55:   DMRegister(DMSWARM,      DMCreate_Swarm);
 56: #if defined(PETSC_HAVE_MOAB)
 57:   DMRegister(DMMOAB,       DMCreate_Moab);
 58: #endif
 59:   DMRegister(DMNETWORK,    DMCreate_Network);
 60:   DMRegister(DMFOREST,     DMCreate_Forest);
 61: #if defined(PETSC_HAVE_P4EST)
 62:   DMRegister(DMP4EST,      DMCreate_p4est);
 63:   DMRegister(DMP8EST,      DMCreate_p8est);
 64: #endif
 65:   return(0);
 66: }

 68: PETSC_EXTERN PetscErrorCode PetscPartitionerCreate_Chaco(PetscPartitioner);
 69: PETSC_EXTERN PetscErrorCode PetscPartitionerCreate_ParMetis(PetscPartitioner);
 70: PETSC_EXTERN PetscErrorCode PetscPartitionerCreate_Shell(PetscPartitioner);
 71: PETSC_EXTERN PetscErrorCode PetscPartitionerCreate_Simple(PetscPartitioner);
 72: PETSC_EXTERN PetscErrorCode PetscPartitionerCreate_Gather(PetscPartitioner);

 74: /*@C
 75:   PetscPartitionerRegisterAll - Registers all of the PetscPartitioner components in the DM package.

 77:   Not Collective

 79:   Input parameter:
 80: . path - The dynamic library path

 82:   Level: advanced

 84: .keywords: PetscPartitioner, register, all
 85: .seealso:  PetscPartitionerRegister(), PetscPartitionerRegisterDestroy()
 86: @*/
 87: PetscErrorCode PetscPartitionerRegisterAll(void)
 88: {

 92:   if (PetscPartitionerRegisterAllCalled) return(0);
 93:   PetscPartitionerRegisterAllCalled = PETSC_TRUE;

 95:   PetscPartitionerRegister(PETSCPARTITIONERCHACO,    PetscPartitionerCreate_Chaco);
 96:   PetscPartitionerRegister(PETSCPARTITIONERPARMETIS, PetscPartitionerCreate_ParMetis);
 97:   PetscPartitionerRegister(PETSCPARTITIONERSHELL,    PetscPartitionerCreate_Shell);
 98:   PetscPartitionerRegister(PETSCPARTITIONERSIMPLE,   PetscPartitionerCreate_Simple);
 99:   PetscPartitionerRegister(PETSCPARTITIONERGATHER,   PetscPartitionerCreate_Gather);
100:   return(0);
101: }
102:  #include <petscfe.h>

104: PETSC_EXTERN PetscErrorCode PetscSpaceCreate_Polynomial(PetscSpace);
105: PETSC_EXTERN PetscErrorCode PetscSpaceCreate_Point(PetscSpace);

107: /*@C
108:   PetscSpaceRegisterAll - Registers all of the PetscSpace components in the PetscFE package.

110:   Not Collective

112:   Input parameter:
113: . path - The dynamic library path

115:   Level: advanced

117: .keywords: PetscSpace, register, all
118: .seealso:  PetscSpaceRegister(), PetscSpaceRegisterDestroy()
119: @*/
120: PetscErrorCode PetscSpaceRegisterAll(void)
121: {

125:   if (PetscSpaceRegisterAllCalled) return(0);
126:   PetscSpaceRegisterAllCalled = PETSC_TRUE;

128:   PetscSpaceRegister(PETSCSPACEPOLYNOMIAL, PetscSpaceCreate_Polynomial);
129:   PetscSpaceRegister(PETSCSPACEPOINT,      PetscSpaceCreate_Point);
130:   return(0);
131: }

133: PETSC_EXTERN PetscErrorCode PetscDualSpaceCreate_Lagrange(PetscDualSpace);
134: PETSC_EXTERN PetscErrorCode PetscDualSpaceCreate_Simple(PetscDualSpace);

136: /*@C
137:   PetscDualSpaceRegisterAll - Registers all of the PetscDualSpace components in the PetscFE package.

139:   Not Collective

141:   Input parameter:
142: . path - The dynamic library path

144:   Level: advanced

146: .keywords: PetscDualSpace, register, all
147: .seealso:  PetscDualSpaceRegister(), PetscDualSpaceRegisterDestroy()
148: @*/
149: PetscErrorCode PetscDualSpaceRegisterAll(void)
150: {

154:   if (PetscDualSpaceRegisterAllCalled) return(0);
155:   PetscDualSpaceRegisterAllCalled = PETSC_TRUE;

157:   PetscDualSpaceRegister(PETSCDUALSPACELAGRANGE, PetscDualSpaceCreate_Lagrange);
158:   PetscDualSpaceRegister(PETSCDUALSPACESIMPLE,   PetscDualSpaceCreate_Simple);
159:   return(0);
160: }

162: PETSC_EXTERN PetscErrorCode PetscFECreate_Basic(PetscFE);
163: PETSC_EXTERN PetscErrorCode PetscFECreate_Nonaffine(PetscFE);
164: PETSC_EXTERN PetscErrorCode PetscFECreate_Composite(PetscFE);
165: #ifdef PETSC_HAVE_OPENCL
166: PETSC_EXTERN PetscErrorCode PetscFECreate_OpenCL(PetscFE);
167: #endif

169: /*@C
170:   PetscFERegisterAll - Registers all of the PetscFE components in the PetscFE package.

172:   Not Collective

174:   Input parameter:
175: . path - The dynamic library path

177:   Level: advanced

179: .keywords: PetscFE, register, all
180: .seealso:  PetscFERegister(), PetscFERegisterDestroy()
181: @*/
182: PetscErrorCode PetscFERegisterAll(void)
183: {

187:   if (PetscFERegisterAllCalled) return(0);
188:   PetscFERegisterAllCalled = PETSC_TRUE;

190:   PetscFERegister(PETSCFEBASIC,     PetscFECreate_Basic);
191:   PetscFERegister(PETSCFENONAFFINE, PetscFECreate_Nonaffine);
192:   PetscFERegister(PETSCFECOMPOSITE, PetscFECreate_Composite);
193: #ifdef PETSC_HAVE_OPENCL
194:   PetscFERegister(PETSCFEOPENCL, PetscFECreate_OpenCL);
195: #endif
196:   return(0);
197: }
198:  #include <petscfv.h>

200: PETSC_EXTERN PetscErrorCode PetscLimiterCreate_Sin(PetscLimiter);
201: PETSC_EXTERN PetscErrorCode PetscLimiterCreate_Zero(PetscLimiter);
202: PETSC_EXTERN PetscErrorCode PetscLimiterCreate_None(PetscLimiter);
203: PETSC_EXTERN PetscErrorCode PetscLimiterCreate_Minmod(PetscLimiter);
204: PETSC_EXTERN PetscErrorCode PetscLimiterCreate_VanLeer(PetscLimiter);
205: PETSC_EXTERN PetscErrorCode PetscLimiterCreate_VanAlbada(PetscLimiter);
206: PETSC_EXTERN PetscErrorCode PetscLimiterCreate_Superbee(PetscLimiter);
207: PETSC_EXTERN PetscErrorCode PetscLimiterCreate_MC(PetscLimiter);

209: /*@C
210:   PetscLimiterRegisterAll - Registers all of the PetscLimiter components in the PetscFV package.

212:   Not Collective

214:   Input parameter:
215: . path - The dynamic library path

217:   Level: advanced

219: .keywords: PetscLimiter, register, all
220: .seealso:  PetscLimiterRegister(), PetscLimiterRegisterDestroy()
221: @*/
222: PetscErrorCode PetscLimiterRegisterAll(void)
223: {

227:   if (PetscLimiterRegisterAllCalled) return(0);
228:   PetscLimiterRegisterAllCalled = PETSC_TRUE;

230:   PetscLimiterRegister(PETSCLIMITERSIN,       PetscLimiterCreate_Sin);
231:   PetscLimiterRegister(PETSCLIMITERZERO,      PetscLimiterCreate_Zero);
232:   PetscLimiterRegister(PETSCLIMITERNONE,      PetscLimiterCreate_None);
233:   PetscLimiterRegister(PETSCLIMITERMINMOD,    PetscLimiterCreate_Minmod);
234:   PetscLimiterRegister(PETSCLIMITERVANLEER,   PetscLimiterCreate_VanLeer);
235:   PetscLimiterRegister(PETSCLIMITERVANALBADA, PetscLimiterCreate_VanAlbada);
236:   PetscLimiterRegister(PETSCLIMITERSUPERBEE,  PetscLimiterCreate_Superbee);
237:   PetscLimiterRegister(PETSCLIMITERMC,        PetscLimiterCreate_MC);
238:   return(0);
239: }

241: PETSC_EXTERN PetscErrorCode PetscFVCreate_Upwind(PetscFV);
242: 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(void)
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>

271: PETSC_EXTERN PetscErrorCode PetscDSCreate_Basic(PetscDS);

273: /*@C
274:   PetscDSRegisterAll - Registers all of the PetscDS components in the PetscDS package.

276:   Not Collective

278:   Input parameter:
279: . path - The dynamic library path

281:   Level: advanced

283: .keywords: PetscDS, register, all
284: .seealso:  PetscDSRegister(), PetscDSRegisterDestroy()
285: @*/
286: PetscErrorCode PetscDSRegisterAll(void)
287: {

291:   if (PetscDSRegisterAllCalled) return(0);
292:   PetscDSRegisterAllCalled = PETSC_TRUE;

294:   PetscDSRegister(PETSCDSBASIC, PetscDSCreate_Basic);
295:   return(0);
296: }