00001
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef thermodynamicTemperature_h
00026 #define thermodynamicTemperature_h
00027
00028 #include "Quantity/Variable.h"
00029 #include "Quantity/Constant.h"
00030 #include "Quantity/QuantityCluster.h"
00031
00032 namespace quantity {
00033 namespace thermodynamicTemperature {
00034
00035
00036 typedef BSUtilities::Rational<0> LE;
00037 typedef BSUtilities::Rational<0> M;
00038 typedef BSUtilities::Rational<0> TI;
00039 typedef BSUtilities::Rational<0> E;
00040 typedef BSUtilities::Rational<1> TE;
00041 typedef BSUtilities::Rational<0> A;
00042 typedef BSUtilities::Rational<0> LU;
00043
00044 typedef dimension::Dimension<LE, M, TI, E, TE, A, LU> Dimension;
00045
00047 class Unit;
00048
00049
00050 class KelvinUnits;
00051 class DegreeRankineUnit;
00052
00053
00054
00055 typedef unit::Prefixable<Unit, KelvinUnits> Kelvins;
00056
00057 typedef unit::Prefixed<Kelvins> Kelvin;
00058 typedef unit::Prefixed<Kelvins, unit::Milli> MilliKelvin;
00059
00060
00061
00062 typedef unit::NonPrefixable<Unit, DegreeRankineUnit> DegreeRankine;
00063
00065 typedef Loki::TL::Append<Kelvins::Units,
00066 LOKI_TYPELIST_1(DegreeRankine)>::Result Units;
00067
00068
00069
00070 typedef Kelvin K;
00071
00072
00073
00074 typedef Quantity<Dimension, Unit, Units, Kelvin> Quantity;
00075
00076 }
00077
00078 typedef Variable<thermodynamicTemperature::Quantity>
00079 ThermodynamicTemperature;
00080 typedef Constant<thermodynamicTemperature::Quantity>
00081 ThermodynamicTemperatureConstant;
00082
00083 typedef QuantityVector<Variable, thermodynamicTemperature::Quantity>
00084 ThermodynamicTemperatureVector;
00085
00086 }
00087
00088 #endif