3.1-git
DUNE for Multi-{Phase, Component, Scale, Physics, ...} flow and transport in porous media
Classes | Namespaces | Functions
plotproperties.cc File Reference

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>

Description

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[])
 

Function Documentation

◆ main()

int main ( int  argc,
char *  argv[] 
)

◆ plot()

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.

◆ plotGasDensity()

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>

◆ plotGasEnthalpy()

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>

◆ plotGasHeatCapacity()

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>

◆ plotGasThermalConductivity()

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>

◆ plotGasViscosity()

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>

◆ plotIonCharge()

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>

◆ plotLiquidDensity()

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.

Do not plot properties if overloads don't compile.

◆ plotLiquidEnthalpy()

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>

◆ plotLiquidHeatCapacity()

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>

◆ plotLiquidThermalConductivity()

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>

◆ plotLiquidViscosity()

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>

◆ plotSolidDensity()

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>

◆ plotSolidHeatCapacity()

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>

◆ plotSolidThermalConductivity()

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>

◆ plotStuff()

template<class Component >
void plotStuff ( bool  openPlotWindow)

A number of properties of a component.

Include dependency graph for plotproperties.cc: