DMGenerateRegister#
Adds a grid generator to DM
Synopsis#
#include "petscdm.h"          
PetscErrorCode DMGenerateRegister(const char sname[], PetscErrorCode (*fnc)(DM, PetscBool, DM *), PetscErrorCode (*rfnc)(DM, PetscReal *, DM *), PetscErrorCode (*alfnc)(DM, Vec, DMLabel, DMLabel, DM *), PetscInt dim)
Not Collective, No Fortran Support
Input Parameters#
- sname - name of a new user-defined grid generator 
- fnc - generator function 
- rfnc - refinement function 
- alfnc - adapt by label function 
- dim - dimension of boundary of domain 
Example Usage#
   DMGenerateRegister("my_generator", MyGeneratorCreate, MyGeneratorRefiner, MyGeneratorAdaptor, dim);
Then, your generator can be chosen with the procedural interface via
DMGenerate(dm, "my_generator",...)
or at runtime via the option
-dm_generator my_generator
Note#
DMGenerateRegister() may be called multiple times to add several user-defined generators
See Also#
DM, DMGenerateRegisterAll(), DMPlexGenerate(), DMGenerateRegisterDestroy()
Level#
advanced
Location#
Index of all DM routines
Table of Contents for all manual pages
Index of all manual pages