Commit fbaccd6c authored by Kilian Weishaupt's avatar Kilian Weishaupt
Browse files

[staggered] Move velocity output header to discretization folder

parent 7a6efe7a
......@@ -32,6 +32,7 @@
#include "subcontrolvolumeface.hh"
#include "facevariables.hh"
#include "boundarytypes.hh"
#include "velocityoutput.hh"
namespace Dumux
{
......@@ -134,6 +135,8 @@ public:
using type = StaggeredFreeFlowBoundaryTypes<size>;
};
SET_TYPE_PROP(StaggeredFreeFlowModel, VelocityOutput, StaggeredFreeFlowVelocityOutput<TypeTag>);
} // namespace Properties
} // namespace Dumux
......
......@@ -19,42 +19,27 @@
/*!
* \file
*
* \brief Velocity output for implicit (porous media) models
* \brief Velocity output for staggered free-flow models
*/
#ifndef DUMUX_STAGGERED_FF_VELOCITYOUTPUT_HH
#define DUMUX_STAGGERED_FF_VELOCITYOUTPUT_HH
#include <dune/common/fvector.hh>
#include <dune/istl/bvector.hh>
#include <dune/geometry/referenceelements.hh>
#include <dumux/common/properties.hh>
#include <dumux/discretization/methods.hh>
namespace Dumux
{
namespace Properties
{
NEW_PROP_TAG(VtkAddVelocity); //!< Returns whether velocity vectors are written into the vtk output
}
/*!
* \brief Velocity output for implicit (porous media) models
* \brief Velocity output for staggered free-flow models
*/
template<class TypeTag>
class StaggeredFreeFlowVelocityOutput
{
using Scalar = typename GET_PROP_TYPE(TypeTag, Scalar);
using Problem = typename GET_PROP_TYPE(TypeTag, Problem);
using SubControlVolume = typename GET_PROP_TYPE(TypeTag, SubControlVolume);
using FVElementGeometry = typename GET_PROP_TYPE(TypeTag, FVElementGeometry);
using SubControlVolumeFace = typename GET_PROP_TYPE(TypeTag, SubControlVolumeFace);
using ElementVolumeVariables = typename GET_PROP_TYPE(TypeTag, ElementVolumeVariables);
using ElementSolutionVector = typename GET_PROP_TYPE(TypeTag, ElementSolutionVector);
using VolumeVariables = typename GET_PROP_TYPE(TypeTag, VolumeVariables);
using FluxVariables = typename GET_PROP_TYPE(TypeTag, FluxVariables);
using BoundaryTypes = typename GET_PROP_TYPE(TypeTag, BoundaryTypes);
using GridView = typename GET_PROP_TYPE(TypeTag, GridView);
using FVGridGeometry = typename GET_PROP_TYPE(TypeTag, FVGridGeometry);
......@@ -64,19 +49,19 @@ class StaggeredFreeFlowVelocityOutput
static const int dim = GridView::dimension;
static const int dimWorld = GridView::dimensionworld;
using Vertex = typename GridView::template Codim<dim>::Entity;
using Element = typename GridView::template Codim<0>::Entity;
using IndexType = typename GridView::IndexSet::IndexType;
using CoordScalar = typename GridView::ctype;
using GlobalPosition = Dune::FieldVector<Scalar, dimWorld>;
using ReferenceElements = Dune::ReferenceElements<CoordScalar, dim>;
public:
/*!
* \brief Constructor initializes the static data with the initial solution.
*
* \param problem The problem to be solved
* \param problem The problem
* \param fvGridGeometry The fvGridGeometry
* \param gridVariables The gridVariables
* \param sol The solution vector
*/
StaggeredFreeFlowVelocityOutput(const Problem& problem,
const FVGridGeometry& fvGridGeometry,
......@@ -87,7 +72,7 @@ public:
, gridVariables_(gridVariables)
, sol_(sol)
{
// check, if velocity output can be used (works only for cubes so far)
// check if velocity vectors shall be written to the VTK file
velocityOutput_ = getParamFromGroup<bool>(GET_PROP_VALUE(TypeTag, ModelParameterGroup), "Vtk.AddVelocity");
}
......@@ -120,7 +105,6 @@ public:
}
}
private:
const Problem& problem_;
const FVGridGeometry& fvGridGeometry_;
......
......@@ -37,7 +37,6 @@
#include "fluxvariables.hh"
#include "fluxvariablescache.hh"
#include "indices.hh"
#include "velocityoutput.hh"
#include "vtkoutputfields.hh"
#include <dumux/material/fluidsystems/gasphase.hh>
......@@ -124,8 +123,6 @@ SET_TYPE_PROP(NavierStokes, EnergyFluxVariables, FreeFlowEnergyFluxVariables<Typ
SET_BOOL_PROP(NavierStokes, EnableEnergyBalance, false);
SET_TYPE_PROP(NavierStokes, VelocityOutput, StaggeredFreeFlowVelocityOutput<TypeTag>);
SET_TYPE_PROP(NavierStokes, VtkOutputFields, NavierStokesVtkOutputFields<TypeTag>);
SET_BOOL_PROP(NavierStokes, EnableInertiaTerms, true);
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment