diff --git a/dumux/discretization/staggered/properties.hh b/dumux/discretization/staggered/properties.hh index c9a2d811b4e703caab7bae4ab0d2310849f7a55c..5ea414b538636c298e54db98c0faeade062a6d27 100644 --- a/dumux/discretization/staggered/properties.hh +++ b/dumux/discretization/staggered/properties.hh @@ -87,19 +87,6 @@ public: typedef Dumux::CCSubControlVolume<ScvGeometry, IndexType> type; }; -// SET_PROP(StaggeredModel, SubControlVolumeFace) -// { -// private: -// using GridView = typename GET_PROP_TYPE(TypeTag, GridView); -// using Scalar = typename GridView::ctype; -// static const int dim = GridView::dimension; -// static const int dimWorld = GridView::dimensionworld; -// using ScvfGeometry = Dune::MultiLinearGeometry<Scalar, dim-1, dimWorld>; -// using IndexType = typename GridView::IndexSet::IndexType; -// public: -// using type = BoxSubControlVolumeFace<ScvfGeometry, IndexType>; -// }; - SET_TYPE_PROP(StaggeredModel, GlobalFaceVars, Dumux::StaggeredGlobalFaceVariables<TypeTag>); //! Set the default for the ElementBoundaryTypes diff --git a/dumux/freeflow/properties.hh b/dumux/freeflow/properties.hh new file mode 100644 index 0000000000000000000000000000000000000000..efc76d8cf612eaa9fba78724f8bb999739c53d90 --- /dev/null +++ b/dumux/freeflow/properties.hh @@ -0,0 +1,138 @@ +// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- +// vi: set et ts=4 sw=4 sts=4: +/***************************************************************************** + * See the file COPYING for full copying permissions. * + * * + * This program is free software: you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation, either version 2 of the License, or * + * (at your option) any later version. * + * * + * This program is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with this program. If not, see <http://www.gnu.org/licenses/>. * + *****************************************************************************/ +/*! + * \ingroup Properties + * \file + * + * \brief Defines a type tag and some properties for free flow models. + */ + +#ifndef DUMUX_FREE_FLOW_PROPERTIES_HH +#define DUMUX_FREE_FLOW_PROPERTIES_HH + +#include <dumux/io/vtkoutputmodule.hh> + +// #include <dumux/FreeFlow/implicit/fluxvariables.hh> +// #include <dumux/FreeFlow/implicit/fluxvariablescache.hh> +// #include <dumux/FreeFlow/nonisothermal/implicit/localresidual.hh> +// #include <dumux/FreeFlow/compositional/primaryvariableswitch.hh> +// #include <dumux/FreeFlow/implicit/velocityoutput.hh> + +// #include <dumux/discretization/darcyslaw.hh> +// #include <dumux/discretization/fickslaw.hh> +// #include <dumux/discretization/fourierslaw.hh> +#include <dumux/discretization/staggered/freeflow/staggeredgeometryhelper.hh> +#include <dumux/discretization/staggered/freeflow/subcontrolvolumeface.hh> +#include <dumux/discretization/staggered/freeflow/facevariables.hh> +#include <dumux/implicit/staggered/primaryvariables.hh> + +#include "./staggered/boundarytypes.hh" + +namespace Dumux +{ +namespace Properties +{ +//! Type tag for models involving flow in porous media +NEW_TYPE_TAG(FreeFlow); + +SET_INT_PROP(FreeFlow, NumEqFace, 1); //!< set the number of equations to 1 + + + +//! The sub-controlvolume face +SET_PROP(FreeFlow, SubControlVolumeFace) +{ +private: + using Grid = typename GET_PROP_TYPE(TypeTag, Grid); + using ScvfGeometry = typename Grid::template Codim<1>::Geometry; + using IndexType = typename Grid::LeafGridView::IndexSet::IndexType; +public: + typedef Dumux::StaggeredSubControlVolumeFace<ScvfGeometry, IndexType> type; +}; + +//! The geometry helper required for the stencils, etc. +SET_PROP(FreeFlow, StaggeredGeometryHelper) +{ +private: + using GridView = typename GET_PROP_TYPE(TypeTag, GridView); +public: + using type = StaggeredGeometryHelper<GridView>; +}; + +//! The variables living on the faces +SET_TYPE_PROP(FreeFlow, FaceVariables, StaggeredFaceVariables<TypeTag>); + + +SET_PROP(FreeFlow, BoundaryValues) +{ +private: + using CellCenterBoundaryValues = typename GET_PROP_TYPE(TypeTag, CellCenterPrimaryVariables); + using GridView = typename GET_PROP_TYPE(TypeTag, GridView); + using FaceBoundaryValues = Dune::FieldVector<typename GET_PROP_TYPE(TypeTag, Scalar), + GridView::dimension>; +public: + using type = StaggeredPrimaryVariables<TypeTag, CellCenterBoundaryValues, FaceBoundaryValues>; +}; + +//! Boundary types at a single degree of freedom +SET_TYPE_PROP(FreeFlow, + BoundaryTypes, + StaggeredFreeFlowBoundaryTypes<GET_PROP_VALUE(TypeTag, NumEq)>); + + + + + + +// //! The flux variables for models involving flow in porous media +// SET_TYPE_PROP(FreeFlow, FluxVariables, PorousMediumFluxVariables<TypeTag>); +// +// //! The flux variables cache class for models involving flow in porous media +// SET_TYPE_PROP(FreeFlow, FluxVariablesCache, PorousMediumFluxVariablesCache<TypeTag>); +// +// //! By default, we use darcy's law for the advective fluxes +// SET_TYPE_PROP(FreeFlow, AdvectionType, DarcysLaw<TypeTag>); +// +// //! By default, we use fick's law for the diffusive fluxes +// SET_TYPE_PROP(FreeFlow, MolecularDiffusionType, FicksLaw<TypeTag>); +// +// //! By default, we use fourier's law as the default for heat conduction fluxes +// SET_TYPE_PROP(FreeFlow, HeatConductionType, FouriersLaw<TypeTag>); +// +// //! By default, parameters are solution-dependent +// SET_BOOL_PROP(FreeFlow, SolutionDependentAdvection, true); +// SET_BOOL_PROP(FreeFlow, SolutionDependentMolecularDiffusion, true); +// SET_BOOL_PROP(FreeFlow, SolutionDependentHeatConduction, true); +// +// //! By default, we evaluate the permeability in the volume +// SET_BOOL_PROP(FreeFlow, EvaluatePermeabilityAtScvfIP, false); +// +// //! The default implementation of the energy balance equation for flow problems in porous media. +// SET_TYPE_PROP(FreeFlow, EnergyLocalResidual, EnergyLocalResidual<TypeTag> ); + +//! Velocity output +// SET_TYPE_PROP(FreeFlow, VelocityOutput, ImplicitVelocityOutput<TypeTag>); + +//! By default, we set an empty primary variables switch +// SET_TYPE_PROP(FreeFlow, PrimaryVariableSwitch, NoPrimaryVariableSwitch<TypeTag>); + +} // namespace Properties +} // namespace Dumux + + #endif diff --git a/dumux/freeflow/staggered/localresidual.hh b/dumux/freeflow/staggered/localresidual.hh index e87b58925812ca963240bf9eb31b85e40752e8e9..f64775a4a758ed8cf7c0307939c41b3f630d644c 100644 --- a/dumux/freeflow/staggered/localresidual.hh +++ b/dumux/freeflow/staggered/localresidual.hh @@ -23,12 +23,6 @@ #ifndef DUMUX_STAGGERED_NAVIERSTOKES_LOCAL_RESIDUAL_HH #define DUMUX_STAGGERED_NAVIERSTOKES_LOCAL_RESIDUAL_HH -#include <dune/istl/matrix.hh> - -#include <dumux/common/valgrind.hh> -#include <dumux/implicit/staggered/localresidual.hh> - -#include "properties.hh" namespace Dumux { @@ -39,6 +33,8 @@ namespace Properties NEW_PROP_TAG(EnableComponentTransport); NEW_PROP_TAG(EnableInertiaTerms); NEW_PROP_TAG(ReplaceCompEqIdx); +NEW_PROP_TAG(EnergyFluxVariables); +NEW_PROP_TAG(NormalizePressure); } /*! diff --git a/dumux/freeflow/staggered/model.hh b/dumux/freeflow/staggered/model.hh index 6b0dab51f48810c3449ceb67870362fd9796b7f6..7a1bc622195dc5d2c4c021c8aeb6d25d78fed2c9 100644 --- a/dumux/freeflow/staggered/model.hh +++ b/dumux/freeflow/staggered/model.hh @@ -50,7 +50,4 @@ * The model supports compressible as well as incompressible fluids. */ - - #include "../staggeredni/model.hh" - #include "properties.hh" #endif diff --git a/dumux/freeflow/staggered/properties.hh b/dumux/freeflow/staggered/properties.hh index a3cf7e352aec2102dc028de81f450f8492223bd8..d7b51e269cb6bb10d79d4fb7486265a142392cf1 100644 --- a/dumux/freeflow/staggered/properties.hh +++ b/dumux/freeflow/staggered/properties.hh @@ -27,11 +27,29 @@ #ifndef DUMUX_NAVIERSTOKES_PROPERTIES_HH #define DUMUX_NAVIERSTOKES_PROPERTIES_HH - #include <dumux/common/basicproperties.hh> #include <dumux/linear/linearsolverproperties.hh> +#include <dumux/freeflow/properties.hh> + #include <dumux/freeflow/staggeredni/properties.hh> +#include <dumux/freeflow/staggeredni/localresidual.hh> +#include <dumux/freeflow/staggeredni/fluxvariables.hh> + +#include <dumux/implicit/staggered/localresidual.hh> +#include "localresidual.hh" +#include "volumevariables.hh" +#include "fluxvariables.hh" +#include "fluxvariablescache.hh" +#include "indices.hh" +#include "velocityoutput.hh" +#include "vtkoutputfields.hh" +#include "boundarytypes.hh" + +#include <dumux/material/fluidsystems/gasphase.hh> +#include <dumux/material/fluidsystems/liquidphase.hh> +#include <dumux/material/components/nullcomponent.hh> +#include <dumux/material/fluidsystems/1p.hh> namespace Dumux @@ -47,7 +65,7 @@ namespace Properties { ////////////////////////////////////////////////////////////////// //! The type tags for the implicit single-phase problems -NEW_TYPE_TAG(NavierStokes, INHERITS_FROM(LinearSolverTypeTag)); +NEW_TYPE_TAG(NavierStokes, INHERITS_FROM(FreeFlow, LinearSolverTypeTag)); //! The type tags for the corresponding non-isothermal problems NEW_TYPE_TAG(NavierStokesNI, INHERITS_FROM(NavierStokes, NavierStokesNonIsothermal)); @@ -56,23 +74,98 @@ NEW_TYPE_TAG(NavierStokesNI, INHERITS_FROM(NavierStokes, NavierStokesNonIsotherm // Property tags ////////////////////////////////////////////////////////////////// -NEW_PROP_TAG(NumPhases); //!< Number of fluid phases in the system -NEW_PROP_TAG(Indices); //!< Enumerations for the model -NEW_PROP_TAG(FluidSystem); //!< The type of the fluid system to use -NEW_PROP_TAG(Fluid); //!< The fluid used for the default fluid system -NEW_PROP_TAG(FluidState); //!< The type of the fluid state to use -NEW_PROP_TAG(ProblemEnableGravity); //!< Returns whether gravity is considered in the problem -NEW_PROP_TAG(ImplicitMassUpwindWeight); //!< Returns weight of the upwind cell when calculating fluxes -NEW_PROP_TAG(ImplicitMobilityUpwindWeight); //!< Weight for the upwind mobility in the velocity calculation -NEW_PROP_TAG(VtkAddVelocity); //!< Returns whether velocity vectors are written into the vtk output NEW_PROP_TAG(EnableInertiaTerms); //!< Returns whether to include inertia terms in the momentum balance eq or not (Stokes / Navier-Stokes) -NEW_PROP_TAG(BoundaryValues); //!< Type to set values on the boundary NEW_PROP_TAG(EnableComponentTransport); //!< Returns whether to consider component transport or not NEW_PROP_TAG(EnableEnergyTransport); //!< Returns whether to consider energy transport or not -NEW_PROP_TAG(FaceVariables); //!< Returns whether to consider energy transport or not NEW_PROP_TAG(NormalizePressure); //!< Returns whether to normalize the pressure term in the momentum balance or not NEW_PROP_TAG(EnergyLocalResidual); //!< The energy local residual NEW_PROP_TAG(EnergyFluxVariables); //!< The energy flux variables + +/////////////////////////////////////////////////////////////////////////// +// default property values for the isothermal single phase model +/////////////////////////////////////////////////////////////////////////// +SET_INT_PROP(NavierStokes, NumEqCellCenter, 1); //!< set the number of equations to 1 +SET_INT_PROP(NavierStokes, NumPhases, 1); //!< The number of phases in the 1p model is 1 + +//! The fluid system to use by default +SET_TYPE_PROP(NavierStokes, FluidSystem, Dumux::FluidSystems::OneP<typename GET_PROP_TYPE(TypeTag, Scalar), typename GET_PROP_TYPE(TypeTag, Fluid)>); + +SET_PROP(NavierStokes, Fluid) +{ private: + typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar; +public: + typedef FluidSystems::LiquidPhase<Scalar, Dumux::NullComponent<Scalar> > type; +}; + +/*! + * \brief The fluid state which is used by the volume variables to + * store the thermodynamic state. This should be chosen + * appropriately for the model ((non-)isothermal, equilibrium, ...). + * This can be done in the problem. + */ +SET_PROP(NavierStokes, FluidState){ + private: + typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar; + typedef typename GET_PROP_TYPE(TypeTag, FluidSystem) FluidSystem; + public: + typedef Dumux::ImmiscibleFluidState<Scalar, FluidSystem> type; +}; + +//! The local residual function +SET_TYPE_PROP(NavierStokes, LocalResidual, StaggeredNavierStokesResidual<TypeTag>); + +//! the VolumeVariables property +SET_TYPE_PROP(NavierStokes, VolumeVariables, NavierStokesVolumeVariables<TypeTag>); + +//! The class that contains the different flux variables (i.e. darcy, diffusion, energy) +//! by default, we set the flux variables to ones for porous media +SET_TYPE_PROP(NavierStokes, FluxVariables, FreeFlowFluxVariables<TypeTag>); + +//! The flux variables cache class, by default the one for porous media +SET_TYPE_PROP(NavierStokes, FluxVariablesCache, FreeFlowFluxVariablesCache<TypeTag>); + +//! Enable advection +SET_BOOL_PROP(NavierStokes, EnableAdvection, true); + +//! The one-phase model has no molecular diffusion +SET_BOOL_PROP(NavierStokes, EnableMolecularDiffusion, false); + +//! The indices required by the isothermal single-phase model +SET_TYPE_PROP(NavierStokes, Indices, NavierStokesCommonIndices<TypeTag>); + +SET_TYPE_PROP(NavierStokes, EnergyLocalResidual, FreeFlowEnergyLocalResidual<TypeTag>); + +SET_TYPE_PROP(NavierStokes, EnergyFluxVariables, FreeFlowEnergyFluxVariables<TypeTag>); + +SET_BOOL_PROP(NavierStokes, EnableEnergyBalance, false); + +SET_TYPE_PROP(NavierStokes, VelocityOutput, StaggeredFreeFlowVelocityOutput<TypeTag>); + +// disable velocity output by default +SET_BOOL_PROP(NavierStokes, VtkAddVelocity, true); + +SET_TYPE_PROP(NavierStokes, VtkOutputFields, NavierStokesVtkOutputFields<TypeTag>); + +SET_BOOL_PROP(NavierStokes, EnableInertiaTerms, true); + +SET_BOOL_PROP(NavierStokes, EnableEnergyTransport, false); + +SET_BOOL_PROP(NavierStokes, EnableComponentTransport, false); + +//! Normalize the pressure term in the momentum balance or not +SET_BOOL_PROP(NavierStokes, NormalizePressure, true); + +////////////////////////////////////////////////////////////////// +// Property values for isothermal model required for the general non-isothermal model +////////////////////////////////////////////////////////////////// + +//set isothermal Indices +SET_TYPE_PROP(NavierStokesNI, IsothermalIndices, NavierStokesCommonIndices<TypeTag>); + +//set isothermal NumEq +SET_INT_PROP(NavierStokesNI, IsothermalNumEqCellCenter, 1); //!< set the number of equations to 1 +SET_INT_PROP(NavierStokesNI, IsothermalNumEqFace, 1); //!< set the number of equations to 1 + // \} } diff --git a/dumux/freeflow/staggered/propertydefaults.hh b/dumux/freeflow/staggered/propertydefaults.hh deleted file mode 100644 index 4653b05b4720cc41333faa3592ceb588f10e5919..0000000000000000000000000000000000000000 --- a/dumux/freeflow/staggered/propertydefaults.hh +++ /dev/null @@ -1,221 +0,0 @@ -// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- -// vi: set et ts=4 sw=4 sts=4: -/***************************************************************************** - * See the file COPYING for full copying permissions. * - * * - * This program is free software: you can redistribute it and/or modify * - * it under the terms of the GNU General Public License as published by * - * the Free Software Foundation, either version 2 of the License, or * - * (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program. If not, see <http://www.gnu.org/licenses/>. * - *****************************************************************************/ -/*! - * \ingroup Properties - * \ingroup ImplicitProperties - * \ingroup NavierStokesModel - * \file - * - * \brief Defines the properties required for the one-phase fully implicit model. - */ -#ifndef DUMUX_NAVIERSTOKES_PROPERTY_DEFAULTS_HH -#define DUMUX_NAVIERSTOKES_PROPERTY_DEFAULTS_HH - -#include "properties.hh" - -#include "model.hh" -#include "volumevariables.hh" -#include "indices.hh" -#include "problem.hh" -#include "localresidual.hh" -#include "fluxvariables.hh" -#include "fluxvariablescache.hh" -#include "velocityoutput.hh" -#include "vtkoutputfields.hh" -#include "boundarytypes.hh" - -#include <dumux/implicit/staggered/localresidual.hh> -#include <dumux/freeflow/staggeredni/localresidual.hh> -#include <dumux/freeflow/staggeredni/fluxvariables.hh> - -#include <dumux/material/fluidsystems/gasphase.hh> -#include <dumux/material/fluidsystems/liquidphase.hh> -#include <dumux/material/components/nullcomponent.hh> -#include <dumux/material/fluidsystems/1p.hh> - -#include <dumux/discretization/staggered/freeflow/staggeredgeometryhelper.hh> -#include <dumux/discretization/staggered/freeflow/subcontrolvolumeface.hh> -#include <dumux/discretization/staggered/freeflow/facevariables.hh> -#include <dumux/implicit/staggered/primaryvariables.hh> - - - -namespace Dumux -{ - -namespace Properties -{ -// forward declaration -NEW_PROP_TAG(FluxVariables); -NEW_PROP_TAG(FluxVariablesCache); -NEW_PROP_TAG(StaggeredGeometryHelper); -} -// \{ - -/////////////////////////////////////////////////////////////////////////// -// default property values for the isothermal single phase model -/////////////////////////////////////////////////////////////////////////// -namespace Properties { -SET_INT_PROP(NavierStokes, NumEqCellCenter, 1); //!< set the number of equations to 1 -SET_INT_PROP(NavierStokes, NumEqFace, 1); //!< set the number of equations to 1 -SET_INT_PROP(NavierStokes, NumPhases, 1); //!< The number of phases in the 1p model is 1 - -//! The sub-controlvolume face -SET_PROP(NavierStokes, SubControlVolumeFace) -{ -private: - using Grid = typename GET_PROP_TYPE(TypeTag, Grid); - using ScvfGeometry = typename Grid::template Codim<1>::Geometry; - using IndexType = typename Grid::LeafGridView::IndexSet::IndexType; -public: - typedef Dumux::StaggeredSubControlVolumeFace<ScvfGeometry, IndexType> type; -}; - -//! The geometry helper required for the stencils, etc. -SET_PROP(NavierStokes, StaggeredGeometryHelper) -{ -private: - using GridView = typename GET_PROP_TYPE(TypeTag, GridView); -public: - using type = StaggeredGeometryHelper<GridView>; -}; - -//! The variables living on the faces -SET_TYPE_PROP(NavierStokes, FaceVariables, StaggeredFaceVariables<TypeTag>); - -//! The local residual function -SET_TYPE_PROP(NavierStokes, LocalResidual, StaggeredNavierStokesResidual<TypeTag>); - -//! the VolumeVariables property -SET_TYPE_PROP(NavierStokes, VolumeVariables, NavierStokesVolumeVariables<TypeTag>); - -//! The class that contains the different flux variables (i.e. darcy, diffusion, energy) -//! by default, we set the flux variables to ones for porous media -SET_TYPE_PROP(NavierStokes, FluxVariables, FreeFlowFluxVariables<TypeTag>); - -//! The flux variables cache class, by default the one for porous media -SET_TYPE_PROP(NavierStokes, FluxVariablesCache, FreeFlowFluxVariablesCache<TypeTag>); - -//! Enable advection -SET_BOOL_PROP(NavierStokes, EnableAdvection, true); - -//! The one-phase model has no molecular diffusion -SET_BOOL_PROP(NavierStokes, EnableMolecularDiffusion, false); - -//! The indices required by the isothermal single-phase model -SET_TYPE_PROP(NavierStokes, Indices, NavierStokesCommonIndices<TypeTag>); - -//! The weight of the upwind control volume when calculating -//! fluxes. Use central differences by default. -SET_SCALAR_PROP(NavierStokes, ImplicitMassUpwindWeight, 0.5); - -//! weight for the upwind mobility in the velocity calculation -//! fluxes. Use central differences by default. -SET_SCALAR_PROP(NavierStokes, ImplicitMobilityUpwindWeight, 0.5); - -//! The fluid system to use by default -SET_TYPE_PROP(NavierStokes, FluidSystem, Dumux::FluidSystems::OneP<typename GET_PROP_TYPE(TypeTag, Scalar), typename GET_PROP_TYPE(TypeTag, Fluid)>); - -SET_PROP(NavierStokes, Fluid) -{ private: - typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar; -public: - typedef FluidSystems::LiquidPhase<Scalar, Dumux::NullComponent<Scalar> > type; -}; - -/*! - * \brief The fluid state which is used by the volume variables to - * store the thermodynamic state. This should be chosen - * appropriately for the model ((non-)isothermal, equilibrium, ...). - * This can be done in the problem. - */ -SET_PROP(NavierStokes, FluidState){ - private: - typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar; - typedef typename GET_PROP_TYPE(TypeTag, FluidSystem) FluidSystem; - public: - typedef Dumux::ImmiscibleFluidState<Scalar, FluidSystem> type; -}; - -// disable velocity output by default -SET_BOOL_PROP(NavierStokes, VtkAddVelocity, true); - -SET_TYPE_PROP(NavierStokes, VtkOutputFields, NavierStokesVtkOutputFields<TypeTag>); - -// enable gravity by default -SET_BOOL_PROP(NavierStokes, ProblemEnableGravity, true); - -SET_BOOL_PROP(NavierStokes, EnableInertiaTerms, true); - -SET_BOOL_PROP(NavierStokes, EnableEnergyTransport, false); - -SET_BOOL_PROP(NavierStokes, EnableComponentTransport, false); - -//! Normalize the pressure term in the momentum balance or not -SET_BOOL_PROP(NavierStokes, NormalizePressure, true); - -SET_PROP(NavierStokes, BoundaryValues) -{ -private: - using CellCenterBoundaryValues = typename GET_PROP_TYPE(TypeTag, CellCenterPrimaryVariables); - using GridView = typename GET_PROP_TYPE(TypeTag, GridView); - using FaceBoundaryValues = Dune::FieldVector<typename GET_PROP_TYPE(TypeTag, Scalar), - GridView::dimension>; -public: - using type = StaggeredPrimaryVariables<TypeTag, CellCenterBoundaryValues, FaceBoundaryValues>; -}; - -//! Boundary types at a single degree of freedom -SET_TYPE_PROP(NavierStokes, - BoundaryTypes, - StaggeredFreeFlowBoundaryTypes<GET_PROP_VALUE(TypeTag, NumEq)>); - -SET_TYPE_PROP(NavierStokes, VelocityOutput, StaggeredFreeFlowVelocityOutput<TypeTag>); - -SET_TYPE_PROP(NavierStokes, EnergyLocalResidual, FreeFlowEnergyLocalResidual<TypeTag>); - -SET_TYPE_PROP(NavierStokes, EnergyFluxVariables, FreeFlowEnergyFluxVariables<TypeTag>); - -SET_BOOL_PROP(NavierStokes, EnableEnergyBalance, false); - -//! average is used as default model to compute the effective thermal heat conductivity -// SET_PROP(NavierStokesNI, ThermalConductivityModel) -// { private : -// typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar; -// public: -// typedef ThermalConductivityAverage<Scalar> type; -// }; - -////////////////////////////////////////////////////////////////// -// Property values for isothermal model required for the general non-isothermal model -////////////////////////////////////////////////////////////////// - -//set isothermal Indices -SET_TYPE_PROP(NavierStokesNI, IsothermalIndices, NavierStokesCommonIndices<TypeTag>); - -//set isothermal NumEq -SET_INT_PROP(NavierStokesNI, IsothermalNumEqCellCenter, 1); //!< set the number of equations to 1 -SET_INT_PROP(NavierStokesNI, IsothermalNumEqFace, 1); //!< set the number of equations to 1 - -// \} -} // end namespace Properties - -} // end namespace Dumux - -#endif diff --git a/dumux/implicit/staggered/localresidual.hh b/dumux/implicit/staggered/localresidual.hh index d6b5941e2b0f77d0c2d842b0bc99f1ae4ad7228e..bdac723a8354a13d16fd7b9a6e83a628a821f85b 100644 --- a/dumux/implicit/staggered/localresidual.hh +++ b/dumux/implicit/staggered/localresidual.hh @@ -23,12 +23,9 @@ #ifndef DUMUX_STAGGERED_LOCAL_RESIDUAL_HH #define DUMUX_STAGGERED_LOCAL_RESIDUAL_HH -#include <dune/istl/matrix.hh> - #include <dumux/common/valgrind.hh> #include <dumux/common/capabilities.hh> #include <dumux/common/timeloop.hh> -#include <dumux/discretization/staggered/properties.hh> namespace Dumux { diff --git a/test/freeflow/staggered/doneatestproblem.hh b/test/freeflow/staggered/doneatestproblem.hh index 672dbba5f5fcf95c1b0a9d98425f7842171e6bbc..566e278d441f73ada83318ed479372a52545f349 100644 --- a/test/freeflow/staggered/doneatestproblem.hh +++ b/test/freeflow/staggered/doneatestproblem.hh @@ -33,7 +33,7 @@ #include <dumux/material/components/constant.hh> #include <dumux/discretization/staggered/properties.hh> -#include <dumux/freeflow/staggered/propertydefaults.hh> +#include <dumux/freeflow/staggered/properties.hh> namespace Dumux @@ -71,9 +71,6 @@ SET_BOOL_PROP(DoneaTestProblem, EnableFVGridGeometryCache, true); SET_BOOL_PROP(DoneaTestProblem, EnableGlobalFluxVariablesCache, true); SET_BOOL_PROP(DoneaTestProblem, EnableGlobalVolumeVariablesCache, true); -// Enable gravity -SET_BOOL_PROP(DoneaTestProblem, ProblemEnableGravity, true); - #if ENABLE_NAVIERSTOKES SET_BOOL_PROP(DoneaTestProblem, EnableInertiaTerms, true); #else