3.3.0
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
Public Member Functions | List of all members
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 >

A class managing an extended source stencil.

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 SolutionVector , class JacobianMatrixDiagBlock , class GridVariables >
void evalAdditionalDomainDerivatives (CouplingManager &couplingManager, Dune::index_constant< i > domainI, const LocalAssemblerI &localAssemblerI, const SolutionVector &curSol, 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...
 

Member Function Documentation

◆ clear()

clear the internal data

◆ evalAdditionalDomainDerivatives()

template<class CouplingManager >
template<std::size_t i, class LocalAssemblerI , class SolutionVector , class JacobianMatrixDiagBlock , class GridVariables >
void Dumux::EmbeddedCoupling::ExtendedSourceStencil< CouplingManager >::evalAdditionalDomainDerivatives ( CouplingManager couplingManager,
Dune::index_constant< i >  domainI,
const LocalAssemblerI &  localAssemblerI,
const SolutionVector &  curSol,
JacobianMatrixDiagBlock &  A,
GridVariables &  gridVariables 
) const
inline

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)

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

extend the jacobian pattern of the diagonal block of domain i by those entries that are not already in the uncoupled pattern

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()

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

return a reference to the stencil


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