- Home
- About DUNE
- Download
- Documentation
- Community
- Development
#include <p1groundwater.hh>
Inheritance diagram for Dune::GroundwaterEquationLocalStiffness< GV, RT >:

A class for computing local stiffness matrix for the diffusion equation
div j = q; j = -K grad u; in Omega
u = g on Gamma1; j*n = J on Gamma2.
Uses conforming finite elements with the Lagrange shape functions. It should work for all dimensions and element types. All the numbering is with respect to the reference element and the Lagrange shape functions
Template parameters are:
GV a DUNE grid view RT type used for return values
Public Member Functions | |
| GroundwaterEquationLocalStiffness (const GV &gv, const GroundwaterEquationParameters< Grid, RT > ¶ms, bool levelBoundaryAsDirichlet_, bool procBoundaryAsDirichlet_=true) | |
| Constructor. | |
| void | assemble (const Entity &e, int k=1) |
| assemble local stiffness matrix for given element and order | |
| void | assembleBoundaryCondition (const Entity &e, int k=1) |
| assemble only boundary conditions for given element | |
| virtual void | assemble (const Entity &e, const BlockVector< VBlockType > &localSolution, int k=1) |
| assemble local stiffness matrix including boundary conditions for given element and order | |
| void | print (std::ostream &s, int width, int precision) |
| print contents of local stiffness matrix | |
| const MBlockType & | mat (int i, int j) const |
| access local stiffness matrix | |
| const VBlockType & | rhs (int i) const |
| access right hand side | |
| const BCBlockType & | bc (int i) const |
| access boundary condition for each dof | |
| void | setcurrentsize (int s) |
| set the current size of the local stiffness matrix | |
| int | currentsize () |
| get the current size of the local stiffness matrix | |
| void Dune::GroundwaterEquationLocalStiffness< GV, RT >::assemble | ( | const Entity & | e, | |
| int | k = 1 | |||
| ) | [inline, virtual] |
assemble local stiffness matrix for given element and order
On exit the following things have been done:
| [in] | e | a codim 0 entity reference |
| [in] | k | order of Lagrange basis |
Implements Dune::LinearLocalStiffness< GV, RT, 1 >.
| void Dune::GroundwaterEquationLocalStiffness< GV, RT >::assembleBoundaryCondition | ( | const Entity & | e, | |
| int | k = 1 | |||
| ) | [inline, virtual] |
assemble only boundary conditions for given element
On exit the following things have been done:
| [in] | e | a codim 0 entity reference |
| [in] | k | order of Lagrange basis |
Implements Dune::LocalStiffness< GV, RT, m >.
| virtual void Dune::LinearLocalStiffness< GV , RT , m >::assemble | ( | const Entity & | e, | |
| const BlockVector< VBlockType > & | localSolution, | |||
| int | k = 1 | |||
| ) | [inline, virtual, inherited] |
assemble local stiffness matrix including boundary conditions for given element and order
Since this is a base class for linear assemblers, the local solution will be ignored.
| [in] | e | a codim 0 entity reference |
| [in] | localSolution | The current solution on the entity, which is needed by nonlinear assemblers |
| [in] | k | order of Lagrange basis (default is 1) |
Implements Dune::LocalStiffness< GV, RT, m >.
| const MBlockType& Dune::LocalStiffness< GV, RT, m >::mat | ( | int | i, | |
| int | j | |||
| ) | const [inline, inherited] |
access local stiffness matrix
Access elements of the local stiffness matrix. Elements are undefined without prior call to the assemble method.
| const VBlockType& Dune::LocalStiffness< GV, RT, m >::rhs | ( | int | i | ) | const [inline, inherited] |
access right hand side
Access elements of the right hand side vector. Elements are undefined without prior call to the assemble method.
| const BCBlockType& Dune::LocalStiffness< GV, RT, m >::bc | ( | int | i | ) | const [inline, inherited] |
access boundary condition for each dof
Access boundary condition type for each degree of freedom. Elements are undefined without prior call to the assemble method.