From 9c4ba86c7b9cbd92552a791434a13b7224d2066e Mon Sep 17 00:00:00 2001 From: Timo Koch <timo.koch@iws.uni-stuttgart.de> Date: Fri, 8 Dec 2017 13:58:14 +0100 Subject: [PATCH] [fluidsystems] Remove default components --- dumux/material/fluidsystems/1p.hh | 43 +------- dumux/material/fluidsystems/2pimmiscible.hh | 4 +- dumux/material/fluidsystems/2pliquidvapor.hh | 47 ++------ dumux/material/fluidsystems/CMakeLists.txt | 1 - dumux/material/fluidsystems/brineair.hh | 35 +----- dumux/material/fluidsystems/brineco2.hh | 100 +---------------- .../fluidsystems/defaultcomponents.hh | 102 ------------------ dumux/material/fluidsystems/h2oair.hh | 89 +-------------- .../material/fluidsystems/h2oairmesitylene.hh | 53 +-------- dumux/material/fluidsystems/h2oairxylene.hh | 46 +------- .../fluidsystems/h2oheavyoilfluidsystem.hh | 51 +-------- dumux/material/fluidsystems/h2on2.hh | 48 ++------- dumux/material/fluidsystems/h2on2o2.hh | 41 ++----- .../material/fluidsystems/purewatersimple.hh | 39 +------ .../fluidsystems/simplesteamaircao2h2.hh | 44 +------- 15 files changed, 53 insertions(+), 690 deletions(-) delete mode 100644 dumux/material/fluidsystems/defaultcomponents.hh diff --git a/dumux/material/fluidsystems/1p.hh b/dumux/material/fluidsystems/1p.hh index 9f2306d4e2..512b661b16 100644 --- a/dumux/material/fluidsystems/1p.hh +++ b/dumux/material/fluidsystems/1p.hh @@ -27,21 +27,8 @@ #include <limits> #include <cassert> -#include <dumux/material/fluidsystems/liquidphase.hh> -#include <dumux/material/fluidsystems/gasphase.hh> - #include <dune/common/exceptions.hh> - #include "base.hh" -#include <dumux/material/components/simpleh2o.hh> -#include <dumux/material/components/h2o.hh> -#include <dumux/material/components/n2.hh> -#include <dumux/material/components/tabulatedcomponent.hh> - -#ifdef DUMUX_PROPERTIES_HH -#include <dumux/common/properties.hh> -#include <dumux/material/fluidsystems/defaultcomponents.hh> -#endif namespace Dumux { namespace FluidSystems { @@ -51,8 +38,9 @@ namespace FluidSystems { * * \brief A fluid system for single phase models. * - * The fluid is defined as a template parameter. For existing - * components the FluidSystems::LiquidPhase<Component> and + * \tparam Scalar the scalar type + * \tparam Fluid The fluid is defined as a template parameter. For existing + * fluids the FluidSystems::LiquidPhase<Component> and * FluidSystems::GasPhase<Component> may be used. */ template <class Scalar, class Fluid> @@ -414,28 +402,7 @@ public: }; -} // end namespace - -#ifdef DUMUX_PROPERTIES_HH -namespace Properties -{ -NEW_PROP_TAG(Fluid); -} - -/*! - * \brief A pure single-phase fluid system. - * - * This is an adapter to use TwoPImmiscible<TypeTag>, as is - * done with most other classes in Dumux and all template parameters - * are usually defined in the property system anyhow. - */ -template<class TypeTag> -class DUNE_DEPRECATED_MSG("Use FluidSystems::OneP directly! Will be removed after release of dumux 3.0.") -OnePFluidSystem -: public FluidSystems::OneP<typename GET_PROP_TYPE(TypeTag, Scalar), - typename GET_PROP_TYPE(TypeTag, Fluid)> -{}; -#endif -} // end namespace +} // end namespace Properties +} // end namespace Dumux #endif diff --git a/dumux/material/fluidsystems/2pimmiscible.hh b/dumux/material/fluidsystems/2pimmiscible.hh index 42ea175aa3..313f3de3e1 100644 --- a/dumux/material/fluidsystems/2pimmiscible.hh +++ b/dumux/material/fluidsystems/2pimmiscible.hh @@ -27,12 +27,12 @@ #include <limits> #include <cassert> +#include <dune/common/exceptions.hh> + #include <dumux/material/fluidsystems/liquidphase.hh> #include <dumux/material/fluidsystems/gasphase.hh> #include <dumux/material/fluidstates/immiscible.hh> -#include <dune/common/exceptions.hh> - #include "base.hh" namespace Dumux { diff --git a/dumux/material/fluidsystems/2pliquidvapor.hh b/dumux/material/fluidsystems/2pliquidvapor.hh index 261c7f2f6a..45b963bce9 100644 --- a/dumux/material/fluidsystems/2pliquidvapor.hh +++ b/dumux/material/fluidsystems/2pliquidvapor.hh @@ -28,39 +28,25 @@ #include <cassert> #include <iostream> +#include <dune/common/exceptions.hh> + #include <dumux/material/fluidsystems/liquidphase.hh> #include <dumux/material/fluidsystems/gasphase.hh> #include <dumux/material/fluidstates/compositional.hh> -#include <dune/common/exceptions.hh> - #include "base.hh" -namespace Dumux -{ -namespace FluidSystems -{ - +namespace Dumux { +namespace FluidSystems { /*! * \ingroup Fluidsystems * * \brief A two-phase fluid system with only one component. - * - * - * This FluidSystem can be used without the PropertySystem that is applied in Dumux, - * as all Parameters are defined via template parameters. Hence it is in an - * additional namespace Dumux::FluidSystem::. - * An adapter class using Dumux::FluidSystem<TypeTag> is also provided - * at the end of this file. */ template <class Scalar, class ComponentType> class TwoPLiquidVaporFluidsystem : public BaseFluidSystem<Scalar, TwoPLiquidVaporFluidsystem<Scalar, ComponentType> > { - // do not try to instantiate this class, it has only static members! - TwoPLiquidVaporFluidsystem() - {} - typedef TwoPLiquidVaporFluidsystem<Scalar, ComponentType> ThisType; typedef BaseFluidSystem<Scalar, ThisType> Base; typedef ComponentType Component; @@ -548,32 +534,11 @@ public: return Component::gasHeatCapacity(fluidState.temperature(phaseIdx), fluidState.pressure(phaseIdx));//2.029e3; } - else DUNE_THROW(Dune::NotImplemented, - "wrong index"); + else DUNE_THROW(Dune::NotImplemented, "wrong index"); } }; } // end namespace FluidSystems - -#ifdef DUMUX_PROPERTIES_HH -// forward definitions of the property tags -namespace Properties { -NEW_PROP_TAG(Scalar); -NEW_PROP_TAG(Components); -} -/*! - * \brief A two-phase fluid system with only one component. - * - * This is an adapter to use Dumux::TwoPLiquidVaporFluidsystem<TypeTag>, as is - * done with most other classes in Dumux. - */ -template<class TypeTag> -class TwoPLiquidVaporFluidsystem -: public FluidSystems::TwoPLiquidVaporFluidsystem<typename GET_PROP_TYPE(TypeTag, Scalar), - typename GET_PROP_VALUE(TypeTag, Components)::Component> -{}; -#endif - -} // end namespace +} // end namespace Dumux #endif diff --git a/dumux/material/fluidsystems/CMakeLists.txt b/dumux/material/fluidsystems/CMakeLists.txt index 43b27a7c2b..8280d62b89 100644 --- a/dumux/material/fluidsystems/CMakeLists.txt +++ b/dumux/material/fluidsystems/CMakeLists.txt @@ -5,7 +5,6 @@ install(FILES base.hh brineair.hh brineco2.hh - defaultcomponents.hh gasphase.hh h2oair.hh h2oairmesitylene.hh diff --git a/dumux/material/fluidsystems/brineair.hh b/dumux/material/fluidsystems/brineair.hh index 6018bf3ad3..28876066ad 100644 --- a/dumux/material/fluidsystems/brineair.hh +++ b/dumux/material/fluidsystems/brineair.hh @@ -39,14 +39,8 @@ #include <dumux/common/valgrind.hh> #include <dumux/common/exceptions.hh> -#ifdef DUMUX_PROPERTIES_HH -#include <dumux/common/properties.hh> -#endif - -namespace Dumux -{ -namespace FluidSystems -{ +namespace Dumux { +namespace FluidSystems { /*! * \ingroup Fluidsystems * @@ -55,29 +49,6 @@ namespace FluidSystems * * This fluidsystem is applied by default with the tabulated version of * water of the IAPWS-formulation. - * - * To change the component formulation (i.e. to use nontabulated or - * incompressible water), or to switch on verbosity of tabulation, - * specify the water formulation via template arguments - * - * \code{.cpp} - * // Select fluid system - * SET_PROP(TheSpecificProblemTypeTag, FluidSystem) - * { - * // e.g. to use a simple version of H2O - * typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar; - * typedef FluidSystems::H2OAir<Scalar, SimpleH2O<Scalar> > type; - * }; - * \endcode - * - * Also remember to initialize tabulated components (FluidSystem::init()), while this - * is not necessary for non-tabularized ones. - * - * This FluidSystem can be used without the PropertySystem that is applied in Dumux, - * as all Parameters are defined via template parameters. Hence it is in an - * additional namespace FluidSystem::. - * An adapter class using FluidSystem<TypeTag> is also provided - * at the end of this file. */ template <class Scalar, class H2Otype = TabulatedComponent<Scalar, H2O<Scalar>>, @@ -87,7 +58,6 @@ class BrineAir { typedef BrineAir<Scalar, H2Otype, useComplexRelations> ThisType; typedef BaseFluidSystem <Scalar, ThisType> Base; - typedef Dumux::IdealGas<Scalar> IdealGas; public: @@ -700,7 +670,6 @@ private: }; } // end namespace FluidSystems - } // end namespace Dumux #endif diff --git a/dumux/material/fluidsystems/brineco2.hh b/dumux/material/fluidsystems/brineco2.hh index 6fc00ba906..70016617cc 100644 --- a/dumux/material/fluidsystems/brineco2.hh +++ b/dumux/material/fluidsystems/brineco2.hh @@ -25,11 +25,8 @@ #define DUMUX_BRINE_CO2_SYSTEM_HH #include <dumux/material/idealgas.hh> - -#include <dumux/common/properties.hh> #include <dumux/material/fluidsystems/base.hh> -#include <dumux/material/fluidsystems/defaultcomponents.hh> #include <dumux/material/components/co2.hh> #include <dumux/material/components/co2tablereader.hh> #include <dumux/material/components/tabulatedcomponent.hh> @@ -38,24 +35,15 @@ namespace Dumux { +// include the default tables for CO2 #include <dumux/material/components/co2tables.inc> -namespace FluidSystems{ +namespace FluidSystems +{ /*! * \ingroup Fluidsystems * \brief A compositional fluid with brine and carbon as * components in both, the liquid and the gas (supercritical) phase. - * - * This class provides acess to the Brine CO2 fluid system when no property system is used. - * For Dumux users, using BrineCO2FluidSystem<TypeTag> and the documentation therein is - * recommended. - * - * The user can provide their own material table for co2 properties. - * This fluidsystem is initialized as default with the tabulated version of - * water of the IAPWS-formulation, and the tabularized adapter to transfer - * this into brine. - * In the non-TypeTagged version, salinity information has to be provided with - * the init() methods. */ template<class Scalar, class CO2Table, @@ -690,88 +678,8 @@ private: return h_ls; } }; -} // end namespace FluidSystems - - -#ifdef DUMUX_PROPERTIES_HH -// forward definitions of the property tags -namespace Properties -{ -NEW_PROP_TAG(Scalar); -NEW_PROP_TAG(CO2Table); -// Set Co2 tables -SET_TYPE_PROP(ModelProperties, CO2Table, CO2Tables); -} -/*! - * \brief A compositional fluid with brine and carbon as - * components in both, the liquid and the gas (supercritical) phase. - * - * This fluidsystem is initialized as default with the tabulated version of - * water of the IAPWS-formulation, and the tabularized adapter to transfer - * this into brine. - * To change the component formulation (e.g. change tabularization to avoid - * init routine), change the default components via the property "Components": - * - * - * \code{.cpp} - * // Select other components - * SET_PROP(myApplicationProperty, Components) : public GET_PROP(TypeTag, DefaultComponents) - * { - * typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar; - * // Do not use the defaults that are the following - * // typedef TabulatedComponent<Scalar, H2O<Scalar> > H2O; - * // typedef Brine<Scalar, H2O<Scalar> > BrineRawComponent; - * // typedef TabulatedComponent<Scalar,BrineRawComponent > Brine; - * - * // Apply the following component classes: - * typedef Dumux::H2O<Scalar> H2O; - * typedef Brine<Scalar, H2O> BrineRawComponent; - * typedef typename BrineRawComponent Brine;// all components have to be redefined, - * // the applied H2O and Brine implemementations. - * }; - * \endcode - * Also remember to initialize all tabulated components (FluidSystem::init()), while this - * is not necessary for non-tabularized ones. - * - * The desired material tables for CO2 can be defined via - * \code{.cpp} - * SET_TYPE_PROP(myApplicationProperty, CO2Table, myCO2Tables); - * \endcode - * or use the default tables. Do not forget to include the tables. - * Salinity is specified via the appropriate property. - */ - -template <class TypeTag, bool verbose=true> -class DUNE_DEPRECATED_MSG("Use FluidSystems::BrineCO2 directly! Will be removed after release of dumux 3.0.") -BrineCO2FluidSystem -: public FluidSystems::BrineCO2<typename GET_PROP_TYPE(TypeTag, Scalar), - typename GET_PROP_TYPE(TypeTag, CO2Table), - typename GET_PROP(TypeTag, Components)::H2O, - typename GET_PROP(TypeTag, Components)::BrineRawComponent, - typename GET_PROP(TypeTag, Components)::Brine> -{ - typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar; - typedef typename FluidSystems::BrineCO2<typename GET_PROP_TYPE(TypeTag, Scalar), - typename GET_PROP_TYPE(TypeTag, CO2Table), - typename GET_PROP(TypeTag, Components)::H2O, - typename GET_PROP(TypeTag, Components)::BrineRawComponent, - typename GET_PROP(TypeTag, Components)::Brine> ParentType; - -public: - static void init() - { - ParentType::init(getParamFromGroup<Scalar>(GET_PROP_VALUE(TypeTag, ModelParameterGroup), "Problem.Salinity", 1e-3)); - } - static void init(Scalar startTemp, Scalar endTemp, int tempSteps, - Scalar startPressure, Scalar endPressure, int pressureSteps) - { - ParentType::init(startTemp, endTemp, tempSteps, - startPressure, endPressure, pressureSteps, - getParamFromGroup<Scalar>(GET_PROP_VALUE(TypeTag, ModelParameterGroup), "Problem.Salinity", 1e-3)); - } -}; -#endif +} // end namespace FluidSystems } // end namespace Dumux #endif diff --git a/dumux/material/fluidsystems/defaultcomponents.hh b/dumux/material/fluidsystems/defaultcomponents.hh deleted file mode 100644 index eae15ebbb7..0000000000 --- a/dumux/material/fluidsystems/defaultcomponents.hh +++ /dev/null @@ -1,102 +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/>. * - *****************************************************************************/ -/*! - * \file - * \ingroup Fluidsystems - * - * \brief Provides defaults for the members of a fluidsystem. - */ -#ifndef DUMUX_DEFAULT_COMPONENTS_HH -#define DUMUX_DEFAULT_COMPONENTS_HH - -#warning "DefaultComponents is deprecated. Specify fluid system via template parameters and not using the property system!" - -#include <dumux/common/properties/model.hh> -#include <dumux/common/properties.hh> - -#include <dumux/material/components/h2o.hh> -#include <dumux/material/components/n2.hh> -#include <dumux/material/components/o2.hh> -#include <dumux/material/components/h2.hh> -#include <dumux/material/components/ch4.hh> -#include <dumux/material/components/simpleco2.hh> -#include <dumux/material/components/simpleh2o.hh> -#include <dumux/material/components/brine.hh> -#include <dumux/material/components/tabulatedcomponent.hh> - -namespace Dumux -{ -namespace Properties -{ -//! Defines the components which are being used by the fluid system by -//! default and how they are initialized -NEW_PROP_TAG(DefaultComponents); - -//! Defines, if a detailed description for members of the fluidsystem is used -NEW_PROP_TAG(EnableComplicatedFluidSystem); - -//! Defines the components which are actually being used by the fluidsystem -NEW_PROP_TAG(Components); - -//! Specifies default component names and initializes the H2O fluid properties -SET_PROP(ModelProperties, DefaultComponents) -{ -private: - typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar; - typedef Dumux::H2O<Scalar> H2O_IAPWS; - -public: - typedef TabulatedComponent<Scalar, H2O_IAPWS> H2O; - typedef Dumux::N2<Scalar> N2; - typedef Dumux::O2<Scalar> O2; - typedef Dumux::H2<Scalar> H2; - typedef Dumux::CH4<Scalar> CH4; - typedef Dumux::SimpleCO2<Scalar> SimpleCO2; - typedef Dumux::SimpleH2O<Scalar> SimpleH2O; - typedef Dumux::Brine<Scalar, Dumux::H2O<Scalar> > BrineRawComponent; - typedef TabulatedComponent<Scalar, BrineRawComponent > Brine; - - static void init() - { - int nT = 100; - int nP = 200; - std::cout << "Initializing tables for the H2O fluid properties (" - << nT*nP - << " entries).\n"; - H2O::init(273.15, 623.15, nT, -10, 20e6, nP); - } -}; - -//! Initialize the components with default behavior -SET_PROP(ModelProperties, Components) : public GET_PROP(TypeTag, DefaultComponents) {}; - -/*! - * \brief Enables a detailed description of the fluidsystem - * - * Complicated but detailed members of fluidsystems (e.g. phase viscosity, - * phase density) can be simplified for efficiency reasons with this property. - * Typically, such high demands on accuracy are not needed, so this property - * is set to "false" as the default. - */ -SET_BOOL_PROP(ModelProperties, EnableComplicatedFluidSystem, false); - -} // namespace Properties -} // namespace Dumux - -#endif diff --git a/dumux/material/fluidsystems/h2oair.hh b/dumux/material/fluidsystems/h2oair.hh index 6542f7670d..25dd2235e5 100644 --- a/dumux/material/fluidsystems/h2oair.hh +++ b/dumux/material/fluidsystems/h2oair.hh @@ -28,24 +28,16 @@ #include <cassert> #include <dumux/material/idealgas.hh> - #include <dumux/material/fluidsystems/base.hh> #include <dumux/material/binarycoefficients/h2o_air.hh> -#include <dumux/material/fluidsystems/defaultcomponents.hh> #include <dumux/material/components/air.hh> #include <dumux/common/valgrind.hh> #include <dumux/common/exceptions.hh> -#ifdef DUMUX_PROPERTIES_HH -#include <dumux/common/properties.hh> -#endif - -namespace Dumux -{ -namespace FluidSystems -{ +namespace Dumux { +namespace FluidSystems { /*! * \ingroup Fluidsystems @@ -57,35 +49,6 @@ namespace FluidSystems * \f$(\mathrm{H_2O})\f$) and air (Pseudo component composed of \f$\mathrm{79\%\;N_2}\f$, * \f$\mathrm{20\%\;O_2}\f$ and \f$\mathrm{1\%\;Ar}\f$) as components. It is applied by * default with the tabulated version of water of the IAPWS-formulation. - * - * To change the component formulation (i.e. to use nontabulated or - * incompressible water), or to switch on verbosity of tabulation, - * specify the \p H2O formulation via template arguments or via the property - * system, as described in the TypeTag Adapter at the end of the file. - * - * \code{.cpp} - * // Select fluid system - * SET_PROP(TheSpecificProblemTypeTag, FluidSystem) - * { - * // e.g. to use a simple version of H2O - * typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar; - * typedef FluidSystems::H2OAir<Scalar, SimpleH2O<Scalar> > type; - * }; - * \endcode - * - * Also remember to initialize tabulated components (FluidSystem::init()), while this - * is not necessary for non-tabularized ones. - * - * This FluidSystem can be used without the PropertySystem that is applied in Dumux, - * as all Parameters are defined via template parameters. Hence it is in an - * additional namespace FluidSystem::. - * An adapter class using FluidSystem<TypeTag> is also provided - * at the end of this file. - * - * \note The template argument \p useComplexRelations can be used to switch from a complex - * relation, in which compositional effects are considered for the gas phase and the - * density of the liquid phase, to a non-complex formulation in which compositional - * effects are not considered. */ template <class Scalar, class H2Otype = TabulatedComponent<Scalar, H2O<Scalar> >, @@ -95,7 +58,6 @@ class H2OAir { typedef H2OAir<Scalar,H2Otype, useComplexRelations > ThisType; typedef BaseFluidSystem <Scalar, ThisType> Base; - typedef Dumux::IdealGas<Scalar> IdealGas; public: @@ -809,51 +771,6 @@ public: }; } // end namespace FluidSystems - -#ifdef DUMUX_PROPERTIES_HH -// forward definitions of the property tags -namespace Properties { -NEW_PROP_TAG(Scalar); -NEW_PROP_TAG(Components); -} - -/*! - * \brief A two-phase fluid system with water and air as components. - * - * This is an adapter to use H2OAirFluidSystem<TypeTag>, as is - * done with most other classes in Dumux. - * This fluidsystem is applied by default with the tabulated version of - * water of the IAPWS-formulation. - * - * To change the component formulation (ie to use nontabulated or - * incompressible water), or to switch on verbosity of tabulation, - * use the property system and the property "Components": - * - * \code{.cpp} - * // Select desired version of the component - * SET_PROP(TheSpecificProblemTypeTag, Components) : public GET_PROP(TypeTag, DefaultComponents) - * { - * typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar; - * - * // Do not use the defaults ! - * // typedef TabulatedComponent<Scalar, H2O<Scalar> > H2O; - * - * // Apply e.g. untabulated water: - * typedef Dumux::H2O<Scalar> H2O; - * }; - * \endcode - * Also remember to initialize tabulated components (FluidSystem::init()), while this - * is not necessary for non-tabularized ones. - */ -template<class TypeTag> -class DUNE_DEPRECATED_MSG("Use FluidSystems::H2OAir directly! Will be removed after release of dumux 3.0.") -H2OAirFluidSystem -: public FluidSystems::H2OAir<typename GET_PROP_TYPE(TypeTag, Scalar), - typename GET_PROP(TypeTag, Components)::H2O, - GET_PROP_VALUE(TypeTag, EnableComplicatedFluidSystem)> -{}; -#endif - -} // end namespace +} // end namespace Dumux #endif diff --git a/dumux/material/fluidsystems/h2oairmesitylene.hh b/dumux/material/fluidsystems/h2oairmesitylene.hh index 322760c322..8c7e552660 100644 --- a/dumux/material/fluidsystems/h2oairmesitylene.hh +++ b/dumux/material/fluidsystems/h2oairmesitylene.hh @@ -28,7 +28,6 @@ #include <dumux/material/components/air.hh> #include <dumux/material/components/h2o.hh> #include <dumux/material/components/tabulatedcomponent.hh> -#include <dumux/material/components/simpleh2o.hh> #include <dumux/material/components/mesitylene.hh> #include <dumux/material/components/tabulatedcomponent.hh> @@ -38,10 +37,8 @@ #include <dumux/material/fluidsystems/base.hh> -namespace Dumux -{ -namespace FluidSystems -{ +namespace Dumux { +namespace FluidSystems { /*! * \ingroup Fluidsystems @@ -594,52 +591,8 @@ private: } }; -} // end namespace FluidSystems - -#ifdef DUMUX_PROPERTIES_HH -// forward definitions of the property tags -namespace Properties { - NEW_PROP_TAG(Scalar); - NEW_PROP_TAG(Components); -} - -/*! - * \brief A threephase fluid system with water, air and mesitylene as components. - * - * This is an adapter to use H2OAirMesityleneFluidSystem<TypeTag>, as is - * done with most other classes in Dumux. - * This fluidsystem is applied by default with the tabulated version of - * water of the IAPWS-formulation. - * - * To change the component formulation (ie to use nontabulated or - * incompressible water), or to switch on verbosity of tabulation, - * use the property system and the property "Components": - * - * \code{.cpp} - * // Select desired version of the component - * SET_PROP(TheSpecificProblemTypeTag, Components) : public GET_PROP(TypeTag, DefaultComponents) - * { - * typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar; - * - * // Do not use the defaults ! - * // typedef TabulatedComponent<Scalar, H2O<Scalar> > H2O; - * - * // Apply e.g. untabulated water: - * typedef Dumux::H2O<Scalar> H2O; - * }; - * \endcode - * - * Also remember to initialize tabulated components (FluidSystem::init()), while this - * is not necessary for non-tabularized ones. - */ -template<class TypeTag> -class DUNE_DEPRECATED_MSG("Use FluidSystems::H2OAirMesitylene directly! Will be removed after release of dumux 3.0.") -H2OAirMesityleneFluidSystem -: public FluidSystems::H2OAirMesitylene<typename GET_PROP_TYPE(TypeTag, Scalar), - typename GET_PROP(TypeTag, Components)::H2O> -{}; -#endif +} // end namespace FluidSystems } // end namespace Dumux #endif diff --git a/dumux/material/fluidsystems/h2oairxylene.hh b/dumux/material/fluidsystems/h2oairxylene.hh index c2e98498e9..c92e849a70 100644 --- a/dumux/material/fluidsystems/h2oairxylene.hh +++ b/dumux/material/fluidsystems/h2oairxylene.hh @@ -585,52 +585,8 @@ private: } }; -} // end namespace FluidSystems - -#ifdef DUMUX_PROPERTIES_HH -// forward definitions of the property tags -namespace Properties { - NEW_PROP_TAG(Scalar); - NEW_PROP_TAG(Components); -} - -/*! - * \brief A threephase fluid system with water, air and xylene as components. - * - * This is an adapter to use H2OAirXyleneFluidSystem<TypeTag>, as is - * done with most other classes in Dumux. - * This fluidsystem is applied by default with the tabulated version of - * water of the IAPWS-formulation. - * - * To change the component formulation (ie to use nontabulated or - * incompressible water), or to switch on verbosity of tabulation, - * use the property system and the property "Components": - * - * \code{.cpp} - * // Select desired version of the component - * SET_PROP(TheSpecificProblemTypeTag, Components) : public GET_PROP(TypeTag, DefaultComponents) - * { - * typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar; - * - * // Do not use the defaults ! - * // typedef TabulatedComponent<Scalar, H2O<Scalar> > H2O; - * - * // Apply e.g. untabulated water: - * typedef Dumux::H2O<Scalar> H2O; - * }; - * \endcode - * - * Also remember to initialize tabulated components (FluidSystem::init()), while this - * is not necessary for non-tabularized ones. - */ -template<class TypeTag> -class DUNE_DEPRECATED_MSG("Use FluidSystems::H2OAirXylene directly! Will be removed after release of dumux 3.0.") -H2OAirXyleneFluidSystem -: public FluidSystems::H2OAirXylene<typename GET_PROP_TYPE(TypeTag, Scalar), - typename GET_PROP(TypeTag, Components)::H2O> -{}; -#endif +} // end namespace FluidSystems } // end namespace Dumux #endif diff --git a/dumux/material/fluidsystems/h2oheavyoilfluidsystem.hh b/dumux/material/fluidsystems/h2oheavyoilfluidsystem.hh index 49bde68954..7f87507228 100644 --- a/dumux/material/fluidsystems/h2oheavyoilfluidsystem.hh +++ b/dumux/material/fluidsystems/h2oheavyoilfluidsystem.hh @@ -30,17 +30,14 @@ #include <dumux/material/idealgas.hh> #include <dumux/material/components/h2o.hh> #include <dumux/material/components/tabulatedcomponent.hh> -#include <dumux/material/components/simpleh2o.hh> #include <dumux/material/components/heavyoil.hh> #include <dumux/material/binarycoefficients/h2o_heavyoil.hh> #include <dumux/material/fluidsystems/base.hh> -namespace Dumux -{ -namespace FluidSystems -{ +namespace Dumux { +namespace FluidSystems { /*! * \brief A compositional fluid with water and heavy oil @@ -441,50 +438,8 @@ public: private: }; -} // end namespace FluidSystems - -#ifdef DUMUX_PROPERTIES_HH -// forward definitions of the property tags -namespace Properties { - NEW_PROP_TAG(Scalar); - NEW_PROP_TAG(Components); -} - -/*! - * \brief A threephase fluid system with water, heavyoil as components. - * - * This is an adapter to use Dumux::H2OheavyoilFluidSystem<TypeTag>, as is - * done with most other classes in Dumux. - * This fluidsystem is applied by default with the tabulated version of - * water of the IAPWS-formulation. - * - * To change the component formulation (ie to use nontabulated or - * incompressible water), or to switch on verbosity of tabulation, - * use the property system and the property "Components": - * - * // Select desired version of the component - * SET_PROP(myApplicationProperty, Components) : public GET_PROP(TypeTag, DefaultComponents) - * { - * typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar; - * - * // Do not use the defaults ! - * // typedef Dumux::TabulatedComponent<Scalar, Dumux::H2O<Scalar> > H2O; - * - * // Apply e.g. untabulated water: - * typedef Dumux::H2O<Scalar> H2O; - * }; - * - * Also remember to initialize tabulated components (FluidSystem::init()), while this - * is not necessary for non-tabularized ones. - */ -template<class TypeTag> -class DUNE_DEPRECATED_MSG("Use FluidSystems::H2OHeavyOil directly! Will be removed after release of dumux 3.0.") -H2OHeavyOilFluidSystem -: public FluidSystems::H2OHeavyOil<TypeTag, typename GET_PROP_TYPE(TypeTag, Scalar), - typename GET_PROP(TypeTag, Components)::H2O> -{}; -#endif +} // end namespace FluidSystems } // end namespace Dumux #endif diff --git a/dumux/material/fluidsystems/h2on2.hh b/dumux/material/fluidsystems/h2on2.hh index 9a90ef23a4..0c7edf1cae 100644 --- a/dumux/material/fluidsystems/h2on2.hh +++ b/dumux/material/fluidsystems/h2on2.hh @@ -26,24 +26,18 @@ #include <cassert> +#include <dumux/common/valgrind.hh> +#include <dumux/common/exceptions.hh> + #include <dumux/material/idealgas.hh> #include <dumux/material/components/n2.hh> #include <dumux/material/components/h2o.hh> -#include <dumux/material/components/simpleh2o.hh> #include <dumux/material/components/tabulatedcomponent.hh> #include <dumux/material/binarycoefficients/h2o_n2.hh> -#include <dumux/common/valgrind.hh> -#include <dumux/common/exceptions.hh> - #include "base.hh" -#ifdef DUMUX_PROPERTIES_HH -#include <dumux/common/properties.hh> -#include <dumux/material/fluidsystems/defaultcomponents.hh> -#endif - namespace Dumux { namespace FluidSystems @@ -54,12 +48,6 @@ namespace FluidSystems * * \brief A two-phase fluid system with two components water \f$(\mathrm{H_2O})\f$ * Nitrogen \f$(\mathrm{N_2})\f$ for non-equilibrium models. - * - * This FluidSystem can be used without the PropertySystem that is applied in Dumux, - * as all Parameters are defined via template parameters. Hence it is in an - * additional namespace FluidSystem::. - * An adapter class using FluidSystem<TypeTag> is also provided - * at the end of this file. */ template <class Scalar, bool useComplexRelations = true> class H2ON2 @@ -69,10 +57,9 @@ class H2ON2 typedef BaseFluidSystem<Scalar, ThisType> Base; // convenience typedefs - typedef Dumux::IdealGas<Scalar> IdealGas; - typedef Dumux::H2O<Scalar> IapwsH2O; - typedef TabulatedComponent<Scalar, IapwsH2O > TabulatedH2O; - typedef Dumux::N2<Scalar> SimpleN2; + using IdealGas = Dumux::IdealGas<Scalar>; + using TabulatedH2O = TabulatedComponent<Scalar, Dumux::H2O<Scalar> >; + using SimpleN2 = Dumux::N2<Scalar>; public: /**************************************** @@ -183,12 +170,10 @@ public: static constexpr int N2Idx = nCompIdx; //! The components for pure water - typedef TabulatedH2O H2O; - //typedef SimpleH2O H2O; - //typedef IapwsH2O H2O; + using H2O = TabulatedH2O; //! The components for pure nitrogen - typedef SimpleN2 N2; + using N2 = SimpleN2; /*! * \brief Return the human readable name of a component @@ -752,21 +737,6 @@ public: } // end namespace FluidSystems -#ifdef DUMUX_PROPERTIES_HH -/*! - * \brief A two-phase fluid system with water and nitrogen as components. - * - * This is an adapter to use H2ON2FluidSystem<TypeTag>, as is - * done with most other classes in Dumux. - */ -template<class TypeTag> -class DUNE_DEPRECATED_MSG("Use FluidSystems::H2ON2 directly! Will be removed after release of dumux 3.0.") -H2ON2FluidSystem -: public FluidSystems::H2ON2<typename GET_PROP_TYPE(TypeTag, Scalar), - GET_PROP_VALUE(TypeTag, EnableComplicatedFluidSystem)> -{}; -#endif - -} // end namespace +} // end namespace Dumux #endif diff --git a/dumux/material/fluidsystems/h2on2o2.hh b/dumux/material/fluidsystems/h2on2o2.hh index 4d059efe51..ce4a524095 100644 --- a/dumux/material/fluidsystems/h2on2o2.hh +++ b/dumux/material/fluidsystems/h2on2o2.hh @@ -27,6 +27,10 @@ #include <cassert> +#include <dumux/common/valgrind.hh> +#include <dumux/common/exceptions.hh> + +#include <dumux/material/fluidsystems/base.hh> #include <dumux/material/idealgas.hh> #include <dumux/material/constants.hh> @@ -39,16 +43,6 @@ #include <dumux/material/binarycoefficients/h2o_o2.hh> #include <dumux/material/binarycoefficients/n2_o2.hh> -#include <dumux/common/valgrind.hh> -#include <dumux/common/exceptions.hh> - -#include <dumux/material/fluidsystems/base.hh> - -#ifdef DUMUX_PROPERTIES_HH -#include <dumux/common/properties.hh> -#include <dumux/material/fluidsystems/defaultcomponents.hh> -#endif - namespace Dumux { namespace FluidSystems @@ -64,11 +58,6 @@ namespace FluidSystems * * Also remember to initialize tabulated components (FluidSystem::init()), while this * is not necessary for non-tabularized ones. - * This FluidSystem can be used without the PropertySystem that is applied in Dumux, - * as all Parameters are defined via template parameters. Hence it is in an - * additional namespace FluidSystem::. - * An adapter class using FluidSystem<TypeTag> is also provided - * at the end of this file. */ template <class Scalar, bool useComplexRelations = true> class H2ON2O2 @@ -79,8 +68,7 @@ class H2ON2O2 typedef Dumux::IdealGas<Scalar> IdealGas; typedef Dumux::Constants<Scalar> Constants; - typedef Dumux::H2O<Scalar> IapwsH2O; - typedef TabulatedComponent<Scalar, IapwsH2O > TabulatedH2O; + typedef TabulatedComponent<Scalar, Dumux::H2O<Scalar> > TabulatedH2O; typedef Dumux::N2<Scalar> SimpleN2; typedef Dumux::O2<Scalar> O2; @@ -843,23 +831,6 @@ public: }; } // end namespace FluidSystems - -#ifdef DUMUX_PROPERTIES_HH -/*! - * \brief A two-phase (water and air) fluid system - * with water, nitrogen and oxygen as components. - * - * This is an adapter to use H2ON2O2<TypeTag>, as is - * done with most other classes in Dumux. - */ -template<class TypeTag> -class DUNE_DEPRECATED_MSG("Use FluidSystems::H2ON2O2 directly! Will be removed after release of dumux 3.0.") -H2ON2O2FluidSystem -: public FluidSystems::H2ON2O2<typename GET_PROP_TYPE(TypeTag, Scalar), - GET_PROP_VALUE(TypeTag, EnableComplicatedFluidSystem)> -{}; -#endif - -} // end namespace +} // end namespace Dumux #endif diff --git a/dumux/material/fluidsystems/purewatersimple.hh b/dumux/material/fluidsystems/purewatersimple.hh index 9a4a061903..ef11bd911a 100644 --- a/dumux/material/fluidsystems/purewatersimple.hh +++ b/dumux/material/fluidsystems/purewatersimple.hh @@ -28,38 +28,22 @@ #include <dumux/material/idealgas.hh> +#include <dumux/material/fluidsystems/base.hh> #include <dumux/material/components/n2.hh> -#include <dumux/material/components/h2o.hh> #include <dumux/material/components/simpleh2o.hh> -#include <dumux/material/components/tabulatedcomponent.hh> #include <dumux/material/binarycoefficients/h2o_n2.hh> #include <dumux/common/valgrind.hh> #include <dumux/common/exceptions.hh> -#include <dumux/material/fluidsystems/base.hh> - -#ifdef DUMUX_PROPERTIES_HH -#include <dumux/common/properties.hh> -#include <dumux/material/fluidsystems/defaultcomponents.hh> -#endif - -namespace Dumux -{ -namespace FluidSystems -{ +namespace Dumux { +namespace FluidSystems { /*! * \ingroup Fluidsystems * * \brief A two-phase fluid system with water as sole component. * Values are taken from Shi & Wang, A numerical investigation of transpiration cooling with liquid coolant phase change, Transport in Porous Media, 2011 - * - * This FluidSystem can be used without the PropertySystem that is applied in Dumux, - * as all Parameters are defined via template parameters. Hence it is in an - * additional namespace FluidSystem::. - * An adapter class using FluidSystem<TypeTag> is also provided - * at the end of this file. */ template <class Scalar, bool useComplexRelations = false> class PureWaterSimpleFluidSystem @@ -557,21 +541,6 @@ public: }; } // end namespace FluidSystems - -#ifdef DUMUX_PROPERTIES_HH -/*! - * \brief A two-phase fluid system with water and nitrogen as components. - * - * This is an adapter to use H2ON2FluidSystem<TypeTag>, as is - * done with most other classes in Dumux. - */ -template<class TypeTag> -class PureWaterSimpleFluidSystem -: public FluidSystems::PureWaterSimpleFluidSystem<typename GET_PROP_TYPE(TypeTag, Scalar), - GET_PROP_VALUE(TypeTag, EnableComplicatedFluidSystem)> -{}; -#endif - -} // end namespace +} // end namespace Dumux #endif diff --git a/dumux/material/fluidsystems/simplesteamaircao2h2.hh b/dumux/material/fluidsystems/simplesteamaircao2h2.hh index efc66fb2be..10b8123764 100644 --- a/dumux/material/fluidsystems/simplesteamaircao2h2.hh +++ b/dumux/material/fluidsystems/simplesteamaircao2h2.hh @@ -35,19 +35,11 @@ #include <dumux/material/binarycoefficients/h2o_air.hh> #include <dumux/material/components/tabulatedcomponent.hh> -// #include <dumux/material/fluidsystems/nullparametercache.hh> - #include <dumux/common/valgrind.hh> #include <dumux/common/exceptions.hh> -#ifdef DUMUX_PROPERTIES_HH -#include <dumux/common/properties.hh> -#endif - -namespace Dumux -{ -namespace FluidSystems -{ +namespace Dumux { +namespace FluidSystems { /*! * \ingroup Fluidsystems * @@ -57,35 +49,9 @@ namespace FluidSystems * * This fluidsystem is applied by default to the simpleh2o, as the IAPWS-formulation has to be * adapted to high temperatures and high pressures first. - * - * To change the component formulation (i.e. to use (non)tabulated or - * incompressible water), or to switch on verbosity of tabulation, - * specify the water formulation via template arguments or via the property - * system, as described in the TypeTag Adapter at the end of the file. - * - * \code{.cpp} - * // Select fluid system - * SET_PROP(TheSpecificProblemTypeTag, FluidSystem) - * { - * // e.g. to use a simple version of H2O - * typedef typename GET_PROP_TYPE(TypeTag, Scalar) Scalar; - * typedef Dumux::FluidSystems::H2OAir<Scalar, Dumux::SimpleH2O<Scalar> > type; - * }; - * \endcode - * - * Also remember to initialize tabulated components (FluidSystem::init()), while this - * is not necessary for non-tabularized ones. - * - * This FluidSystem can be used without the PropertySystem that is applied in Dumux, - * as all Parameters are defined via template parameters. Hence it is in an - * additional namespace Dumux::FluidSystem::. - * An adapter class using Dumux::FluidSystem<TypeTag> is also provided - * at the end of this file. */ -template <class Scalar, -// class H2Otype = Dumux::TabulatedComponent<Scalar, Dumux::H2O<Scalar>>, - bool useComplexRelations=true> +template <class Scalar, bool useComplexRelations=true> class SteamAirCaO2H2 : public BaseFluidSystem<Scalar, SteamAirCaO2H2<Scalar, /*H2Otype,*/ useComplexRelations> > { @@ -654,7 +620,7 @@ private: } }; -} // end namespace -} // end namespace +} // end namespace FluidSystems +} // end namespace Dumux #endif -- GitLab