template<class MDTraits, class
CouplingManager, bool enableEnergyBalance>
class Dumux::FreeFlowPorousMediumCouplingConditionsImplementation< MDTraits, CouplingManager, enableEnergyBalance, false >
Coupling data specialization for non-compositional models.
|
template<bool isNI = enableEnergyBalance, typename std::enable_if_t< isNI, int > = 0> |
Scalar | energyCouplingCondition (const Element< ParentType::porousMediumIndex > &element, const FVElementGeometry< ParentType::porousMediumIndex > &fvGeometry, const ElementVolumeVariables< ParentType::porousMediumIndex > &darcyElemVolVars, const SubControlVolumeFace< ParentType::porousMediumIndex > &scvf, const DiffusionCoefficientAveragingType diffCoeffAvgType=DiffusionCoefficientAveragingType::ffOnly) const |
| Returns the energy flux across the coupling boundary as seen from the Darcy domain. More...
|
|
template<bool isNI = enableEnergyBalance, typename std::enable_if_t< isNI, int > = 0> |
Scalar | energyCouplingCondition (const Element< ParentType::freeFlowMassIndex > &element, const FVElementGeometry< ParentType::freeFlowMassIndex > &fvGeometry, const ElementVolumeVariables< ParentType::freeFlowMassIndex > &stokesElemVolVars, const SubControlVolumeFace< ParentType::freeFlowMassIndex > &scvf, const DiffusionCoefficientAveragingType diffCoeffAvgType=DiffusionCoefficientAveragingType::ffOnly) const |
| Returns the energy flux across the coupling boundary as seen from the free-flow domain. More...
|
|
|
template<std::size_t i, std::size_t j, class CouplingContext > |
static Scalar | massCouplingCondition (Dune::index_constant< i > domainI, Dune::index_constant< j > domainJ, const FVElementGeometry< i > &fvGeometry, const SubControlVolumeFace< i > &scvf, const ElementVolumeVariables< i > &insideVolVars, const CouplingContext &context) |
| Returns the mass flux across the coupling boundary as seen from the Darcy domain. More...
|
|
template<std::size_t i> |
static constexpr auto | couplingPhaseIdx (Dune::index_constant< i > id, int coupledPhaseIdx=0) |
| Returns the corresponding phase index needed for coupling. More...
|
|
template<std::size_t i> |
static constexpr auto | couplingCompIdx (Dune::index_constant< i > id, int coupledCompIdx) |
| Returns the corresponding component index needed for coupling. More...
|
|
template<class Context > |
static auto | darcyPermeability (const FVElementGeometry< freeFlowMomentumIndex > &fvGeometry, const SubControlVolumeFace< freeFlowMomentumIndex > &scvf, const Context &context) |
| Returns the intrinsic permeability of the coupled Darcy element. More...
|
|
template<class Context > |
static NumEqVector< freeFlowMomentumIndex > | momentumCouplingCondition (const FVElementGeometry< freeFlowMomentumIndex > &fvGeometry, const SubControlVolumeFace< freeFlowMomentumIndex > &scvf, const ElementVolumeVariables< freeFlowMomentumIndex > &elemVolVars, const Context &context) |
| Returns the momentum flux across the coupling boundary. More...
|
|
static Scalar | advectiveFlux (const Scalar insideQuantity, const Scalar outsideQuantity, const Scalar volumeFlow, bool insideIsUpstream) |
| Evaluate an advective flux across the interface and consider upwinding. More...
|
|
|
template<std::size_t i, std::size_t j> |
Scalar | transmissibility_ (Dune::index_constant< i > domainI, Dune::index_constant< j > domainJ, const Scalar insideDistance, const Scalar outsideDistance, const Scalar avgQuantityI, const Scalar avgQuantityJ, const DiffusionCoefficientAveragingType diffCoeffAvgType) const |
| Returns the transmissibility used for either molecular diffusion or thermal conductivity. More...
|
|
template<class Scv , class Scvf > |
Scalar | getDistance_ (const Scv &scv, const Scvf &scvf) const |
| Returns the distance between an scvf and the corresponding scv center. More...
|
|
template<std::size_t i, std::size_t j, bool isNI = enableEnergyBalance, typename std::enable_if_t< isNI, int > = 0> |
Scalar | conductiveEnergyFlux_ (Dune::index_constant< i > domainI, Dune::index_constant< j > domainJ, const FVElementGeometry< i > &fvGeometryI, const FVElementGeometry< j > &fvGeometryJ, const SubControlVolumeFace< i > &scvfI, const SubControlVolume< i > &scvI, const SubControlVolume< j > &scvJ, const VolumeVariables< i > &volVarsI, const VolumeVariables< j > &volVarsJ, const DiffusionCoefficientAveragingType diffCoeffAvgType) const |
| Returns the conductive energy flux acorss the interface. More...
|
|
|
template<class CouplingContext > |
static Scalar | pressureAtInterface_ (const FVElementGeometry< freeFlowMomentumIndex > &fvGeometry, const SubControlVolumeFace< freeFlowMomentumIndex > &scvf, const ElementVolumeVariables< freeFlowMomentumIndex > &elemVolVars, const CouplingContext &context) |
| Returns the pressure at the interface. More...
|
|
static Scalar | computeCouplingPhasePressureAtInterface_ (const FVElementGeometry< porousMediumIndex > &fvGeometry, const SubControlVolumeFace< porousMediumIndex > &scvf, const VolumeVariables< porousMediumIndex > &volVars, const typename Element< freeFlowMomentumIndex >::Geometry::GlobalCoordinate &couplingPhaseVelocity, ForchheimersLaw) |
| Returns the pressure at the interface using Forchheimers's law for reconstruction. More...
|
|
static Scalar | computeCouplingPhasePressureAtInterface_ (const FVElementGeometry< porousMediumIndex > &fvGeometry, const SubControlVolumeFace< porousMediumIndex > &scvf, const VolumeVariables< porousMediumIndex > &volVars, const typename Element< freeFlowMomentumIndex >::Geometry::GlobalCoordinate &gravity, const typename Element< freeFlowMomentumIndex >::Geometry::GlobalCoordinate &couplingPhaseVelocity, DarcysLaw) |
| Returns the pressure at the interface using Darcy's law for reconstruction. More...
|
|