48    const Problem& problem,
 
   49    const typename FVElementGeometry::Element& element,
 
   50    const FVElementGeometry& fvGeometry,
 
   51    const ElementVolumeVariables& elemVolVars,
 
   52    const typename FVElementGeometry::SubControlVolume& scv
 
   54    if (problem.spatialParams().brinkmanEpsilon(element, fvGeometry, scv) > 0.0)
 
   56        const auto brinkmanEpsilon = problem.spatialParams().brinkmanEpsilon(element, fvGeometry, scv);
 
   57        const auto invK = problem.spatialParams().inversePermeability(element, fvGeometry, scv);
 
   58        const auto mu = problem.effectiveViscosity(element, fvGeometry, scv);
 
   60        using DM = 
typename FVElementGeometry::GridGeometry::DiscretizationMethod;
 
   63            const auto velocity = elemVolVars[scv].velocity();
 
   64            source -= mu * brinkmanEpsilon * 
mv(invK, velocity);
 
   68            if constexpr (Dune::IsNumber<std::decay_t<
decltype(invK)>>::value)
 
   70                const auto velocity = elemVolVars[scv].velocity();
 
   71                source -= mu * brinkmanEpsilon * invK * velocity;
 
   76                const auto getVelocitySCV = [&](
const auto& scv){ 
return elemVolVars[scv].velocity(); };
 
   78                source -= mu * brinkmanEpsilon * 
mv(invK, velocity)[scv.dofAxis()];
 
   82            DUNE_THROW(Dune::NotImplemented, 
"Brinkman term only implemented for CVFE and Staggered");
 
 
typename NumEqVectorTraits< PrimaryVariables >::type NumEqVector
A vector with the same size as numbers of equations This is the default implementation and has to be ...
Definition numeqvector.hh:34
Dune::DenseVector< V >::derived_type mv(const Dune::DenseMatrix< MAT > &M, const Dune::DenseVector< V > &v)
Returns the result of the projection of a vector v with a Matrix M.
Definition math.hh:829
void addBrinkmanTerm(NumEqVector &source, const Problem &problem, const typename FVElementGeometry::Element &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const typename FVElementGeometry::SubControlVolume &scv)
Definition brinkman.hh:46
static auto faceVelocity(const SubControlVolume &scv, const FVElementGeometry &fvGeometry, const VelocityHelper &getNormalVelocityDofValue)
Return the velocity vector at dof position given an scv.
Definition velocityreconstruction.hh:52