diff --git a/dumux/material/fluidmatrixinteractions/1p/thermalconductivityaverage.hh b/dumux/material/fluidmatrixinteractions/1p/thermalconductivityaverage.hh index ede182b1c129b4aeceb8d2fbce523ae5413196df..720e48596098de7deecf2218b3204580e600b0a6 100644 --- a/dumux/material/fluidmatrixinteractions/1p/thermalconductivityaverage.hh +++ b/dumux/material/fluidmatrixinteractions/1p/thermalconductivityaverage.hh @@ -11,25 +11,41 @@ namespace Dumux { +/*! + * \addtogroup EffectiveHeatConductivity + * \copydetails Dumux::ThermalConductivityAverage + */ + /*! * \ingroup EffectiveHeatConductivity - * \brief Relation for a simple effective thermal conductivity + * \brief Effective thermal conductivity based on weighted arithmetic average * - * ### Average + * ### Average (multiple fluid phases, one solid phase) * - * The effective thermal conductivity is calculated as a weighted average of the thermal - * conductivities of the solid and the fluid phases. Additionally, the saturation is taken - * into account. + * The effective thermal conductivity of `ThermalConductivityAverage` + * is calculated as a weighted arithmetic average of the thermal + * conductivities of the solid and the fluid phases. The weights are determined by the volume + * fraction the phase occupies. Denoting the volume fractions by \f$ n_\alpha \f$, we have + * \f[ + * \lambda_\text{eff} = \sum_\alpha \lambda_\alpha n_\alpha / \sum_\alpha n_\alpha, + * \f] + * summing over both fluid and solid phases. With the porosity \f$ \phi \f$ as + * the sum of all fluid volume fractions, we can equivalently write + * \f[ + * \lambda_\text{eff} = \lambda_\text{s} (1-\phi) + \lambda_\text{f} \phi, + * \f] + * where \f$ \lambda_\text{s} \f$ is the thermal conductivity of the solid phase, + * and the effective thermal conductivity of the liquid phases is computed as + * an arithmetic average weighted with the fluid saturations. */ template<class Scalar> class ThermalConductivityAverage { public: /*! - * \brief Relation for a simple effective thermal conductivity \f$\mathrm{[W/(m K)]}\f$ - * + * \brief Effective thermal conductivity in \f$\mathrm{W/(m K)}\f$ * \param volVars volume variables - * \return Effective thermal conductivity \f$\mathrm{[W/(m K)]}\f$ + * \return Effective thermal conductivity in \f$\mathrm{W/(m K)}\f$ */ template<class VolumeVariables> static Scalar effectiveThermalConductivity(const VolumeVariables& volVars) diff --git a/dumux/material/fluidmatrixinteractions/2p/thermalconductivity/johansen.hh b/dumux/material/fluidmatrixinteractions/2p/thermalconductivity/johansen.hh index 537fc27c8c03bc2737e862e73247182177673062..cd71851a7267bfa26282aa16b75b9e6e57abacf9 100644 --- a/dumux/material/fluidmatrixinteractions/2p/thermalconductivity/johansen.hh +++ b/dumux/material/fluidmatrixinteractions/2p/thermalconductivity/johansen.hh @@ -14,58 +14,40 @@ namespace Dumux { /*! * \addtogroup EffectiveHeatConductivity - * \copydoc Dumux::ThermalConductivityJohansen -*/ + * \copydetails Dumux::ThermalConductivityJohansen + */ /*! * \ingroup EffectiveHeatConductivity * \brief Relation for the saturation-dependent effective thermal conductivity * - * ### Johansen Method + * ### Johansen (two fluid phases) * - * The Johansen method (Johansen 1975 \cite johansen1977 ) computes the thermal conductivity of dry and the - * wet soil material and uses a root function of the wetting saturation to compute the - * effective thermal conductivity for a two-phase fluidsystem. The individual thermal - * conductivities are calculated as geometric mean of the thermal conductivity of the porous - * material and of the respective fluid phase. - * The material law is: - * \f[ - * \mathrm{[ - * \lambda_\text{eff} = \lambda_{\text{dry}} + \sqrt{(S_w)} \left(\lambda_\text{wet} - \lambda_\text{dry}\right) - * }\f] + * `ThermalConductivityJohansen` \cite johansen1977 computes the thermal conductivity of dry and the + * wet soil material and interpolates using the Kersten number. The effective wet conductivity + * is based on a geometric average and the effective dry conductivity is based on a semi-emprical + * relation and fitted to medium quartz sand. * - * with + * The effective thermal conductivity is given by * \f[ - * \mathrm{ - * \lambda_\text{wet} = \lambda_{solid}^{\left(1-\phi\right)}*\lambda_w^\phi - * }\f] - * and the semi-empirical relation - * - * \f[ - * \mathrm{ - * \lambda_\text{dry} = \frac{0.135*\rho_s*\phi + 64.7}{\rho_s - 0.947 \rho_s*\phi}. - * }\f] - * - * Source: Phdthesis (Johansen1975) Johansen, O. Thermal conductivity of soils Norw. Univ. of Sci. Technol., Trondheim, Norway, 1975 \cite johansen1977 + * \lambda_\text{eff} = \lambda_{\text{dry}} + \text{Ke} \left(\lambda_\text{wet} - \lambda_\text{dry}\right), \quad + * \lambda_\text{wet} = \lambda_\text{s}^{\left(1-\phi\right)} \lambda_\text{w}^\phi, \quad + * \lambda_\text{dry} = \frac{0.135 \rho_\text{s} \phi + 64.7}{\rho_\text{s} - 0.947 \rho_\text{s} \phi}, + * \f] + * where \f$ \phi \f$ is the porosity, \f$ \lambda_\alpha \f$ is the thermal conductivity + * of phase \f$ \alpha \f$, \f$ \rho_\text{s} \f$ denotes the density of the solid phase, and the + * Kersten number is given by \f$ \text{Ke} = (\kappa S_\text{w})/(1 + (1-\kappa) S_\text{w}) \f$, + * with the wetting phase saturation \f$ S_w \f$ and a fitting parameter \f$ \kappa = 15.6 \f$ + * for medium quartz sand. */ template<class Scalar> class ThermalConductivityJohansen { public: /*! - * \brief Returns the effective thermal conductivity \f$\mathrm{[W/(m K)]}\f$ after Johansen (1975) \cite johansen1977 . - * + * \brief Effective thermal conductivity in \f$\mathrm{W/(m K)}\f$ for two phases * \param volVars volume variables - * \return Effective thermal conductivity \f$\mathrm{[W/(m K)]}\f$ after Johansen (1975) \cite johansen1977 <BR> - * - * This formulation is semi-empirical and fitted to quartz sand. - * This gives an interpolation of the effective thermal conductivities of a porous medium - * filled with the nonwetting phase and a porous medium filled with the wetting phase. - * These two effective conductivities are computed as geometric mean of the solid and the - * fluid conductivities and interpolated with the Kersten number.<br> - * Johansen, O. 1975. Thermal conductivity of soils. Ph.D. diss. Norwegian Univ. - * of Sci. and Technol., Trondheim. (Draft Transl. 637. 1977. U.S. Army - * Corps of Eng., Cold Regions Res. and Eng. Lab., Hanover, NH.) \cite johansen1977 + * \return Effective thermal conductivity in \f$\mathrm{W/(m K)}\f$ for two phases */ template<class VolumeVariables> static Scalar effectiveThermalConductivity(const VolumeVariables& volVars) @@ -86,16 +68,16 @@ public: private: /*! - * \brief Returns the effective thermal conductivity \f$\mathrm{[W/(m K)]}\f$ after Johansen (1975) \cite johansen1977 . + * \brief Effective thermal conductivity in \f$\mathrm{W/(m K)}\f$ for two phases * * \param Sw The saturation of the wetting phase - * \param lambdaW The thermal conductivity of the wetting phase in \f$\mathrm{[W/(m K)]}\f$ - * \param lambdaN The thermal conductivity of the nonwetting phase in \f$\mathrm{[W/(m K)]}\f$ - * \param lambdaSolid The thermal conductivity of the solid phase in \f$\mathrm{[W/(m K)]}\f$ + * \param lambdaW The thermal conductivity of the wetting phase in \f$\mathrm{W/(m K)}\f$ + * \param lambdaN The thermal conductivity of the nonwetting phase in \f$\mathrm{W/(m K)}\f$ + * \param lambdaSolid The thermal conductivity of the solid phase in \f$\mathrm{W/(m K)}\f$ * \param porosity The porosity - * \param rhoSolid The density of solid phase in \f$\mathrm{[kg/m^3]}\f$ + * \param rhoSolid The density of solid phase in \f$\mathrm{kg/m^3}\f$ * - * \return Effective thermal conductivity \f$\mathrm{[W/(m K)]}\f$ after Johansen (1975) \cite johansen1977 + * \return Effective thermal conductivity in \f$\mathrm{W/(m K)}\f$ for two phases */ static Scalar effectiveThermalConductivity_(const Scalar Sw, const Scalar lambdaW, @@ -111,6 +93,7 @@ private: const Scalar rhoBulk = rhoSolid*porosity; using std::pow; + const Scalar lambdaSaturated = lambdaSolid * pow(lambdaW / lambdaSolid, porosity); const Scalar lambdaDry = (0.135*rhoBulk + 64.7)/(rhoSolid - 0.947*rhoBulk); const Scalar Ke = (kappa*satW)/(1+(kappa-1)*satW);// Kersten number, equation 13 @@ -118,5 +101,7 @@ private: return lambdaDry + Ke * (lambdaSaturated - lambdaDry); // equation 14 } }; + } // end namespace Dumux + #endif diff --git a/dumux/material/fluidmatrixinteractions/2p/thermalconductivity/simplefluidlumping.hh b/dumux/material/fluidmatrixinteractions/2p/thermalconductivity/simplefluidlumping.hh index 425c719247a84a1a6263398071c12e0a9e4efec6..c00227dafd91b064d3e983f8daf4a0b724b4beac 100644 --- a/dumux/material/fluidmatrixinteractions/2p/thermalconductivity/simplefluidlumping.hh +++ b/dumux/material/fluidmatrixinteractions/2p/thermalconductivity/simplefluidlumping.hh @@ -9,31 +9,23 @@ #include <assert.h> #include <algorithm> +#warning "This header is deprecated and will be removed after 3.9. Use ThermalConductivityAverage" namespace Dumux { -/*! - * \addtogroup EffectiveHeatConductivity - * \copydoc Dumux::ThermalConductivitySimpleFluidLumping -*/ - /*! * \ingroup EffectiveHeatConductivity * \brief Relation for the saturation-dependent effective thermal conductivity - * - * ### Simple Fluid Lumping - * - * TODO: DOCUMENTATION of the fluid lumping method + * \deprecated This does the same as `ThermalConductivityAverage` but only works for two fluid phases */ template<class Scalar> -class ThermalConductivitySimpleFluidLumping +class [[deprecated("Use ThermalConductivityAverage. Will be removed after 3.9.")]] ThermalConductivitySimpleFluidLumping { public: /*! - * \brief Effective thermal conductivity \f$\mathrm{[W/(m K)]}\f$ - * + * \brief Effective thermal conductivity in \f$\mathrm{W/(m K)}\f$ for two phases * \param volVars volume variables - * \return effective thermal conductivity \f$\mathrm{[W/(m K)]}\f$ + * \return Effective thermal conductivity in \f$\mathrm{W/(m K)}\f$ for two phases */ template<class VolumeVariables> static Scalar effectiveThermalConductivity(const VolumeVariables& volVars) @@ -50,15 +42,15 @@ public: private: /*! - * \brief Returns the effective thermal conductivity \f$\mathrm{[W/(m K)]}\f$. + * \brief Effective thermal conductivity in \f$\mathrm{W/(m K)}\f$ for two phases * * \param sw The saturation of the wetting phase - * \param lambdaW The thermal conductivity of the wetting phase in \f$\mathrm{[W/(m K)]}\f$ - * \param lambdaN The thermal conductivity of the nonwetting phase in \f$\mathrm{[W/(m K)]}\f$ - * \param lambdaSolid The thermal conductivity of the solid phase in \f$\mathrm{[W/(m K)]}\f$ + * \param lambdaW The thermal conductivity of the wetting phase in \f$\mathrm{W/(m K)}\f$ + * \param lambdaN The thermal conductivity of the nonwetting phase in \f$\mathrm{W/(m K)}\f$ + * \param lambdaSolid The thermal conductivity of the solid phase in \f$\mathrm{W/(m K)}\f$ * \param porosity The porosity * - * \return Effective thermal conductivity of the fluid phases + * \return Effective thermal conductivity in \f$\mathrm{W/(m K)}\f$ for two phases */ static Scalar effectiveThermalConductivity_(const Scalar sw, const Scalar lambdaW, @@ -72,5 +64,7 @@ private: return porosity * ( (1. - satW) * lambdaN + satW * lambdaW ) + (1.0 - porosity) * lambdaSolid ; ; // arithmetic } }; + } // end namespace Dumux + #endif diff --git a/dumux/material/fluidmatrixinteractions/2p/thermalconductivity/somerton.hh b/dumux/material/fluidmatrixinteractions/2p/thermalconductivity/somerton.hh index 7e21a2201677b024dac9a48be17ce3a540e2a657..d21195a72eb1c0557b578003b5a17250a6ccf6e7 100644 --- a/dumux/material/fluidmatrixinteractions/2p/thermalconductivity/somerton.hh +++ b/dumux/material/fluidmatrixinteractions/2p/thermalconductivity/somerton.hh @@ -4,8 +4,8 @@ // SPDX-FileCopyrightInfo: Copyright © DuMux Project contributors, see AUTHORS.md in root folder // SPDX-License-Identifier: GPL-3.0-or-later // -#ifndef DUMUX_MATERIAL_FLUIDMATRIX_THERMALCONDUCTIVITY_SOMERTON_HH -#define DUMUX_MATERIAL_FLUIDMATRIX_THERMALCONDUCTIVITY_SOMERTON_HH +#ifndef DUMUX_MATERIAL_FLUIDMATRIX_THERMALCONDUCTIVITY_SOMERTON_TWO_P_HH +#define DUMUX_MATERIAL_FLUIDMATRIX_THERMALCONDUCTIVITY_SOMERTON_TWO_P_HH #include <algorithm> #include <cmath> @@ -14,65 +14,49 @@ namespace Dumux { /*! * \addtogroup EffectiveHeatConductivity - * \copydoc Dumux::ThermalConductivitySomerton -*/ + * \copydetails Dumux::ThermalConductivitySomertonTwoP + */ /*! - * \addtogroup EffectiveHeatConductivity * \ingroup EffectiveHeatConductivity - * \brief Relation for the saturation-dependent effective thermal conductivity + * \brief Effective thermal conductivity after Somerton * - * ### Somerton Method (2p) + * ### Somerton (two fluid phases) * - * The Somerton method computes the thermal conductivity of dry and the wet soil material - * and uses a root function of the wetting saturation to compute the + * The Somerton method \cite somerton1974 computes the thermal conductivity of dry and the wet soil material. + * It uses a root function of the water saturation to compute the * effective thermal conductivity for a two-phase fluidsystem. The individual thermal * conductivities are calculated as geometric mean of the thermal conductivity of the porous * material and of the respective fluid phase. * - * The material law is: + * The effective thermal conductivity of `ThermalConductivitySomertonTwoP` is given by * \f[ - * \mathrm{ - * \lambda_\text{eff} = \lambda_{\text{dry}} + \sqrt{(S_w)} \left(\lambda_\text{wet} - \lambda_\text{dry}\right) - * } + * \lambda_\text{eff} = \lambda_\text{g,eff} + \sqrt{S_\text{w}} \left(\lambda_\text{w,eff} - \lambda_\text{g,eff}\right) * \f] * - * with - * \f[ - * \mathrm{ - * \lambda_\text{wet} = \lambda_{solid}^{\left(1-\phi\right)}*\lambda_w^\phi - * }\f] - * and - * - * \f[ - * \mathrm{ - * \lambda_\text{dry} = \lambda_{solid}^{\left(1-\phi\right)}*\lambda_n^\phi. - * }\f] - * + * with \f$ S_\text{w} \f$ the water saturation, + * \f$ S_\text{n} \f$ the NAPL saturation, the effective phase saturations given by + * \f$ \lambda_{\alpha,\text{eff}} = (\lambda_\text{s})^{\left(1-\phi\right)} (\lambda_\alpha)^\phi, \alpha \in \lbrace\text{w,n,g}\rbrace \f$ + * (geometric mean) and \f$ \lambda_\text{s} \f$ is the thermal conductivity of the solid phase. + * The effective conductivity \f$ \lambda_\text{g,eff} \f$ corresponds to dry conditions, whereas the + * effective conductivity \f$ \lambda_\text{g,eff} \f$ corresponds to wet conditions. */ template<class Scalar> -class ThermalConductivitySomerton +class ThermalConductivitySomertonTwoP { public: /*! - * \brief effective thermal conductivity \f$\mathrm{[W/(m K)]}\f$ after Somerton (1974) \cite somerton1974 <BR> - * + * \brief Effective thermal conductivity in \f$\mathrm{W/(m K)}\f$ for two phases * \param volVars volume variables - * \return effective thermal conductivity \f$\mathrm{[W/(m K)]}\f$ after Somerton (1974) \cite somerton1974 <BR> - * - * This gives an interpolation of the effective thermal conductivities of a porous medium - * filled with the nonwetting phase and a porous medium filled with the wetting phase. - * These two effective conductivities are computed as geometric mean of the solid and the - * fluid conductivities and interpolated with the square root of the wetting saturation. - * See f.e. Ebigbo, A.: Thermal Effects of Carbon Dioxide Sequestration in the Subsurface, Diploma thesis \cite ebigbo2005 . + * \return Effective thermal conductivity in \f$\mathrm{W/(m K)}\f$ for two phases */ template<class VolumeVariables> static Scalar effectiveThermalConductivity(const VolumeVariables& volVars) { using FluidSystem = typename VolumeVariables::FluidSystem; - static_assert(FluidSystem::numPhases == 2, "ThermalConductivitySomerton only works for two-phase fluid systems!"); + static_assert(FluidSystem::numPhases == 2, "ThermalConductivitySomertonTwoP only works for two-phase fluid systems!"); static_assert((FluidSystem::isGas(0) && !FluidSystem::isGas(1)) || (!FluidSystem::isGas(0) && FluidSystem::isGas(1)), - "ThermalConductivitySomerton only works if one phase is gaseous and one is liquid!"); + "ThermalConductivitySomertonTwoP only works if one phase is gaseous and one is liquid!"); constexpr int liquidPhaseIdx = FluidSystem::isGas(0) ? 1 : 0; constexpr int gasPhaseIdx = FluidSystem::isGas(0) ? 0 : 1; @@ -88,23 +72,21 @@ public: private: /*! - * \brief effective thermal conductivity \f$\mathrm{[W/(m K)]}\f$ after Somerton (1974) \cite somerton1974 <BR> + * \brief Effective thermal conductivity in \f$\mathrm{W/(m K)}\f$ for two phases * * \param satLiquid The saturation of the liquid phase - * \param lambdaLiquid The thermal conductivity of the liquid phase in \f$\mathrm{[W/(m K)]}\f$ - * \param lambdaGas The thermal conductivity of the gas phase in \f$\mathrm{[W/(m K)]}\f$ - * \param lambdaSolid The thermal conductivity of the solid phase in \f$\mathrm{[W/(m K)]}\f$ + * \param lambdaLiquid The thermal conductivity of the liquid phase in \f$\mathrm{W/(m K)}\f$ + * \param lambdaGas The thermal conductivity of the gas phase in \f$\mathrm{W/(m K)}\f$ + * \param lambdaSolid The thermal conductivity of the solid phase in \f$\mathrm{W/(m K)}\f$ * \param porosity The porosity - * \param rhoSolid The density of solid phase in \f$\mathrm{[kg/m^3]}\f$ * - * \return effective thermal conductivity \f$\mathrm{[W/(m K)]}\f$ after Somerton (1974) \cite somerton1974 + * \brief Effective thermal conductivity in \f$\mathrm{W/(m K)}\f$ for two phases */ static Scalar effectiveThermalConductivity_(const Scalar satLiquid, const Scalar lambdaLiquid, const Scalar lambdaGas, const Scalar lambdaSolid, - const Scalar porosity, - const Scalar rhoSolid = 0.0 /*unused*/) + const Scalar porosity) { using std::max; using std::pow; @@ -118,6 +100,11 @@ private: } }; +#ifndef DOXYGEN +template<class Scalar> +using ThermalConductivitySomerton [[deprecated("Use ThermalConductivitySomertonTwoP. Will be removed after 3.9.")]] = ThermalConductivitySomertonTwoP<Scalar>; +#endif + } // end namespace Dumux #endif diff --git a/dumux/material/fluidmatrixinteractions/3p/thermalconductivitysomerton3p.hh b/dumux/material/fluidmatrixinteractions/3p/thermalconductivitysomerton3p.hh index 33989b345afe255cc9b24fdc50956152909dfa55..5744fc49d6279042dd830aed3457626920af9317 100644 --- a/dumux/material/fluidmatrixinteractions/3p/thermalconductivitysomerton3p.hh +++ b/dumux/material/fluidmatrixinteractions/3p/thermalconductivitysomerton3p.hh @@ -4,8 +4,8 @@ // SPDX-FileCopyrightInfo: Copyright © DuMux Project contributors, see AUTHORS.md in root folder // SPDX-License-Identifier: GPL-3.0-or-later // -#ifndef DUMUX_MATERIAL_THERMALCONDUCTIVITY_SOMERTON_3P_HH -#define DUMUX_MATERIAL_THERMALCONDUCTIVITY_SOMERTON_3P_HH +#ifndef DUMUX_MATERIAL_FLUIDMATRIX_THERMALCONDUCTIVITY_SOMERTON_THREE_P_HH +#define DUMUX_MATERIAL_FLUIDMATRIX_THERMALCONDUCTIVITY_SOMERTON_THREE_P_HH #include <algorithm> #include <cmath> @@ -14,57 +14,41 @@ namespace Dumux { /*! * \addtogroup EffectiveHeatConductivity - * \copydoc Dumux::ThermalConductivitySomerton -*/ + * \copydetails Dumux::ThermalConductivitySomertonThreeP + */ /*! * \ingroup EffectiveHeatConductivity - * \brief Relation for the saturation-dependent effective thermal conductivity + * \brief Effective thermal conductivity after Somerton * - * ### Somerton Method (3p) + * ### Somerton (three fluid phases) * - * The Somerton method computes the thermal conductivity of dry and the wet soil material. + * The Somerton method \cite somerton1974 computes the thermal conductivity of dry and the wet soil material. * It is extended here to a three phase system of water (w), NAPL (n) and gas (g). * It uses a root function of the water and NAPL saturation to compute the * effective thermal conductivity for a three-phase fluidsystem. The individual thermal * conductivities are calculated as geometric mean of the thermal conductivity of the porous * material and of the respective fluid phase. * - * The material law is: + * The effective thermal conductivity of `ThermalConductivitySomertonThreeP` is given by * \f[ - * \lambda_\text{eff} = \lambda_\text{g,eff} + \sqrt{(S_w)} \left(\lambda_\text{w,eff} - \lambda_\text{g,eff}\right) + - * \sqrt{(S_n)} \left(\lambda0_\text{n,eff} - \lambda_\text{g,eff}\right) + * \lambda_\text{eff} = \lambda_\text{g,eff} + \sqrt{S_\text{w}} \left(\lambda_\text{w,eff} - \lambda_\text{g,eff}\right) + + * \sqrt{S_\text{n}} \left(\lambda_\text{n,eff} - \lambda_\text{g,eff}\right) * \f] * - * with - * \f[ - * \lambda_\text{w,eff} = \lambda_{solid}^{\left(1-\phi\right)}*\lambda_w^\phi - * \f] - * and - * - * \f[ - * \lambda0_\text{n,eff} = \lambda_{solid}^{\left(1-\phi\right)}*\lambda_n^\phi. - * \f] - * - * \f[ - * \lambda_\text{g,eff} = \lambda_{solid}^{\left(1-\phi\right)}*\lambda_g^\phi. - * \f] + * with \f$ S_\text{w} \f$ the water saturation, + * \f$ S_\text{n} \f$ the NAPL saturation, the effective phase saturations given by + * \f$ \lambda_{\alpha,\text{eff}} = (\lambda_\text{s})^{\left(1-\phi\right)} (\lambda_\alpha)^\phi, \alpha \in \{\text{w,n,g}\}\f$ + * (geometric mean) and \f$ \lambda_\text{s} \f$ is the thermal conductivity of the solid phase. */ template<class Scalar> -class ThermalConductivitySomerton +class ThermalConductivitySomertonThreeP { public: /*! - * \brief effective thermal conductivity \f$\mathrm{[W/(m K)]}\f$ after Somerton (1974) extended for a three phase system - * + * \brief Effective thermal conductivity in \f$\mathrm{W/(m K)}\f$ for three phases * \param volVars volume variables - * - * \return effective thermal conductivity \f$\mathrm{[W/(m K)]}\f$ after Somerton (1974) - * - * This gives an interpolation of the effective thermal conductivities of a porous medium - * filled with the water phase (w), a NAPL phase (n) and a gas phase (g). - * These two effective conductivities are computed as geometric mean of the solid and the - * fluid conductivities and interpolated with the square root of the wetting saturation. + * \return Effective thermal conductivity in \f$\mathrm{W/(m K)}\f$ for three phases */ template<class VolumeVariables> static Scalar effectiveThermalConductivity(const VolumeVariables& volVars) @@ -83,17 +67,17 @@ public: } /*! - * \brief effective thermal conductivity \f$\mathrm{[W/(m K)]}\f$ after Somerton (1974) + * \brief Effective thermal conductivity in \f$\mathrm{W/(m K)}\f$ for three phases * * \param sw The saturation of the wetting phase * \param sn The saturation of the nonwetting phase - * \param lambdaW The thermal conductivity of the water phase in \f$\mathrm{[W/(m K)]}\f$ - * \param lambdaN The thermal conductivity of the NAPL phase in \f$\mathrm{[W/(m K)]}\f$ - * \param lambdaG The thermal conductivity of the gas phase in \f$\mathrm{[W/(m K)]}\f$ - * \param lambdaSolid The thermal conductivity of the solid phase in \f$\mathrm{[W/(m K)]}\f$ + * \param lambdaW The thermal conductivity of the water phase in \f$\mathrm{W/(m K)}\f$ + * \param lambdaN The thermal conductivity of the NAPL phase in \f$\mathrm{W/(m K)}\f$ + * \param lambdaG The thermal conductivity of the gas phase in \f$\mathrm{W/(m K)}\f$ + * \param lambdaSolid The thermal conductivity of the solid phase in \f$\mathrm{W/(m K)}\f$ * \param porosity The porosity * - * \return effective thermal conductivity \f$\mathrm{[W/(m K)]}\f$ after Somerton (1974) + * \return Effective thermal conductivity in \f$\mathrm{W/(m K)}\f$ for three phases */ static Scalar effectiveThermalConductivity(const Scalar sw, const Scalar sn, @@ -119,5 +103,14 @@ public: } }; + +#ifndef DOXYGEN +#ifndef DUMUX_MATERIAL_FLUIDMATRIX_THERMALCONDUCTIVITY_SOMERTON_TWO_P_HH +template<class Scalar> +using ThermalConductivitySomerton [[deprecated("Use ThermalConductivitySomertonThreeP. Will be removed after 3.9.")]] = ThermalConductivitySomertonThreeP<Scalar>; +#endif +#endif + } // end namespace Dumux + #endif