version 3.10-dev
simplefluidlumping.hh
Go to the documentation of this file.
1// -*- mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
2// vi: set et ts=4 sw=4 sts=4:
3//
4// SPDX-FileCopyrightInfo: Copyright © DuMux Project contributors, see AUTHORS.md in root folder
5// SPDX-License-Identifier: GPL-3.0-or-later
6//
7#ifndef DUMUX_MATERIAL_FLUIDMATRIX_THERMALCONDUCTIVITY_SIMPLE_FLUID_LUMPING_HH
8#define DUMUX_MATERIAL_FLUIDMATRIX_THERMALCONDUCTIVITY_SIMPLE_FLUID_LUMPING_HH
9
10#include <assert.h>
11#include <algorithm>
12#warning "This header is deprecated and will be removed after 3.9. Use ThermalConductivityAverage"
13
14namespace Dumux {
15
21template<class Scalar>
22class [[deprecated("Use ThermalConductivityAverage. Will be removed after 3.9.")]] ThermalConductivitySimpleFluidLumping
23{
24public:
30 template<class VolumeVariables>
31 static Scalar effectiveThermalConductivity(const VolumeVariables& volVars)
32 {
33 using FluidSystem = typename VolumeVariables::FluidSystem;
34 const Scalar sw = volVars.saturation(FluidSystem::phase0Idx);
35 const Scalar lambdaW = volVars.fluidThermalConductivity(FluidSystem::phase0Idx);
36 const Scalar lambdaN = volVars.fluidThermalConductivity(FluidSystem::phase1Idx);
37 const Scalar lambdaSolid = volVars.solidThermalConductivity();
38 const Scalar porosity = volVars.porosity();
39
40 return effectiveThermalConductivity_(sw, lambdaW, lambdaN, lambdaSolid, porosity);
41 }
42
43private:
55 static Scalar effectiveThermalConductivity_(const Scalar sw,
56 const Scalar lambdaW,
57 const Scalar lambdaN,
58 const Scalar lambdaSolid,
59 const Scalar porosity)
60 {
61 // Franz Lindner / Shi & Wang 2011
62 using std::max;
63 const Scalar satW = max<Scalar>(0.0, sw);
64 return porosity * ( (1. - satW) * lambdaN + satW * lambdaW ) + (1.0 - porosity) * lambdaSolid ; ; // arithmetic
65 }
66};
67
68} // end namespace Dumux
69
70#endif
Effective thermal conductivity based on weighted arithmetic average.
Definition: thermalconductivityaverage.hh:43
Relation for the saturation-dependent effective thermal conductivity.
Definition: simplefluidlumping.hh:23
static Scalar effectiveThermalConductivity(const VolumeVariables &volVars)
Effective thermal conductivity in for two phases.
Definition: simplefluidlumping.hh:31
std::string porosity() noexcept
I/O name of porosity.
Definition: name.hh:127
Definition: adapt.hh:17