00001
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef _LangmuirEquilibriumConstant_h
00026 #define _LangmuirEquilibriumConstant_h
00027
00028 #include "Quantity/Variable.h"
00029 #include "Quantity/Constant.h"
00030 #include "Quantity/QuantityCluster.h"
00031
00032 #include "PhysicalQuantities/Volume.h"
00033 #include "PhysicalQuantities/AmountOfSubstance.h"
00034
00035 namespace quantity {
00036 namespace langmuirEquilibriumConstant {
00037
00038
00039 typedef BSUtilities::Rational<3> LE;
00040 typedef BSUtilities::Rational<0> M;
00041 typedef BSUtilities::Rational<0> TI;
00042 typedef BSUtilities::Rational<0> E;
00043 typedef BSUtilities::Rational<0> TE;
00044 typedef BSUtilities::Rational<-1> A;
00045 typedef BSUtilities::Rational<0> LU;
00046
00047 typedef dimension::Dimension<LE, M, TI, E, TE, A, LU> Dimension;
00048
00050 class Unit;
00051
00052 typedef LOKI_TYPELIST_1(volume::CubicCentiMetre) VolumeList;
00053
00054 typedef unit::ComposeElement<Unit,
00055 VolumeList, BSUtilities::Rational<1> > VolumeElement;
00056
00057 typedef LOKI_TYPELIST_1(amountOfSubstance::Mole) AmountOfSubstanceList;
00058
00059 typedef unit::ComposeElement<Unit,
00060 AmountOfSubstanceList, BSUtilities::Rational<-1> >
00061 AmountOfSubstanceElement;
00062
00063 typedef unit::ComposeBase<Unit,
00064 LOKI_TYPELIST_2(VolumeElement, AmountOfSubstanceElement)>
00065 LangmuirEquilibriumConstantComposedUnit;
00066
00067 typedef unit::Composed<LangmuirEquilibriumConstantComposedUnit,
00068 LOKI_TYPELIST_2(volume::CubicCentiMetre,
00069 amountOfSubstance::Mole)> CubicCentiMetrePerMole;
00070
00072 typedef LOKI_TYPELIST_1(CubicCentiMetrePerMole) Units;
00073
00074
00075
00076 typedef Quantity<Dimension, Unit, Units, CubicCentiMetrePerMole>
00077 Quantity;
00078
00079 }
00080
00081 typedef Variable<langmuirEquilibriumConstant::Quantity>
00082 LangmuirEquilibriumConstant;
00083 typedef Constant<langmuirEquilibriumConstant::Quantity>
00084 LangmuirEquilibriumConstantConstant;
00085
00086 typedef VariableVector<langmuirEquilibriumConstant::Quantity>
00087 LangmuirEquilibriumConstantVector;
00088
00089 }
00090
00091 #endif