- Home
- About DUNE
- Download
- Documentation
- Community
- Development
#include <laplace.hh>
Inheritance diagram for Dune::LaplaceLocalStiffness< GridView, RT >:

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
GridView a DUNE grid view type RT type used for return values
Public Types | |
| enum | |
| Number of components for the global assembler to collect. | |
|
typedef FieldMatrix< RT, m, m > | MBlockType |
| One entry in the stiffness matrix. | |
| typedef FieldVector< RT, m > | VBlockType |
| One entry in the global vectors. | |
|
typedef array< BoundaryConditions::Flags, m > | BCBlockType |
| Componentwise boundary conditions. | |
Public Member Functions | |
| LaplaceLocalStiffness (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) |
| should allow to assemble boundary conditions only | |
| 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 | |
| virtual void | assemble (const Entity &e, int k=1)=0 |
| assemble local stiffness matrix including boundary conditions for given element and order | |
| virtual void | assemble (const Entity &e, const BlockVector< VBlockType > &localSolution, int k=1)=0 |
| assemble local stiffness matrix including boundary conditions for given element and order | |
| virtual void | assembleBoundaryCondition (const Entity &e, int k=1)=0 |
| assemble only 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::LaplaceLocalStiffness< GridView, 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< GridView, RT, 1 >.
| virtual void Dune::LinearLocalStiffness< GridView , 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) |
| virtual void Dune::LocalStiffness< GV, RT, m >::assemble | ( | const Entity & | e, | |
| int | k = 1 | |||
| ) | [pure virtual, inherited] |
assemble local stiffness matrix including boundary conditions 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 (default is 1) |
Implemented in Dune::GroundwaterEquationLocalStiffness< GV, RT >, Dune::LinearLocalStiffness< GV, RT, m >, and Dune::LinearLocalStiffness< GV, RT, 1 >.
| virtual void Dune::LocalStiffness< GV, RT, m >::assemble | ( | const Entity & | e, | |
| const BlockVector< VBlockType > & | localSolution, | |||
| int | k = 1 | |||
| ) | [pure virtual, inherited] |
assemble local stiffness matrix including boundary conditions for given element and order
Unlike the method with only two arguments, this one additionally takes the local solution in order to allow assembly of nonlinear operators.
On exit the following things have been done:
| [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) |
Implemented in Dune::LinearLocalStiffness< GV, RT, m >, and Dune::LinearLocalStiffness< GV, RT, 1 >.
| virtual void Dune::LocalStiffness< GV, RT, m >::assembleBoundaryCondition | ( | const Entity & | e, | |
| int | k = 1 | |||
| ) | [pure virtual, inherited] |
assemble only boundary conditions 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 (default is 1) |
Implemented in Dune::GroundwaterEquationLocalStiffness< GV, RT >.
| 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.