DMSetNullSpaceConstructor#

Provide a callback function which constructs the nullspace for a given field, defined with DMAddField(), when function spaces are joined or split, such as in DMCreateSubDM()

Synopsis#

#include "petscdm.h"          
#include "petscdmlabel.h"     
#include "petscds.h"     
PetscErrorCode DMSetNullSpaceConstructor(DM dm, PetscInt field, PetscErrorCode (*nullsp)(DM, PetscInt, PetscInt, MatNullSpace *))

Logically collective on dm

Input Parameters#

  • dm - The DM

  • field - The field number for the nullspace

  • nullsp - A callback to create the nullspace

Calling sequence of nullsp#

    PetscErrorCode nullsp(DM dm, PetscInt origField, PetscInt field, MatNullSpace *nullSpace)
  • dm - The present DM

  • origField - The field number given above, in the original DM

  • field - The field number in dm

  • nullSpace - The nullspace for the given field

Fortran Notes#

This function is not available from Fortran.

See Also#

DMAddField(), DMGetNullSpaceConstructor(), DMSetNearNullSpaceConstructor(), DMGetNearNullSpaceConstructor(), DMCreateSubDM(), DMCreateSuperDM()

Level#

intermediate

Location#

src/dm/interface/dm.c

Examples#

src/snes/tutorials/ex62.c.html
src/snes/tutorials/ex69.c.html
src/snes/tutorials/ex76.c.html
src/ts/tutorials/ex76.c.html
src/ts/tutorials/ex77.c.html


Edit on GitLab

Index of all DM routines
Table of Contents for all manual pages
Index of all manual pages