petsc-3.10.5 2019-03-28
Report Typos and Errors

# PetscDualSpaceRegister

Adds a new PetscDualSpace implementation

### Synopsis

    #include "petscfe.h"
    PetscErrorCode PetscDualSpaceRegister(const char sname[], PetscErrorCode (*function)(PetscDualSpace))

Not Collective

### Input Parameters

| name | - The name of a new user-defined creation routine
| create_func | - The creation routine itself

### Notes

PetscDualSpaceRegister() may be called multiple times to add several user-defined PetscDualSpaces

### Sample usage

        PetscDualSpaceRegister("my_space", MyPetscDualSpaceCreate);

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

        PetscDualSpaceCreate(MPI_Comm, PetscDualSpace *);
        PetscDualSpaceSetType(PetscDualSpace, "my_dual_space");

or at runtime via the option

        -petscdualspace_type my_dual_space

### Keywords

PetscDualSpace, register

### See Also

PetscDualSpaceRegisterAll(), PetscDualSpaceRegisterDestroy()

### Level

advanced

### Location

src/dm/dt/dualspace/interface/dualspace.c
Index of all DM routines
Table of Contents for all manual pages
Index of all manual pages