A base class for all face-centered staggered local assemblers. More...
#include <dumux/multidomain/subdomainfcdiamondlocalassembler.hh>
A base class for all face-centered staggered local assemblers.
id | the id of the sub domain |
TypeTag | the TypeTag |
Assembler | the assembler type |
Implementation | the actual implementation type |
implicit | Specifies whether the time discretization is implicit or not not (i.e. explicit) |
Public Types | |
using | ElementResidualVector = typename ParentType::LocalResidual::ElementResidualVector |
export element residual vector type More... | |
Public Member Functions | |
SubDomainFaceCenteredDiamondLocalAssemblerBase (const Assembler &assembler, const Element &element, const SolutionVector &curSol, CouplingManager &couplingManager) | |
template<class JacobianMatrixRow , class GridVariablesTuple > | |
void | assembleJacobianAndResidual (JacobianMatrixRow &jacRow, SubSolutionVector &res, GridVariablesTuple &gridVariables) |
Computes the derivatives with respect to the given element and adds them to the global matrix. The element residual is written into the right hand side. More... | |
template<std::size_t otherId, class JacRow , class GridVariables , typename std::enable_if_t<(otherId==id), int > = 0> | |
void | assembleJacobianCoupling (Dune::index_constant< otherId > domainJ, JacRow &jacRow, const ElementResidualVector &res, GridVariables &gridVariables) |
Assemble the entries in a coupling block of the jacobian. There is no coupling block between a domain and itself. More... | |
template<std::size_t otherId, class JacRow , class GridVariables , typename std::enable_if_t<(otherId !=id), int > = 0> | |
void | assembleJacobianCoupling (Dune::index_constant< otherId > domainJ, JacRow &jacRow, const ElementResidualVector &res, GridVariables &gridVariables) |
Assemble the entries in a coupling block of the jacobian. More... | |
ElementResidualVector | evalLocalSourceResidual (const Element &element, const ElementVolumeVariables &elemVolVars) const |
Evaluates the local source term for an element and given element volume variables. More... | |
ElementResidualVector | evalLocalSourceResidual (const Element &neighbor) const |
Evaluates the local source term depending on time discretization scheme. More... | |
void | bindLocalViews () |
Prepares all local views necessary for local assembly. More... | |
template<std::size_t i = domainId> | |
const Problem & | problem (Dune::index_constant< i > dId=domainId) const |
return reference to the underlying problem More... | |
template<std::size_t i = domainId> | |
const auto & | curSol (Dune::index_constant< i > dId=domainId) const |
return reference to the underlying problem More... | |
CouplingManager & | couplingManager () |
return reference to the coupling manager More... | |
Static Public Attributes | |
static constexpr auto | domainId = typename Dune::index_constant<id>() |
export the domain id of this sub-domain More... | |
using Dumux::SubDomainFaceCenteredDiamondLocalAssemblerBase< id, TypeTag, Assembler, Implementation, dm, implicit >::ElementResidualVector = typename ParentType::LocalResidual::ElementResidualVector |
export element residual vector type
|
inlineexplicit |
|
inline |
Computes the derivatives with respect to the given element and adds them to the global matrix. The element residual is written into the right hand side.
|
inline |
Assemble the entries in a coupling block of the jacobian. There is no coupling block between a domain and itself.
|
inline |
Assemble the entries in a coupling block of the jacobian.
|
inline |
Prepares all local views necessary for local assembly.
|
inline |
return reference to the coupling manager
|
inline |
return reference to the underlying problem
|
inline |
Evaluates the local source term for an element and given element volume variables.
|
inline |
Evaluates the local source term depending on time discretization scheme.
|
inline |
return reference to the underlying problem
|
staticconstexpr |
export the domain id of this sub-domain