petsc-3.13.6 2020-09-29
MatNullSpaceCreateRigidBody
create rigid body modes from coordinates
Synopsis
#include "petscmat.h"
PetscErrorCode MatNullSpaceCreateRigidBody(Vec coords,MatNullSpace *sp)
Collective on Vec
Input Argument
coords -block of coordinates of each node, must have block size set
Output Argument
sp -the null space
Notes
If you are solving an elasticity problem you should likely use this, in conjunction with MatSetNearNullspace(), to provide information that
the PCGAMG preconditioner can use to construct a much more efficient preconditioner.
If you are solving an elasticity problem with pure Neumann boundary conditions you can use this in conjunction with MatSetNullspace() to
provide this information to the linear solver so it can handle the null space appropriately in the linear solution.
See Also
MatNullSpaceCreate(), MatSetNearNullspace(), MatSetNullspace()
Level
advanced
Location
src/mat/interface/matnull.c
Examples
src/ksp/ksp/tutorials/ex49.c.html
src/ksp/ksp/tutorials/ex56.c.html
src/ksp/ksp/tutorials/ex71.c.html
Index of all Mat routines
Table of Contents for all manual pages
Index of all manual pages