AMDiS  0.1
The Adaptive Multi-Dimensional Simulation Toolbox
Constraints< PetscMatrix< DofMap > > Struct Template Reference

Public Types

using Matrix = PetscMatrix< DofMap >
 
using Vector = PetscVector< DofMap >
 

Static Public Member Functions

template<class BitVector >
static void dirichletBC (Matrix &mat, Vector &x, Vector &b, BitVector const &nodes, bool setDiagonal=true)
 Dirichlet boundary conditions. More...
 
template<class BitVector , class Associations >
static void periodicBC (Matrix &mat, Vector &x, Vector &b, BitVector const &left, Associations const &left2right, bool setDiagonal=true)
 Periodic boundary conditions. More...
 

Member Function Documentation

◆ dirichletBC()

static void dirichletBC ( Matrix mat,
Vector x,
Vector b,
BitVector const &  nodes,
bool  setDiagonal = true 
)
inlinestatic

Dirichlet boundary conditions.

Clear the rows (columns) of the given boundary nodes that are owned by the processor. The columns are only cleared if the matrix is symmetric. When clearing the columns, the scaled solution values are substracted from the rhs.

The rhs vector is adapted to the solution values at the dirichlet nodes.

References PetscMatrix< DofMap >::matrix(), and PetscVector< DofMap >::vector().

◆ periodicBC()

static void periodicBC ( Matrix mat,
Vector x,
Vector b,
BitVector const &  left,
Associations const &  left2right,
bool  setDiagonal = true 
)
inlinestatic

Periodic boundary conditions.

The periodic constraints are not implemented in a symmetric fashion

References PetscMatrix< DofMap >::matrix(), and PetscVector< DofMap >::vector().


The documentation for this struct was generated from the following file: