26#ifndef DUMUX_TRACER_TEST_PROBLEM_HH
27#define DUMUX_TRACER_TEST_PROBLEM_HH
29#include <dune/grid/yaspgrid.hh>
44template <
class TypeTag>
45class TracerTestProblem;
55template<
class TypeTag>
57template<
class TypeTag>
59template<
class TypeTag>
63template<
class TypeTag>
67template<
class TypeTag>
71template<
class TypeTag>
80template<
class TypeTag>
82template<
class TypeTag>
86template<
class TypeTag>
88 TracerFluidSystem<TypeTag>>
93 using Element =
typename GridView::template Codim<0>::Entity;
95 using SubControlVolume =
typename FVElementGeometry::SubControlVolume;
111 {
return "tracer_" + std::to_string(compIdx); }
115 {
return "Groundwater"; }
124 const Problem& problem,
125 const Element& element,
126 const SubControlVolume& scv)
130template<
class TypeTag>
148template <
class TypeTag>
163 static constexpr bool useMoles = getPropValue<TypeTag, Properties::UseMoles>();
165 using Element =
typename GridGeometry::GridView::template Codim<0>::Entity;
166 using GlobalPosition =
typename Element::Geometry::GlobalCoordinate;
174 std::cout<<
"problem uses mole fractions" <<
'\n';
176 std::cout<<
"problem uses mass fractions" <<
'\n';
192 BoundaryTypes values;
193 values.setAllNeumann();
213 PrimaryVariables initialValues(0.0);
214 if (globalPos[1] < 0.1 + eps_)
217 initialValues = 1e-9;
219 initialValues = 1e-9*FluidSystem::molarMass(0)/this->
spatialParams().fluidMolarMass(globalPos);
221 return initialValues; }
226 static constexpr Scalar eps_ = 1e-6;
Properties for all models using cell-centered finite volume scheme with TPFA.
make the local view function available whenever we use the grid geometry
Definition: adapt.hh:29
typename Properties::Detail::GetPropImpl< TypeTag, Property >::type::type GetPropType
get the type alias defined in the property (equivalent to old macro GET_PROP_TYPE(....
Definition: propertysystem.hh:149
Base class for all finite-volume problems.
Definition: common/fvproblem.hh:50
const GridGeometry & gridGeometry() const
The finite volume grid geometry.
Definition: common/fvproblem.hh:588
The DUNE grid type.
Definition: common/properties.hh:57
Property to specify the type of a problem which has to be solved.
Definition: common/properties.hh:69
Property whether to use moles or kg as amount unit for balance equations.
Definition: common/properties.hh:102
Definition: common/properties.hh:169
If disabled, the volume variables are not stored (reduces memory, but is slower)
Definition: common/properties.hh:178
specifies if data on flux vars should be saved (faster, but more memory consuming)
Definition: common/properties.hh:188
specifies if the parameters for the diffusive fluxes depend on the solution
Definition: common/properties.hh:214
The type of the spatial parameters object.
Definition: common/properties.hh:221
The type of the fluid system to use.
Definition: common/properties.hh:223
Fluid system base class.
Definition: fluidsystems/base.hh:45
Base class for all fully implicit porous media problems.
Definition: dumux/porousmediumflow/problem.hh:39
SpatialParams & spatialParams()
Returns the spatial parameters object.
Definition: dumux/porousmediumflow/problem.hh:146
GetPropType< TypeTag, Properties::SpatialParams > SpatialParams
Export spatial parameter type.
Definition: dumux/porousmediumflow/problem.hh:58
Definition of a problem, for the tracer problem: A rotating velocity field mixes a tracer band in a p...
Definition: 1ptracer/problem_tracer.hh:150
BoundaryTypes boundaryTypesAtPos(const GlobalPosition &globalPos) const
Specifies which kind of boundary condition should be used for which equation on a given boundary segm...
Definition: 1ptracer/problem_tracer.hh:190
PrimaryVariables initialAtPos(const GlobalPosition &globalPos) const
Evaluates the initial value for a control volume.
Definition: 1ptracer/problem_tracer.hh:211
TracerTestProblem(std::shared_ptr< const GridGeometry > gridGeometry)
Definition: 1ptracer/problem_tracer.hh:169
Definition: 1ptracer/problem_tracer.hh:50
std::tuple< Tracer > InheritsFrom
Definition: 1ptracer/problem_tracer.hh:50
Definition: 1ptracer/problem_tracer.hh:51
std::tuple< TracerTest, CCTpfaModel > InheritsFrom
Definition: 1ptracer/problem_tracer.hh:51
Dune::YaspGrid< 2 > type
Definition: 1ptracer/problem_tracer.hh:64
GetPropType< TypeTag, Properties::GridGeometry > GridGeometry
Definition: 1ptracer/problem_tracer.hh:74
GetPropType< TypeTag, Properties::Scalar > Scalar
Definition: 1ptracer/problem_tracer.hh:75
A simple fluid system with one tracer component.
Definition: 1ptracer/problem_tracer.hh:89
static constexpr int numComponents
The number of components.
Definition: 1ptracer/problem_tracer.hh:107
static Scalar binaryDiffusionCoefficient(unsigned int compIdx, const Problem &problem, const Element &element, const SubControlVolume &scv)
Definition: 1ptracer/problem_tracer.hh:123
static std::string componentName(int compIdx)
Human readable component name (index compIdx) (for vtk output)
Definition: 1ptracer/problem_tracer.hh:110
static std::string phaseName(int phaseIdx=0)
Human readable phase name (index phaseIdx) (for velocity vtk output)
Definition: 1ptracer/problem_tracer.hh:114
static constexpr bool isTracerFluidSystem()
If the fluid system only contains tracer components.
Definition: 1ptracer/problem_tracer.hh:99
static Scalar molarMass(unsigned int compIdx)
Molar mass in kg/mol of the component with index compIdx.
Definition: 1ptracer/problem_tracer.hh:118
static constexpr int getMainComponent(int phaseIdx)
No component is the main component.
Definition: 1ptracer/problem_tracer.hh:103
Definition of the spatial parameters for the tracer problem.
Definition: porousmediumflow/tracer/1ptracer/spatialparams_tracer.hh:41
Definition of a problem for the tracer problem: A rotating velocity field mixes a tracer band in a po...
Definition: test/porousmediumflow/tracer/constvel/problem.hh:175
Adaption of the fully implicit scheme to the tracer transport model.
Base class for all porous media problems.
Definition of the spatial parameters for the tracer problem.