diff --git a/dumux/implicit/propertydefaults.hh b/dumux/implicit/propertydefaults.hh index 93e67d7a40ba55b92062b85db3c254f9b7b23e57..6a605430bb73c8dbad6fd80b5c7395919dd77c04 100644 --- a/dumux/implicit/propertydefaults.hh +++ b/dumux/implicit/propertydefaults.hh @@ -40,6 +40,7 @@ #include "localjacobian.hh" #include "volumevariables.hh" #include "volumevariablesvector.hh" +#include "fluxvariables" #include "fluxvariablesvector.hh" #include "fvelementgeometry.hh" @@ -96,6 +97,29 @@ SET_TYPE_PROP(ImplicitBase, VolumeVariables, ImplicitVolumeVariables<TypeTag>); //! The global volume variables vector class SET_TYPE_PROP(ImplicitBase, VolumeVariablesVector, Dumux::VolumeVariablesVector<TypeTag>); +//! Set darcy fluxes as the default fluxes to be considered +SET_BOOL_PROP(ImplicitBase, DarcyFluxes, true); + +//! By default diffusive fluxes are switched off +SET_BOOL_PROP(ImplicitBase, DiffusiveFluxes, false); + +//! By default energy fluxes are not considered +SET_BOOL_PROP(ImplicitBase, EnergyFluxes, false); + +//! The class that contains the different flux variables (i.e. darcy, diffusion, energy) +SET_PROP(ImplicitBase, FluxVariables) +{ +private: + enum + { + darcy = GET_PROP_VALUE(TypeTag, DarcyFluxes), + diffusion = GET_PROP_VALUE(TypeTag, DiffusiveFluxes), + energy = GET_PROP_VALUE(TypeTag, EnergyFluxes) + }; +public: + typedef FluxVariables<TypeTag, darcy, diffusion, energy> type; +} + //! The global volume variables vector class SET_TYPE_PROP(ImplicitBase, FluxVariablesVector, Dumux::FluxVariablesVector<TypeTag>);