version 3.9-dev
Dumux::EmbeddedCoupling::ExtendedSourceStencil< CouplingManager > Class Template Reference

A class managing an extended source stencil. More...

#include <dumux/multidomain/embedded/extendedsourcestencil.hh>

Inheritance diagram for Dumux::EmbeddedCoupling::ExtendedSourceStencil< CouplingManager >:

Description

template<class CouplingManager>
class Dumux::EmbeddedCoupling::ExtendedSourceStencil< CouplingManager >
Template Parameters
CouplingManagerthe coupling manager type

Public Member Functions

template<std::size_t id, class JacobianPattern >
void extendJacobianPattern (const CouplingManager &couplingManager, Dune::index_constant< id > domainI, JacobianPattern &pattern) const
 extend the jacobian pattern of the diagonal block of domain i by those entries that are not already in the uncoupled pattern More...
 
template<std::size_t i, class LocalAssemblerI , class JacobianMatrixDiagBlock , class GridVariables >
void evalAdditionalDomainDerivatives (CouplingManager &couplingManager, Dune::index_constant< i > domainI, const LocalAssemblerI &localAssemblerI, JacobianMatrixDiagBlock &A, GridVariables &gridVariables) const
 evaluate additional derivatives of the element residual of a domain with respect to dofs in the same domain that are not in the regular stencil (per default this is not the case) More...
 
void clear ()
 clear the internal data More...
 
CouplingManager::template CouplingStencils< bulkIdx > & stencil ()
 return a reference to the stencil More...
 
const CouplingManager::template CouplingStencils< bulkIdx > & stencil () const
 return a const reference to the stencil More...
 

Member Function Documentation

◆ clear()

◆ evalAdditionalDomainDerivatives()

template<class CouplingManager >
template<std::size_t i, class LocalAssemblerI , class JacobianMatrixDiagBlock , class GridVariables >
void Dumux::EmbeddedCoupling::ExtendedSourceStencil< CouplingManager >::evalAdditionalDomainDerivatives ( CouplingManager couplingManager,
Dune::index_constant< i >  domainI,
const LocalAssemblerI &  localAssemblerI,
JacobianMatrixDiagBlock &  A,
GridVariables &  gridVariables 
) const
inline
Note
Such additional dependencies can arise from the coupling, e.g. if a coupling source term depends on a non-local average of a quantity of the same domain
This is the same for box and cc

◆ extendJacobianPattern()

template<class CouplingManager >
template<std::size_t id, class JacobianPattern >
void Dumux::EmbeddedCoupling::ExtendedSourceStencil< CouplingManager >::extendJacobianPattern ( const CouplingManager couplingManager,
Dune::index_constant< id >  domainI,
JacobianPattern &  pattern 
) const
inline
Note
Such additional dependencies can arise from the coupling, e.g. if a coupling source term depends on a non-local average of a quantity of the same domain

◆ stencil() [1/2]

template<class CouplingManager >
CouplingManager::template CouplingStencils< bulkIdx > & Dumux::EmbeddedCoupling::ExtendedSourceStencil< CouplingManager >::stencil ( )
inline

◆ stencil() [2/2]

template<class CouplingManager >
const CouplingManager::template CouplingStencils< bulkIdx > & Dumux::EmbeddedCoupling::ExtendedSourceStencil< CouplingManager >::stencil ( ) const
inline

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