25#ifndef DUMUX_STAGGERED_FV_ASSEMBLER_HH
26#define DUMUX_STAGGERED_FV_ASSEMBLER_HH
31#include <dune/common/indices.hh>
55template<
class TypeTag, DiffMethod diffMethod,
bool isImplicit = true>
57 StaggeredCouplingManager<StaggeredMultiDomainTraits<TypeTag, TypeTag>>,
58 diffMethod, isImplicit>
82 static_assert(
isImplicit,
"Explicit assembler for stationary problem doesn't make sense!");
90 std::shared_ptr<const TimeLoop> timeLoop,
An enum class to define various differentiation methods available in order to compute the derivatives...
The available discretization methods in Dumux.
The interface of the coupling manager for multi domain problems.
Linear algebra traits for mixeddimension problems.
Adaption of the non-isothermal two-phase two-component flow model to problems with CO2.
Definition adapt.hh:29
typename GetProp< TypeTag, Property >::type GetPropType
get the type alias defined in the property
Definition propertysystem.hh:180
const auto & gridVariables() const
Definition staggeredfvassembler.hh:105
auto & gridVariables()
Definition staggeredfvassembler.hh:102
const GridGeometry & gridGeometry() const
Definition staggeredfvassembler.hh:108
StaggeredFVAssembler(std::shared_ptr< const Problem > problem, std::shared_ptr< const GridGeometry > gridGeometry, std::shared_ptr< GridVariables > gridVariables)
The constructor for stationary problems.
Definition staggeredfvassembler.hh:74
GetPropType< TypeTag, Properties::GridGeometry > GridGeometry
Definition staggeredfvassembler.hh:69
StaggeredFVAssembler(std::shared_ptr< const Problem > problem, std::shared_ptr< const GridGeometry > gridGeometry, std::shared_ptr< GridVariables > gridVariables, std::shared_ptr< const TimeLoop > timeLoop, const SolutionVector &prevSol)
The constructor for instationary problems.
Definition staggeredfvassembler.hh:87
GetPropType< TypeTag, Properties::GridVariables > GridVariables
Definition staggeredfvassembler.hh:70
typename ParentType::CouplingManager CouplingManager
Definition staggeredfvassembler.hh:71
Manages the handling of time dependent problems.
Definition common/timeloop.hh:68
static constexpr bool isImplicit()
Definition multidomain/fvassembler.hh:129
StaggeredCouplingManager< StaggeredMultiDomainTraits< TypeTag, TypeTag > > CouplingManager
Definition multidomain/fvassembler.hh:124
const auto & gridGeometry(Dune::index_constant< i > domainId) const
Definition multidomain/fvassembler.hh:442
const SolutionVector & prevSol() const
Definition multidomain/fvassembler.hh:473
GridVariables< i > & gridVariables(Dune::index_constant< i > domainId)
Definition multidomain/fvassembler.hh:452
std::shared_ptr< CouplingManager > couplingManager_
Definition multidomain/fvassembler.hh:505
const auto & problem(Dune::index_constant< i > domainId) const
Definition multidomain/fvassembler.hh:437
MultiDomainFVAssembler(ProblemTuple problem, GridGeometryTuple gridGeometry, GridVariablesTuple gridVariables, std::shared_ptr< CouplingManager > couplingManager)
Definition multidomain/fvassembler.hh:197
Base coupling manager for the staggered discretization.
Definition staggeredcouplingmanager.hh:43
A linear system assembler (residual and Jacobian) for finite volume schemes with multiple domains.
Declares all properties used in Dumux.
Manages the handling of time dependent problems.