mirror of
https://github.com/OPM/opm-simulators.git
synced 2025-02-25 18:55:30 -06:00
sync with splitting point
This commit is contained in:
committed by
Andreas Lauser
parent
6a577ed3b9
commit
c07de5d462
4
doc/doxygen/.gitignore
vendored
4
doc/doxygen/.gitignore
vendored
@@ -1,4 +0,0 @@
|
||||
#doxygen
|
||||
doxygen-tag
|
||||
doxygen.log
|
||||
html
|
||||
8
doc/handbook/.gitignore
vendored
8
doc/handbook/.gitignore
vendored
@@ -1,8 +0,0 @@
|
||||
dumux-handbook.aux
|
||||
dumux-handbook.bbl
|
||||
dumux-handbook.blg
|
||||
dumux-handbook.idx
|
||||
dumux-handbook.log
|
||||
dumux-handbook.out
|
||||
dumux-handbook.pdf
|
||||
dumux-handbook.toc
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: fullermethod.hh 3777 2010-06-24 06:46:46Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2009 by Andreas Lauser *
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: h2o_n2.hh 3783 2010-06-24 11:33:53Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2009 by Andreas Lauser *
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: henryiapws.hh 3783 2010-06-24 11:33:53Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2009 by Andreas Lauser *
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
211
dumux/material/components/ch4.hh
Normal file
211
dumux/material/components/ch4.hh
Normal file
@@ -0,0 +1,211 @@
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2010 by Andreas Lauser
|
||||
* Institute of Hydraulic Engineering *
|
||||
* University of Stuttgart, Germany *
|
||||
* email: <givenname>.<name>@iws.uni-stuttgart.de *
|
||||
* *
|
||||
* 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, as long as this copyright notice *
|
||||
* is included in its original form. *
|
||||
* *
|
||||
* This program is distributed WITHOUT ANY WARRANTY. *
|
||||
*****************************************************************************/
|
||||
/*!
|
||||
* \file
|
||||
*
|
||||
* \brief Properties of methone (\f$CH_4\f$).
|
||||
*/
|
||||
#ifndef DUMUX_CH4_HH
|
||||
#define DUMUX_CH4_HH
|
||||
|
||||
#include <dumux/material/idealgas.hh>
|
||||
#include <dune/common/exceptions.hh>
|
||||
|
||||
#include "component.hh"
|
||||
|
||||
#include <cmath>
|
||||
|
||||
namespace Dumux
|
||||
{
|
||||
|
||||
/*!
|
||||
* \brief Properties of pure molecular methane \f$CH_4\f$.
|
||||
*/
|
||||
template <class Scalar>
|
||||
class CH4 : public Component<Scalar, CH4<Scalar> >
|
||||
{
|
||||
typedef Component<Scalar, CH4<Scalar> > ParentType;
|
||||
typedef Dumux::IdealGas<Scalar> IdealGas;
|
||||
|
||||
public:
|
||||
/*!
|
||||
* \brief A human readable name for methane.
|
||||
*/
|
||||
static const char *name()
|
||||
{ return "CH4"; }
|
||||
|
||||
/*!
|
||||
* \brief The mass in [kg/mol] of one of molecular methane.
|
||||
*/
|
||||
static Scalar molarMass()
|
||||
{ return 16.043e-3;}
|
||||
|
||||
/*!
|
||||
* \brief Returns the critical temperature [K] of molecular methane
|
||||
*/
|
||||
static Scalar criticalTemperature()
|
||||
{ return 190.4; /* [K] */ }
|
||||
|
||||
/*!
|
||||
* \brief Returns the critical pressure [Pa] of molecular methane
|
||||
*/
|
||||
static Scalar criticalPressure()
|
||||
{ return 46e5; /* [N/m^2] */ }
|
||||
|
||||
/*!
|
||||
* \brief Returns the temperature [K] at molecular methane's triple point.
|
||||
*/
|
||||
static Scalar tripleTemperature()
|
||||
{ return 90.7; /* [K] */ }
|
||||
|
||||
/*!
|
||||
* \brief Returns the pressure [Pa] at molecular methane's triple point.
|
||||
*/
|
||||
static Scalar triplePressure()
|
||||
{ return 0; /* [N/m^2] */ }
|
||||
|
||||
/*!
|
||||
* \brief The vapor pressure in [Pa] of pure molecular methane
|
||||
* at a given temperature.
|
||||
*/
|
||||
static Scalar vaporPressure(Scalar T)
|
||||
{ DUNE_THROW(Dune::NotImplemented, "vaporPressure for CH4"); }
|
||||
|
||||
|
||||
/*!
|
||||
* \brief The density [kg/m^3] of CH4 gas at a given pressure and temperature.
|
||||
*/
|
||||
static Scalar gasDensity(Scalar temperature, Scalar pressure)
|
||||
{
|
||||
// Assume an ideal gas
|
||||
return IdealGas::density(molarMass(), temperature, pressure);
|
||||
}
|
||||
|
||||
/*
|
||||
* \brief The pressure of gaseous CH4 at a given density and temperature [Pa].
|
||||
*/
|
||||
static Scalar gasPressure(Scalar temperature, Scalar density)
|
||||
{
|
||||
// Assume an ideal gas
|
||||
return IdealGas::pressure(temperature, density/molarMass());
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief The density [kg/m^3] of CH4 gas at a given pressure and temperature.
|
||||
*/
|
||||
static Scalar liquidDensity(Scalar temperature, Scalar pressure)
|
||||
{ DUNE_THROW(Dune::NotImplemented, "liquidDensity for CH4"); }
|
||||
|
||||
/*
|
||||
* \brief The pressure of liquid methane at a given density and
|
||||
* temperature [Pa].
|
||||
*/
|
||||
static Scalar liquidPressure(Scalar temperature, Scalar density)
|
||||
{ DUNE_THROW(Dune::NotImplemented, "liquidPressure for CH4"); }
|
||||
|
||||
/*!
|
||||
* \brief Specific enthalpy [J/kg] of pure methane gas.
|
||||
*
|
||||
* See: R. Reid, et al.: The Properties of Gases and Liquids, 4th
|
||||
* edition, McGraw-Hill, 1987, pp 154, 657, 671
|
||||
*/
|
||||
static const Scalar gasEnthalpy(Scalar T,
|
||||
Scalar pressure)
|
||||
{
|
||||
// method of Joback
|
||||
const Scalar cpVapA = 19.25;
|
||||
const Scalar cpVapB = 0.05213;
|
||||
const Scalar cpVapC = 1.197e-5;
|
||||
const Scalar cpVapD = -1.132e-8;
|
||||
|
||||
//Scalar cp =
|
||||
// cpVapA + T*(cpVapB + T*(cpVapC + T*cpVapD));
|
||||
|
||||
// calculate: \int_0^T c_p dT
|
||||
return
|
||||
1/molarMass()* // conversion from [J/mol] to [J/kg]
|
||||
|
||||
T*(cpVapA + T*
|
||||
(cpVapB/2 + T*
|
||||
(cpVapC/3 + T*
|
||||
(cpVapD/4))));
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Specific enthalpy [J/kg] of pure liquid CH4.
|
||||
*/
|
||||
static Scalar liquidEnthalpy(Scalar temperature, Scalar pressure)
|
||||
{ DUNE_THROW(Dune::NotImplemented, "liquidEnthalpy for CH4"); }
|
||||
|
||||
/*!
|
||||
* \brief Specific enthalpy [J/kg] of pure methane gas.
|
||||
*/
|
||||
static const Scalar gasInternalEnergy(Scalar temperature,
|
||||
Scalar pressure)
|
||||
{
|
||||
|
||||
return
|
||||
gasEnthalpy(temperature, pressure) -
|
||||
IdealGas::R*temperature; // = pressure * spec. volume for an ideal gas
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Specific enthalpy [J/kg] of pure liquid CH4.
|
||||
*/
|
||||
static Scalar liquidInternalEnergy(Scalar temperature, Scalar pressure)
|
||||
{ DUNE_THROW(Dune::NotImplemented, "liquidInternalEnergy of CH4"); }
|
||||
|
||||
/*!
|
||||
* \brief The dynamic viscosity [Pa s] of CH4 at a given pressure and temperature.
|
||||
*
|
||||
* See:
|
||||
*
|
||||
* See: R. Reid, et al.: The Properties of Gases and Liquids, 4th
|
||||
* edition, McGraw-Hill, 1987, pp 396-397, 670
|
||||
*/
|
||||
static Scalar gasViscosity(Scalar temperature, Scalar pressure)
|
||||
{
|
||||
const Scalar Tc = criticalTemperature();
|
||||
const Scalar Vc = 99.2; // critical specific volume [cm^3/mol]
|
||||
const Scalar omega = 0.011; // accentric factor
|
||||
const Scalar M = molarMass() * 1e3; // molar mas [g/mol]
|
||||
const Scalar dipole = 0.0; // dipole moment [debye]
|
||||
|
||||
Scalar mu_r4 = 131.3 * dipole / std::sqrt(Vc * Tc);
|
||||
mu_r4 *= mu_r4;
|
||||
mu_r4 *= mu_r4;
|
||||
|
||||
Scalar Fc = 1 - 0.2756*omega + 0.059035*mu_r4;
|
||||
Scalar Tstar = 1.2593 * temperature/Tc;
|
||||
Scalar Omega_v =
|
||||
1.16145*std::pow(Tstar, -0.14874) +
|
||||
0.52487*std::exp(- 0.77320*Tstar) +
|
||||
2.16178*std::exp(- 2.43787*Tstar);
|
||||
Scalar mu = 40.785*Fc*std::sqrt(M*temperature)/(std::pow(Vc, 2./3)*Omega_v);
|
||||
|
||||
// convertion from micro poise to Pa s
|
||||
return mu/1e6 / 10;
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief The dynamic liquid viscosity [N/m^3*s] of pure CH4.
|
||||
*/
|
||||
static Scalar liquidViscosity(Scalar temperature, Scalar pressure)
|
||||
{ DUNE_THROW(Dune::NotImplemented, "liquidViscosity for CH4"); }
|
||||
};
|
||||
|
||||
} // end namepace
|
||||
|
||||
#endif
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: component.hh 3824 2010-07-13 13:30:02Z lauser $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2009 by Andreas Lauser
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: h2o.hh 3783 2010-06-24 11:33:53Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2009 by Andreas Lauser
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: common.hh 3777 2010-06-24 06:46:46Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2009-2010 by Andreas Lauser *
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: region1.hh 3777 2010-06-24 06:46:46Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2009-2010 by Andreas Lauser *
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: region2.hh 3777 2010-06-24 06:46:46Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2009-2010 by Andreas Lauser *
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: region4.hh 3777 2010-06-24 06:46:46Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2009-2010 by Andreas Lauser *
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: n2.hh 3783 2010-06-24 11:33:53Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2009 by Andreas Lauser
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
190
dumux/material/components/simpleco2.hh
Normal file
190
dumux/material/components/simpleco2.hh
Normal file
@@ -0,0 +1,190 @@
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2009-2010 by Melanie Darcis *
|
||||
* Copyright (C) 2009-2010 by Andreas Lauser *
|
||||
* Institute of Hydraulic Engineering *
|
||||
* University of Stuttgart, Germany *
|
||||
* email: <givenname>.<name>@iws.uni-stuttgart.de *
|
||||
* *
|
||||
* 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, as long as this copyright notice *
|
||||
* is included in its original form. *
|
||||
* *
|
||||
* This program is distributed WITHOUT ANY WARRANTY. *
|
||||
*****************************************************************************/
|
||||
/*!
|
||||
* \file
|
||||
*
|
||||
* \brief A simple class for the CO2 fluid properties
|
||||
*/
|
||||
#ifndef DUMUX_SIMPLE_CO2_HH
|
||||
#define DUMUX_SIMPLE_CO2_HH
|
||||
|
||||
#include <dune/common/exceptions.hh>
|
||||
#include <dumux/material/idealgas.hh>
|
||||
|
||||
#include "component.hh"
|
||||
|
||||
#include <cmath>
|
||||
#include <iostream>
|
||||
|
||||
namespace Dumux
|
||||
{
|
||||
/*!
|
||||
* \brief A class for the CO2 fluid properties
|
||||
*/
|
||||
template <class Scalar>
|
||||
class SimpleCO2 : public Component<Scalar, SimpleCO2<Scalar> >
|
||||
{
|
||||
typedef Dumux::IdealGas<Scalar> IdealGas;
|
||||
|
||||
public:
|
||||
/*!
|
||||
* \brief A human readable name for the CO2.
|
||||
*/
|
||||
static const char *name()
|
||||
{ return "CO2"; }
|
||||
|
||||
/*!
|
||||
* \brief The mass in [kg] of one mole of CO2.
|
||||
*/
|
||||
static Scalar molarMass()
|
||||
{ return 44e-3; }
|
||||
|
||||
/*!
|
||||
* \brief Returns the critical temperature [K] of CO2
|
||||
*/
|
||||
static Scalar criticalTemperature()
|
||||
{ return 273.15 + 30.95; /* [K] */ }
|
||||
|
||||
/*!
|
||||
* \brief Returns the critical pressure [Pa] of CO2
|
||||
*/
|
||||
static Scalar criticalPressure()
|
||||
{ return 73.8e5; /* [N/m^2] */ }
|
||||
|
||||
/*!
|
||||
* \brief Returns the temperature [K]at CO2's triple point.
|
||||
*/
|
||||
static Scalar tripleTemperature()
|
||||
{ return 273.15 - 56.35; /* [K] */ }
|
||||
|
||||
/*!
|
||||
* \brief Returns the pressure [Pa] at CO2's triple point.
|
||||
*/
|
||||
static Scalar triplePressure()
|
||||
{ return 5.11e5; /* [N/m^2] */ }
|
||||
|
||||
/*!
|
||||
* \brief The vapor pressure in [N/m^2] of pure CO2
|
||||
* at a given temperature.
|
||||
*/
|
||||
static Scalar vaporPressure(Scalar T)
|
||||
{ DUNE_THROW(Dune::NotImplemented, "vaporPressure of simple CO2"); }
|
||||
|
||||
/*!
|
||||
* \brief Specific enthalpy of gaseous CO2 [J/kg].
|
||||
*/
|
||||
static const Scalar gasEnthalpy(Scalar temperature,
|
||||
Scalar pressure)
|
||||
{ return 571.3e3 + (temperature - 298.15)*0.85e3; }
|
||||
|
||||
/*!
|
||||
* \brief Specific enthalpy of liquid CO2 [J/kg].
|
||||
*/
|
||||
static const Scalar liquidEnthalpy(Scalar temperature,
|
||||
Scalar pressure)
|
||||
{ return (temperature - 298.15)*5e3; }
|
||||
|
||||
/*!
|
||||
* \brief Specific internal energy of CO2 [J/kg].
|
||||
*/
|
||||
static const Scalar gasInternalEnergy(Scalar temperature,
|
||||
Scalar pressure)
|
||||
{
|
||||
return
|
||||
gasEnthalpy(temperature, pressure) -
|
||||
IdealGas::R*temperature; // = pressure * spec. volume for an ideal gas
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Specific internal energy of liquid CO2 [J/kg].
|
||||
*/
|
||||
static const Scalar liquidInternalEnergy(Scalar temperature,
|
||||
Scalar pressure)
|
||||
{ DUNE_THROW(Dune::NotImplemented, "liquidInternalEnergy of simple CO2"); }
|
||||
|
||||
/*!
|
||||
* \brief The density of CO2 at a given pressure and temperature [kg/m^3].
|
||||
*/
|
||||
static Scalar gasDensity(Scalar temperature, Scalar pressure)
|
||||
{
|
||||
// Assume an ideal gas
|
||||
return IdealGas::density(molarMass(), temperature, pressure);
|
||||
}
|
||||
|
||||
/*
|
||||
* \brief The pressure of gaseous CO2 at a given density and temperature [Pa].
|
||||
*/
|
||||
static Scalar gasPressure(Scalar temperature, Scalar density)
|
||||
{
|
||||
// Assume an ideal gas
|
||||
return IdealGas::pressure(temperature, density/molarMass());
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief The density of pure CO2 at a given pressure and temperature [kg/m^3].
|
||||
*/
|
||||
static Scalar liquidDensity(Scalar temperature, Scalar pressure)
|
||||
{ DUNE_THROW(Dune::NotImplemented, "liquidDensity of simple CO2"); }
|
||||
|
||||
/*
|
||||
* \brief The pressure of liquid CO2 at a given density and
|
||||
* temperature [Pa].
|
||||
*/
|
||||
static Scalar liquidPressure(Scalar temperature, Scalar density)
|
||||
{ DUNE_THROW(Dune::NotImplemented, "liquidPressure for simple CO2"); }
|
||||
|
||||
/*!
|
||||
* \brief The dynamic viscosity [Pa s] of CO2 at a given pressure and temperature.
|
||||
*
|
||||
* See:
|
||||
*
|
||||
* See: R. Reid, et al.: The Properties of Gases and Liquids, 4th
|
||||
* edition, McGraw-Hill, 1987, pp 396-397, 667
|
||||
*/
|
||||
static Scalar gasViscosity(Scalar temperature, Scalar pressure)
|
||||
{
|
||||
const Scalar Tc = criticalTemperature();
|
||||
const Scalar Vc = 93.9; // critical specific volume [cm^3/mol]
|
||||
const Scalar omega = 0.239; // accentric factor
|
||||
const Scalar M = molarMass() * 1e3; // molar mas [g/mol]
|
||||
const Scalar dipole = 0.0; // dipole moment [debye]
|
||||
|
||||
Scalar mu_r4 = 131.3 * dipole / std::sqrt(Vc * Tc);
|
||||
mu_r4 *= mu_r4;
|
||||
mu_r4 *= mu_r4;
|
||||
|
||||
Scalar Fc = 1 - 0.2756*omega + 0.059035*mu_r4;
|
||||
Scalar Tstar = 1.2593 * temperature/Tc;
|
||||
Scalar Omega_v =
|
||||
1.16145*std::pow(Tstar, -0.14874) +
|
||||
0.52487*std::exp(- 0.77320*Tstar) +
|
||||
2.16178*std::exp(- 2.43787*Tstar);
|
||||
Scalar mu = 40.785*Fc*std::sqrt(M*temperature)/(std::pow(Vc, 2./3)*Omega_v);
|
||||
|
||||
// convertion from micro poise to Pa s
|
||||
return mu/1e6 / 10;
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief The dynamic viscosity [N/m^3*s] of pure CO2.
|
||||
*/
|
||||
static Scalar liquidViscosity(Scalar temperature, Scalar pressure)
|
||||
{ DUNE_THROW(Dune::NotImplemented, "liquidViscosity of simple CO2"); }
|
||||
};
|
||||
|
||||
} // end namepace
|
||||
|
||||
#endif
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: simplednapl.hh 3777 2010-06-24 06:46:46Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2009 by Andreas Lauser
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: simpleh2o.hh 3783 2010-06-24 11:33:53Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2009 by Andreas Lauser
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: tabulatedcomponent.hh 3777 2010-06-24 06:46:46Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2009 by Andreas Lauser *
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: unit.hh 3777 2010-06-24 06:46:46Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2009 by Andreas Lauser
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: brookscorey.hh 3777 2010-06-24 06:46:46Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2008 by Andreas Lauser *
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: brookscoreyparams.hh 3777 2010-06-24 06:46:46Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2008 by Andreas Lauser, Bernd Flemisch *
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: efftoabslaw.hh 3811 2010-07-05 12:59:17Z pnuske $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2009 by Andreas Lauser *
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: efftoabslawparams.hh 3777 2010-06-24 06:46:46Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2009 by Andreas Lauser *
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: linearmaterial.hh 3777 2010-06-24 06:46:46Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2009 by Andreas Lauser *
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: linearmaterialparams.hh 3777 2010-06-24 06:46:46Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2008 by Andreas Lauser, Bernd Flemisch *
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: regularizedbrookscorey.hh 3777 2010-06-24 06:46:46Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2008 by Andreas Lauser, Bernd Flemisch *
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: regularizedbrookscoreyparams.hh 3777 2010-06-24 06:46:46Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2008 by Andreas Lauser, Bernd Flemisch *
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: regularizedvangenuchten.hh 3777 2010-06-24 06:46:46Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2008 by Andreas Lauser, Bernd Flemisch *
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: regularizedvangenuchtenparams.hh 3777 2010-06-24 06:46:46Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2008 by Andreas Lauser, Bernd Flemisch *
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: vangenuchten.hh 3777 2010-06-24 06:46:46Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2008 by Andreas Lauser, Bernd Flemisch *
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: vangenuchtenparams.hh 3777 2010-06-24 06:46:46Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2008 by Andreas Lauser, Bernd Flemisch *
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: fluidstate.hh 3777 2010-06-24 06:46:46Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2009 by Andreas Lauser
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: 2p_system.hh 3784 2010-06-24 13:43:57Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2009 by Andreas Lauser
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: h2o_n2_system.hh 3824 2010-07-13 13:30:02Z lauser $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2009 by Andreas Lauser
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
136
dumux/material/fluidsystems/isfluid_trail_system.hh
Normal file
136
dumux/material/fluidsystems/isfluid_trail_system.hh
Normal file
@@ -0,0 +1,136 @@
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2010 by Bernd Flemisch *
|
||||
* Institute of Hydraulic Engineering *
|
||||
* University of Stuttgart, Germany *
|
||||
* email: <givenname>.<name>@iws.uni-stuttgart.de *
|
||||
* *
|
||||
* 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, as long as this copyright notice *
|
||||
* is included in its original form. *
|
||||
* *
|
||||
* This program is distributed WITHOUT ANY WARRANTY. *
|
||||
*****************************************************************************/
|
||||
/*!
|
||||
* \file
|
||||
*
|
||||
* \brief A fluid system with one phase and an arbitrary number of components.
|
||||
*/
|
||||
#ifndef DUMUX_ISFLUID_TRAIL_SYSTEM_HH
|
||||
#define DUMUX_ISFLUID_TRAIL_SYSTEM_HH
|
||||
|
||||
#include <dumux/common/propertysystem.hh>
|
||||
#include <dumux/boxmodels/1p2c/1p2cproperties.hh>
|
||||
|
||||
namespace Dumux
|
||||
{
|
||||
|
||||
namespace Properties
|
||||
{
|
||||
NEW_PROP_TAG(Scalar);
|
||||
};
|
||||
|
||||
/*!
|
||||
* \brief A fluid system with one phase and an arbitrary number of components.
|
||||
*/
|
||||
template <class TypeTag, bool verbose=true>
|
||||
class ISFluid_Trail_System
|
||||
{
|
||||
typedef ISFluid_Trail_System<TypeTag, verbose> ThisType;
|
||||
typedef typename GET_PROP_TYPE(TypeTag, PTAG(Scalar)) Scalar;
|
||||
typedef typename GET_PROP_TYPE(TypeTag, PTAG(OnePTwoCIndices)) Indices;
|
||||
|
||||
enum {
|
||||
isfluid = Indices::konti,
|
||||
trail = Indices::transport
|
||||
};
|
||||
|
||||
public:
|
||||
static void init()
|
||||
{}
|
||||
|
||||
/*!
|
||||
* \brief Return the human readable name of a component
|
||||
*/
|
||||
static const char *componentName(int compIdx)
|
||||
{
|
||||
switch(compIdx)
|
||||
{
|
||||
case isfluid:
|
||||
return "ISFluid";
|
||||
case trail:
|
||||
return "Trail";
|
||||
default:
|
||||
DUNE_THROW(Dune::InvalidStateException, "Invalid component index " << compIdx);
|
||||
}
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Given all mole fractions in a phase, return the phase
|
||||
* density [kg/m^3].
|
||||
*/
|
||||
template <class FluidState>
|
||||
static Scalar phaseDensity(int phaseIdx,
|
||||
Scalar temperature,
|
||||
Scalar pressure,
|
||||
const FluidState &fluidState)
|
||||
{
|
||||
if (phaseIdx == 0)
|
||||
return 1.03e-9; // in [kg /microm^3]
|
||||
// Umwandlung in Pascal notwendig -> density*10^6
|
||||
// will man wieder mit kg/m^3 rechnen muss g auch wieder geändert werden
|
||||
|
||||
DUNE_THROW(Dune::InvalidStateException, "Invalid phase index " << phaseIdx);
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Given all mole fractions in a phase, return the phase
|
||||
* density [kg/m^3].
|
||||
*/
|
||||
template <class FluidState>
|
||||
static Scalar molarDensity(int phaseIdx,
|
||||
Scalar temperature,
|
||||
Scalar pressure,
|
||||
const FluidState &fluidState)
|
||||
{
|
||||
if (phaseIdx == 0)
|
||||
return 3.035e-16; // in [mol/microm^3] = 303.5 mol/m^3
|
||||
|
||||
DUNE_THROW(Dune::InvalidStateException, "Invalid phase index " << phaseIdx);
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Return the viscosity of a phase.
|
||||
*/
|
||||
template <class FluidState>
|
||||
static Scalar phaseViscosity(int phaseIdx,
|
||||
Scalar temperature,
|
||||
Scalar pressure,
|
||||
const FluidState &fluidState)
|
||||
{
|
||||
if (phaseIdx == 0)
|
||||
return 0.00069152; // in [Pas]
|
||||
|
||||
DUNE_THROW(Dune::InvalidStateException, "Invalid phase index " << phaseIdx);
|
||||
}
|
||||
|
||||
/*!
|
||||
* \brief Given all mole fractions, return the diffusion
|
||||
* coefficent of a component in a phase.
|
||||
*/
|
||||
template <class FluidState>
|
||||
static Scalar diffCoeff(int phaseIdx,
|
||||
int compIIdx,
|
||||
int compJIdx,
|
||||
Scalar temperature,
|
||||
Scalar pressure,
|
||||
const FluidState &fluidState)
|
||||
{
|
||||
return 0.088786695; // in [microm^2/s] = 3.7378e-12 m^2/s
|
||||
}
|
||||
};
|
||||
|
||||
} // end namepace
|
||||
|
||||
#endif
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: idealgas.hh 3777 2010-06-24 06:46:46Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2009 by Andreas Lauser
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: settablephase.hh 3777 2010-06-24 06:46:46Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2010 by Andreas Lauser
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id$
|
||||
// $Id: boxspatialparameters.hh 3783 2010-06-24 11:33:53Z bernd $
|
||||
/*****************************************************************************
|
||||
* Copyright (C) 2010 by Andreas Lauser *
|
||||
* Institute of Hydraulic Engineering *
|
||||
|
||||
1
dune/dumux
Symbolic link
1
dune/dumux
Symbolic link
@@ -0,0 +1 @@
|
||||
../dumux
|
||||
Reference in New Issue
Block a user