14#ifndef DUMUX_DISCRETIZATION_CC_MPFA_COMPUTE_TRANSMISSIBILITY_HH
15#define DUMUX_DISCRETIZATION_CC_MPFA_COMPUTE_TRANSMISSIBILITY_HH
17#include <dune/common/typetraits.hh>
18#include <dune/common/fvector.hh>
38template<
class EG,
class IVSubControlVolume,
class Tensor>
39Dune::FieldVector<typename Tensor::field_type, IVSubControlVolume::myDimension>
41 const IVSubControlVolume& scv,
42 const typename EG::SubControlVolumeFace& scvf,
44 typename IVSubControlVolume::ctype extrusionFactor)
46 Dune::FieldVector<typename Tensor::field_type, IVSubControlVolume::myDimension> wijk;
47 for (
unsigned int dir = 0; dir < IVSubControlVolume::myDimension; ++dir)
48 wijk[dir] =
vtmv(scvf.unitOuterNormal(), t, scv.nu(dir));
51 wijk *= Extrusion::area(fvGeometry, scvf)*extrusionFactor;
70template< class EG, class IVSubControlVolume, class Tensor, std::enable_if_t< Dune::IsNumber<Tensor>::value,
int > = 1 >
71Dune::FieldVector<Tensor, IVSubControlVolume::myDimension>
73 const IVSubControlVolume& scv,
74 const typename EG::SubControlVolumeFace& scvf,
76 typename IVSubControlVolume::ctype extrusionFactor)
78 Dune::FieldVector<Tensor, IVSubControlVolume::myDimension> wijk;
79 for (
unsigned int dir = 0; dir < IVSubControlVolume::myDimension; ++dir)
80 wijk[dir] =
vtmv(scvf.unitOuterNormal(), t, scv.nu(dir));
83 wijk *= Extrusion::area(fvGeometry, scvf)*extrusionFactor;
Traits extracting the public Extrusion type from T Defaults to NoExtrusion if no such type is found.
Definition: extrusion.hh:155
Helper classes to compute the integration elements.
Dune::FieldVector< typename Tensor::field_type, IVSubControlVolume::myDimension > computeMpfaTransmissibility(const EG &fvGeometry, const IVSubControlVolume &scv, const typename EG::SubControlVolumeFace &scvf, const Tensor &t, typename IVSubControlVolume::ctype extrusionFactor)
Free function to evaluate the Mpfa transmissibility associated with the flux (in the form of flux = t...
Definition: mpfa/computetransmissibility.hh:40
Dune::DenseMatrix< MAT >::value_type vtmv(const Dune::DenseVector< V1 > &v1, const Dune::DenseMatrix< MAT > &M, const Dune::DenseVector< V2 > &v2)
Evaluates the scalar product of a vector v2, projected by a matrix M, with a vector v1.
Definition: math.hh:851
Define some often used mathematical functions.
typename Extrusion< T >::type Extrusion_t
Convenience alias for obtaining the extrusion type.
Definition: extrusion.hh:166