3.2-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
Loading...
Searching...
No Matches
Dumux::MimeticOperatorAssemblerTwoP< TypeTag > Class Template Reference

Levelwise assembler. More...

#include <dumux/porousmediumflow/2p/sequential/diffusion/mimetic/operator.hh>

Inheritance diagram for Dumux::MimeticOperatorAssemblerTwoP< TypeTag >:
Inheritance graph

Description

template<class TypeTag>
class Dumux::MimeticOperatorAssemblerTwoP< TypeTag >

Levelwise assembler.

This class serves as a base class for local assemblers. It provides space and access to the local stiffness matrix. The actual assembling is done in a derived class via the virtual assemble method.

Template Parameters
TypeTagThe problem Type Tag

Public Types

using RepresentationType = MatrixType

Public Member Functions

 MimeticOperatorAssemblerTwoP (const GridView &gridView)
template<class Vector>
void calculatePressure (LocalStiffness &loc, Vector &u, Problem &problem)
void initialize ()
 Initialize the CR operator assembler.
const RepresentationTypeoperator* () const
 Returns const reference to operator matrix.
RepresentationTypeoperator* ()
 Returns a reference to operator matrix.
const FaceMapper & faceMapper ()
const FaceMapper & faceMapper () const
template<class LocalStiffness, class Vector>
void assemble (LocalStiffness &loc, Vector &u, Vector &f)
 Assembles global stiffness matrix.

Protected Attributes

const GridView gridView_
FaceMapper faceMapper_
unsigned int size_
RepresentationType A_

Member Typedef Documentation

◆ RepresentationType

template<class TypeTag>
using Dumux::CROperatorAssemblerTwoP< TypeTag >::RepresentationType = MatrixType
inherited

Constructor & Destructor Documentation

◆ MimeticOperatorAssemblerTwoP()

template<class TypeTag>
Dumux::MimeticOperatorAssemblerTwoP< TypeTag >::MimeticOperatorAssemblerTwoP ( const GridView & gridView)
inline

Member Function Documentation

◆ assemble()

template<class TypeTag>
template<class LocalStiffness, class Vector>
void Dumux::CROperatorAssemblerTwoP< TypeTag >::assemble ( LocalStiffness & loc,
Vector & u,
Vector & f )
inlineinherited

Assembles global stiffness matrix.

This method takes an object that can compute local stiffness matrices and assembles the global linear system Au=f.

Parameters
locthe local assembler providing element stiffness and boundary conditions for all elements
usolution, contains initial values on input, Dirichlet values are set. The type of boundary condition for a node is inferred from the values returned by the local assembler. A node is of Neumann type if all elements referring to that node report a Neumann boundary condition, it is set to Dirichlet if a least one element reports a process or Dirichlet boundary condition. The difference between process and Dirichlet is that process always denotes a homogeneous Dirichlet value.
fright hand side is filled by this method

Note that the rows corresponding to nodes at the Dirichlet boundary are filled with trivial equations of the form

\[1\cdot u_i = f_i \]

where \(u_i\) and \(f_i\) are both set to the Dirichlet value at the \(i\)th node.

◆ calculatePressure()

template<class TypeTag>
template<class Vector>
void Dumux::MimeticOperatorAssemblerTwoP< TypeTag >::calculatePressure ( LocalStiffness & loc,
Vector & u,
Problem & problem )
inline

◆ faceMapper() [1/2]

template<class TypeTag>
const FaceMapper & Dumux::CROperatorAssemblerTwoP< TypeTag >::faceMapper ( )
inlineinherited

◆ faceMapper() [2/2]

template<class TypeTag>
const FaceMapper & Dumux::CROperatorAssemblerTwoP< TypeTag >::faceMapper ( ) const
inlineinherited

◆ initialize()

template<class TypeTag>
void Dumux::CROperatorAssemblerTwoP< TypeTag >::initialize ( )
inlineinherited

Initialize the CR operator assembler.

◆ operator*() [1/2]

template<class TypeTag>
RepresentationType & Dumux::CROperatorAssemblerTwoP< TypeTag >::operator* ( )
inlineinherited

Returns a reference to operator matrix.

◆ operator*() [2/2]

template<class TypeTag>
const RepresentationType & Dumux::CROperatorAssemblerTwoP< TypeTag >::operator* ( ) const
inlineinherited

Returns const reference to operator matrix.

Member Data Documentation

◆ A_

template<class TypeTag>
RepresentationType Dumux::CROperatorAssemblerTwoP< TypeTag >::A_
protectedinherited

◆ faceMapper_

template<class TypeTag>
FaceMapper Dumux::CROperatorAssemblerTwoP< TypeTag >::faceMapper_
protectedinherited

◆ gridView_

template<class TypeTag>
const GridView Dumux::CROperatorAssemblerTwoP< TypeTag >::gridView_
protectedinherited

◆ size_

template<class TypeTag>
unsigned int Dumux::CROperatorAssemblerTwoP< TypeTag >::size_
protectedinherited

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