diff --git a/dumux/material/solidstates/compositionalsolidstate.hh b/dumux/material/solidstates/compositionalsolidstate.hh index 3621afb101a0849e2a69db1e73f7cdd081a9b117..68a7e0b60ccae8e21a17c3aa1b3dff88b72a8797 100644 --- a/dumux/material/solidstates/compositionalsolidstate.hh +++ b/dumux/material/solidstates/compositionalsolidstate.hh @@ -26,26 +26,27 @@ #ifndef DUMUX_SOLID_STATE_COMPOSITIONAL_HH #define DUMUX_SOLID_STATE_COMPOSITIONAL_HH -#include "updatesolidvolumefractions.hh" - -namespace Dumux -{ +namespace Dumux { /*! * \ingroup SolidStates * \brief Represents all relevant thermodynamic quantities of a inert * solid system */ -template <class Scalar, class SolidSystem> +template <class Scalar, class SolidSystemType> class CompositionalSolidState { public: + using SolidSystem = SolidSystemType; + enum { numComponents = SolidSystem::numComponents, numInertComponents = SolidSystem::numInertComponents, }; + static constexpr bool isInert() { return SolidSystem::isInert(); } + /*! * \brief The average molar mass \f$\overline M_\alpha\f$ of phase \f$\alpha\f$ in \f$\mathrm{[kg/mol]}\f$ * diff --git a/dumux/material/solidstates/inertsolidstate.hh b/dumux/material/solidstates/inertsolidstate.hh index dee1b2e576f3caa603c83005964e7ac14fbc722c..fb86c49c7ce820e77d0d79e3994187ca0d8d2a01 100644 --- a/dumux/material/solidstates/inertsolidstate.hh +++ b/dumux/material/solidstates/inertsolidstate.hh @@ -26,25 +26,25 @@ #ifndef DUMUX_INERT_SOLID_STATE_HH #define DUMUX_INERT_SOLID_STATE_HH -#include "updatesolidvolumefractions.hh" - -namespace Dumux -{ +namespace Dumux { /*! * \ingroup SolidStates * \brief Represents all relevant thermodynamic quantities of a inert * solid system */ -template <class Scalar, class SolidSystem> +template <class Scalar, class SolidSystemType> class InertSolidState { public: + using SolidSystem = SolidSystemType; + enum { numComponents = SolidSystem::numComponents, numInertComponents = SolidSystem::numInertComponents, }; + static constexpr bool isInert() { static_assert(SolidSystem::isInert(), "Only inert solid systems are allowed with the InertSolidState");