Plot properties of components and fluids. More...
#include "config.h"
#include <array>
#include <algorithm>
#include <cstring>
#include <limits>
#include <vector>
#include <dumux/common/typetraits/isvalid.hh>
#include <dumux/common/typetraits/typetraits.hh>
#include <dumux/common/parameters.hh>
#include <dumux/io/gnuplotinterface.hh>
#include <dumux/material/components/air.hh>
#include <dumux/material/components/benzene.hh>
#include <dumux/material/components/brine.hh>
#include <dumux/material/components/calcite.hh>
#include <dumux/material/components/calciumion.hh>
#include <dumux/material/components/cao.hh>
#include <dumux/material/components/cao2h2.hh>
#include <dumux/material/components/carbonateion.hh>
#include <dumux/material/components/ch4.hh>
#include <dumux/material/components/co2.hh>
#include <dumux/material/components/granite.hh>
#include <dumux/material/components/h2.hh>
#include <dumux/material/components/h2o.hh>
#include <dumux/material/components/heavyoil.hh>
#include <dumux/material/components/mesitylene.hh>
#include <dumux/material/components/n2.hh>
#include <dumux/material/components/nacl.hh>
#include <dumux/material/components/o2.hh>
#include <dumux/material/components/simpleh2o.hh>
#include <dumux/material/components/trichloroethene.hh>
#include <dumux/material/components/xylene.hh>
#include <dumux/material/components/componenttraits.hh>
Plot properties of components and fluids.
Classes | |
struct | Dumux::DisableStaticAssert |
Helper struct to deactivate static assertions in component's base classes. More... | |
struct | Dumux::AlwaysFalse< DisableStaticAssert > |
Specialization of Dumux::AlwaysFalse for the struct defined above. This is done in order to deactivate the static_assert in the base classes of components. If the base class function is compiled we do not call it (see below). More... | |
struct | checkLiqDen |
Helper structs for detecting if a component has certain functions overloaded. More... | |
struct | checkLiqEnth |
struct | checkLiqHeatCap |
struct | checkLiqVisc |
struct | checkLiqThermCond |
struct | checkGasDen |
struct | checkGasEnth |
struct | checkGasHeatCap |
struct | checkGasVisc |
struct | checkGasThermCond |
struct | checkSolDen |
struct | checkSolHeatCap |
struct | checkSolThermCond |
struct | checkIonCharge |
Namespaces | |
namespace | Dumux |
make the local view function available whenever we use the grid geometry | |
Functions | |
template<class Functor > | |
void | plot (Functor &&f, const vector< double > &T, const double pressure, const std::string &compName, const std::string &phaseName, const std::string &propName, const std::string &unit, bool openPlot) |
Plot given values. More... | |
template<class C , class hasNoDensityOverload = checkLiqDen> | |
auto | plotLiquidDensity (const vector< double > &T, double p, bool openPlot) -> typename std::enable_if_t<!decltype(isValid(hasNoDensityOverload{})(declval< C >()))::value &&ComponentTraits< C >::hasLiquidState, void > |
Plot properties if overloads compile. More... | |
template<class C , class hasNoEnthalpyOverload = checkLiqEnth> | |
auto | plotLiquidEnthalpy (const vector< double > &T, double p, bool openPlot) -> typename std::enable_if_t<!decltype(isValid(hasNoEnthalpyOverload{})(declval< C >()))::value &&ComponentTraits< C >::hasLiquidState, void > |
template<class C , class hasNoHeatCapOverload = checkLiqHeatCap> | |
auto | plotLiquidHeatCapacity (const vector< double > &T, double p, bool openPlot) -> typename std::enable_if_t<!decltype(isValid(hasNoHeatCapOverload{})(declval< C >()))::value &&ComponentTraits< C >::hasLiquidState, void > |
template<class C , class hasNoViscOverload = checkLiqVisc> | |
auto | plotLiquidViscosity (const vector< double > &T, double p, bool openPlot) -> typename std::enable_if_t<!decltype(isValid(hasNoViscOverload{})(declval< C >()))::value &&ComponentTraits< C >::hasLiquidState, void > |
template<class C , class hasNoThermCondOverload = checkLiqThermCond> | |
auto | plotLiquidThermalConductivity (const vector< double > &T, double p, bool openPlot) -> typename std::enable_if_t<!decltype(isValid(hasNoThermCondOverload{})(declval< C >()))::value &&ComponentTraits< C >::hasLiquidState, void > |
template<class C , class hasNoDensityOverload = checkGasDen> | |
auto | plotGasDensity (const vector< double > &T, double p, bool openPlot) -> typename std::enable_if_t<!decltype(isValid(hasNoDensityOverload{})(declval< C >()))::value &&ComponentTraits< C >::hasGasState, void > |
template<class C , class hasNoEnthalpyOverload = checkGasEnth> | |
auto | plotGasEnthalpy (const vector< double > &T, double p, bool openPlot) -> typename std::enable_if_t<!decltype(isValid(hasNoEnthalpyOverload{})(declval< C >()))::value &&ComponentTraits< C >::hasGasState, void > |
template<class C , class hasNoHeatCapOverload = checkGasHeatCap> | |
auto | plotGasHeatCapacity (const vector< double > &T, double p, bool openPlot) -> typename std::enable_if_t<!decltype(isValid(hasNoHeatCapOverload{})(declval< C >()))::value &&ComponentTraits< C >::hasGasState, void > |
template<class C , class hasNoViscOverload = checkGasVisc> | |
auto | plotGasViscosity (const vector< double > &T, double p, bool openPlot) -> typename std::enable_if_t<!decltype(isValid(hasNoViscOverload{})(declval< C >()))::value &&ComponentTraits< C >::hasGasState, void > |
template<class C , class hasNoThermCondOverload = checkGasThermCond> | |
auto | plotGasThermalConductivity (const vector< double > &T, double p, bool openPlot) -> typename std::enable_if_t<!decltype(isValid(hasNoThermCondOverload{})(declval< C >()))::value &&ComponentTraits< C >::hasGasState, void > |
template<class C , class hasNoDensityOverload = checkSolDen> | |
auto | plotSolidDensity (const vector< double > &T, double p, bool openPlot) -> typename std::enable_if_t<!decltype(isValid(hasNoDensityOverload{})(declval< C >()))::value &&ComponentTraits< C >::hasSolidState, void > |
template<class C , class hasNoHeatCapOverload = checkSolHeatCap> | |
auto | plotSolidHeatCapacity (const vector< double > &T, double p, bool openPlot) -> typename std::enable_if_t<!decltype(isValid(hasNoHeatCapOverload{})(declval< C >()))::value &&ComponentTraits< C >::hasSolidState, void > |
template<class C , class hasNoThermCondOverload = checkSolThermCond> | |
auto | plotSolidThermalConductivity (const vector< double > &T, double p, bool openPlot) -> typename std::enable_if_t<!decltype(isValid(hasNoThermCondOverload{})(declval< C >()))::value &&ComponentTraits< C >::hasSolidState, void > |
template<class C , class hasNoChargeOverload = checkIonCharge> | |
auto | plotIonCharge (const vector< double > &T, double p, bool openPlot) -> typename std::enable_if_t<!decltype(isValid(hasNoChargeOverload{})(declval< C >()))::value &&ComponentTraits< C >::isIon, void > |
template<class Component > | |
void | plotStuff (bool openPlotWindow) |
A number of properties of a component. More... | |
int | main (int argc, char *argv[]) |
int main | ( | int | argc, |
char * | argv[] | ||
) |
void plot | ( | Functor && | f, |
const vector< double > & | T, | ||
const double | pressure, | ||
const std::string & | compName, | ||
const std::string & | phaseName, | ||
const std::string & | propName, | ||
const std::string & | unit, | ||
bool | openPlot | ||
) |
Plot given values.
auto plotGasDensity | ( | const vector< double > & | T, |
double | p, | ||
bool | openPlot | ||
) | -> typename std::enable_if_t<!decltype(isValid(hasNoDensityOverload{})(declval<C>()))::value && ComponentTraits<C>::hasGasState, void> |
auto plotGasEnthalpy | ( | const vector< double > & | T, |
double | p, | ||
bool | openPlot | ||
) | -> typename std::enable_if_t<!decltype(isValid(hasNoEnthalpyOverload{})(declval<C>()))::value && ComponentTraits<C>::hasGasState, void> |
auto plotGasHeatCapacity | ( | const vector< double > & | T, |
double | p, | ||
bool | openPlot | ||
) | -> typename std::enable_if_t<!decltype(isValid(hasNoHeatCapOverload{})(declval<C>()))::value && ComponentTraits<C>::hasGasState, void> |
auto plotGasThermalConductivity | ( | const vector< double > & | T, |
double | p, | ||
bool | openPlot | ||
) | -> typename std::enable_if_t<!decltype(isValid(hasNoThermCondOverload{})(declval<C>()))::value && ComponentTraits<C>::hasGasState, void> |
auto plotGasViscosity | ( | const vector< double > & | T, |
double | p, | ||
bool | openPlot | ||
) | -> typename std::enable_if_t<!decltype(isValid(hasNoViscOverload{})(declval<C>()))::value && ComponentTraits<C>::hasGasState, void> |
auto plotIonCharge | ( | const vector< double > & | T, |
double | p, | ||
bool | openPlot | ||
) | -> typename std::enable_if_t<!decltype(isValid(hasNoChargeOverload{})(declval<C>()))::value && ComponentTraits<C>::isIon, void> |
auto plotLiquidDensity | ( | const vector< double > & | T, |
double | p, | ||
bool | openPlot | ||
) | -> typename std::enable_if_t<!decltype(isValid(hasNoDensityOverload{})(declval<C>()))::value && ComponentTraits<C>::hasLiquidState, void> |
Plot properties if overloads compile.
Do not plot properties if overloads don't compile.
auto plotLiquidEnthalpy | ( | const vector< double > & | T, |
double | p, | ||
bool | openPlot | ||
) | -> typename std::enable_if_t<!decltype(isValid(hasNoEnthalpyOverload{})(declval<C>()))::value && ComponentTraits<C>::hasLiquidState, void> |
auto plotLiquidHeatCapacity | ( | const vector< double > & | T, |
double | p, | ||
bool | openPlot | ||
) | -> typename std::enable_if_t<!decltype(isValid(hasNoHeatCapOverload{})(declval<C>()))::value && ComponentTraits<C>::hasLiquidState, void> |
auto plotLiquidThermalConductivity | ( | const vector< double > & | T, |
double | p, | ||
bool | openPlot | ||
) | -> typename std::enable_if_t<!decltype(isValid(hasNoThermCondOverload{})(declval<C>()))::value && ComponentTraits<C>::hasLiquidState, void> |
auto plotLiquidViscosity | ( | const vector< double > & | T, |
double | p, | ||
bool | openPlot | ||
) | -> typename std::enable_if_t<!decltype(isValid(hasNoViscOverload{})(declval<C>()))::value && ComponentTraits<C>::hasLiquidState, void> |
auto plotSolidDensity | ( | const vector< double > & | T, |
double | p, | ||
bool | openPlot | ||
) | -> typename std::enable_if_t<!decltype(isValid(hasNoDensityOverload{})(declval<C>()))::value && ComponentTraits<C>::hasSolidState, void> |
auto plotSolidHeatCapacity | ( | const vector< double > & | T, |
double | p, | ||
bool | openPlot | ||
) | -> typename std::enable_if_t<!decltype(isValid(hasNoHeatCapOverload{})(declval<C>()))::value && ComponentTraits<C>::hasSolidState, void> |
auto plotSolidThermalConductivity | ( | const vector< double > & | T, |
double | p, | ||
bool | openPlot | ||
) | -> typename std::enable_if_t<!decltype(isValid(hasNoThermCondOverload{})(declval<C>()))::value && ComponentTraits<C>::hasSolidState, void> |
void plotStuff | ( | bool | openPlotWindow | ) |
A number of properties of a component.