compute local stiffness matrix for conforming finite elements for the full 2-phase pressure equation More...
#include <dumux/porousmediumflow/2p/sequential/diffusion/mimetic/mimetic.hh>

compute local stiffness matrix for conforming finite elements for the full 2-phase pressure equation
Public Types | |
| enum | { m = 1 } |
| enum | { size = 2 * dim } |
| using | VBlockType = Dune::FieldVector<Scalar, m> |
| using | MBlockType |
| using | BCBlockType |
Public Member Functions | |
| MimeticTwoPLocalStiffness (Problem &problem, bool levelBoundaryAsDirichlet, const GridView &gridView, bool procBoundaryAsDirichlet=true) | |
| Constructor. | |
| void | initialize () |
| void | reset () |
| void | setErrorInfo (Scalar maxErr, Scalar dt) |
| void | assemble (const Element &element, int k=1) |
| Assembles local stiffness matrix for given element and order. | |
| void | assemble (const Element &cell, const Dune::BlockVector< VBlockType > &localSolution, int orderOfShapeFns=1) |
| void | assembleBoundaryCondition (const Element &element, int k=1) |
| Assembles only boundary conditions for given element. | |
| template<class Vector> | |
| void | completeRHS (const Element &element, Dune::FieldVector< int, 2 *dim > &local2Global, Vector &f) |
| Scalar | constructPressure (const Element &element, Dune::FieldVector< Scalar, 2 *dim > &pressTrace) |
| void | constructVelocity (const Element &element, Dune::FieldVector< Scalar, 2 *dim > &vel, Dune::FieldVector< Scalar, 2 *dim > &pressTrace, Scalar press) |
| void | constructVelocity (const Element &element, int fIdx, Scalar &vel, Dune::FieldVector< Scalar, 2 *dim > &pressTrace, Scalar press) |
| void | computeReconstructionMatrices (const Element &element, const Dune::FieldMatrix< Scalar, 2 *dim, 2 *dim > &W, Dune::FieldVector< Scalar, 2 *dim > &F, Scalar &dInv) |
| void | assembleElementMatrices (const Element &element, Dune::FieldVector< Scalar, 2 *dim > &faceVol, Dune::FieldVector< Scalar, 2 *dim > &F, Dune::FieldMatrix< Scalar, 2 *dim, 2 *dim > &Pi, Scalar &dInv, Scalar &qmean) |
| const Problem & | problem () const |
| virtual void | assemble (const Entity &e, int k=1)=0 |
| Assembles 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) |
| Prints contents of local stiffness matrix. | |
| const MBlockType & | mat (int i, int j) const |
| Accesses the local stiffness matrix. | |
| const VBlockType & | rhs (int i) const |
| Accesses right hand side. | |
| const BoundaryTypes & | bc (int i) const |
| Accesses boundary condition for each dof. | |
| void | setcurrentsize (int s) |
| Sets the current size of the local stiffness matrix. | |
| int | currentsize () |
| Gets the current size of the local stiffness matrix. | |
Protected Attributes | |
| Dune::Matrix< MBlockType > | A |
| std::vector< VBlockType > | b |
| std::vector< BoundaryTypes > | bctype |
|
inherited |
|
inherited |
| using Dumux::MimeticTwoPLocalStiffness< TypeTag >::VBlockType = Dune::FieldVector<Scalar, m> |
|
inline |
Constructor.
|
pure virtualinherited |
Assembles local stiffness matrix including boundary conditions for given element and order.
On exit the following things have been done:
| e | a codim 0 entity reference |
| k | order of Lagrange basis (default is 1) |
|
inline |
|
inline |
Assembles local stiffness matrix for given element and order.
On exit the following things have been done:
| element | a codim 0 entity reference |
| k | order of CR basis (only k = 1 is implemented) |
|
pure virtualinherited |
assemble only boundary conditions for given element and order
On exit the following things have been done:
| e | a codim 0 entity reference |
| k | order of Lagrange basis (default is 1) |
|
inline |
Assembles only boundary conditions for given element.
On exit the following things have been done:
| element | a codim 0 entity reference |
| k | order of CR basis |
| void Dumux::MimeticTwoPLocalStiffness< TypeTag >::assembleElementMatrices | ( | const Element & | element, |
| Dune::FieldVector< Scalar, 2 *dim > & | faceVol, | ||
| Dune::FieldVector< Scalar, 2 *dim > & | F, | ||
| Dune::FieldMatrix< Scalar, 2 *dim, 2 *dim > & | Pi, | ||
| Scalar & | dInv, | ||
| Scalar & | qmean ) |
|
inlineinherited |
Accesses boundary condition for each dof.
Access boundary condition type for each degree of freedom. Elements are undefined without prior call to the assemble method.
| i | index i |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineinherited |
Gets the current size of the local stiffness matrix.
|
inline |
|
inlineinherited |
Accesses the local stiffness matrix.
Access elements of the local stiffness matrix. Elements are undefined without prior call to the assemble method.
| i | index i |
| j | index j |
|
inlineinherited |
Prints contents of local stiffness matrix.
| s | output stream |
| width | the width |
| precision | the precision |
|
inline |
|
inline |
|
inlineinherited |
Accesses right hand side.
Access elements of the right hand side vector. Elements are undefined without prior call to the assemble method.
| i | index i |
|
inlineinherited |
Sets the current size of the local stiffness matrix.
| s | size which is to be set |
|
inline |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |