12#ifndef DUMUX_IO_VELOCITYOUTPUT_HH
13#define DUMUX_IO_VELOCITYOUTPUT_HH
17#include <dune/common/fvector.hh>
18#include <dumux/common/concepts/variables_.hh>
26template<
class Gr
idVariables>
29template<Concept::FVGr
idVariables Gr
idVariables>
32 using Scalar =
typename GridVariables::Scalar;
33 static constexpr int dimWorld = GridVariables::GridGeometry::GridView::dimensionworld;
34 using ElementVolumeVariables =
typename GridVariables::GridVolumeVariables::LocalView;
35 using ElementFluxVarsCache =
typename GridVariables::GridFluxVariablesCache::LocalView;
36 using FVElementGeometry =
typename GridVariables::GridGeometry::LocalView;
37 using Element =
typename GridVariables::GridGeometry::GridView::template Codim<0>::Entity;
62 virtual std::string
phaseName(
int phaseIdx)
const {
return "none"; }
73 const Element& element,
74 const FVElementGeometry& fvGeometry,
75 const ElementVolumeVariables& elemVolVars,
76 const ElementFluxVarsCache& elemFluxVarsCache,
81template<Concept::Gr
idVariables Gr
idVariables>
82class VelocityOutput<GridVariables>
84 using Scalar =
typename GridVariables::Scalar;
85 static constexpr int dimWorld = GridVariables::GridGeometry::GridView::dimensionworld;
86 using GridVariablesCache =
typename GridVariables::GridVariablesCache;
87 using ElementVariables =
typename GridVariablesCache::LocalView;
88 using FVElementGeometry =
typename GridVariables::GridGeometry::LocalView;
89 using Element =
typename GridVariables::GridGeometry::GridView::template Codim<0>::Entity;
105 virtual std::string
phaseName(
int phaseIdx)
const {
return "none"; }
112 const Element& element,
113 const FVElementGeometry& fvGeometry,
114 const ElementVariables& elemVars,
virtual FieldType fieldType() const
returns the field type
Definition: io/velocityoutput.hh:65
std::vector< Dune::FieldVector< Scalar, dimWorld > > VelocityVector
Definition: io/velocityoutput.hh:40
FieldType
A container for possible velocity data types.
Definition: io/velocityoutput.hh:46
virtual std::string phaseName(int phaseIdx) const
returns the phase name of a given phase index
Definition: io/velocityoutput.hh:62
VelocityOutput()=default
Default constructor.
virtual bool enableOutput() const
returns whether or not velocity output is enabled
Definition: io/velocityoutput.hh:59
virtual int numFluidPhases() const
returns the number of phases
Definition: io/velocityoutput.hh:68
virtual void calculateVelocity(VelocityVector &velocity, const Element &element, const FVElementGeometry &fvGeometry, const ElementVariables &elemVars, int phaseIdx) const
Definition: io/velocityoutput.hh:111
virtual void calculateVelocity(VelocityVector &velocity, const Element &element, const FVElementGeometry &fvGeometry, const ElementVolumeVariables &elemVolVars, const ElementFluxVarsCache &elemFluxVarsCache, int phaseIdx) const
Definition: io/velocityoutput.hh:72
virtual ~VelocityOutput()
virtual destructor
Definition: io/velocityoutput.hh:56
Velocity output for implicit (porous media) models.
Definition: io/velocityoutput.hh:27