MeshMoverRegister

Adds a creation method to the mesh movement package.

Synopsis

#include "meshMovement.h" 
#include "grid.h" 
#include "gvec.h" 
#undef __FUNCT__  
#define __FUNCT__ "MeshMoverRegister"
int MeshMoverRegister(const char sname[], const char path[], const char name[], int (*function)(MeshMover))

Synopsis


MeshMoverRegister(char *name, char *path, char *func_name, int (*create_func)(MeshMover))

Not Collective

Input Parameters

name - The name of a new user-defined creation routine
path - The path (either absolute or relative) of the library containing this routine
func_name - The name of the creation routine
create_func - The creation routine itself

Notes

MeshMoverRegister() may be called multiple times to add several user-defined meshes.

If dynamic libraries are used, then the fourth input argument (create_func) is ignored.

Sample usage

  MeshMoverRegisterDynamic("my_mesh", "/home/username/my_lib/lib/libO/solaris/libmy.a", "MyMeshMoverCreate", MyMeshMoverCreate);

Then, your mesh type can be chosen with the procedural interface via

    MeshMoverCreate(MPI_Comm, MeshMover *);
    MeshMoverSetType(vec, "my_mesh_mover")
or at runtime via the option
    -mesh_mover_type my_mesh_mover

Note: $PETSC_ARCH and $BOPT occuring in pathname will be replaced with appropriate values.

Keywords

MeshMover, register

See Also

MeshMoverRegisterAll(), MeshMoverRegisterDestroy()

Level:advanced
Location:
src/gvec/interface/meshMovement.c
Index of all GVec routines
Table of Contents for all manual pages
Index of all manual pages