performs the calculation of thermodynamic and volumetric properties of natural gas completely in accordance with:
PROPERTIES |
Property |
Set property value |
Get property value |
I |
X(I): mole fraction for |
0 |
Methane |
void SetComponentMolarFraction(short I, double X(I) |
double GetComponentMolarFraction(short I) |
1 | Nitrogen |
2 | Carbon dioxide |
3 | Ethane |
4 | Propane |
5 | Water |
6 | Hydrogen sylfide |
7 | Hydrogen |
8 | Carbon monoxide |
9 | Oxygen |
10 | iso-Butane |
11 | n-Butane |
12 | iso-Pentane |
13 | n-Pentane |
14 | n-Hexane |
15 | n-Heptane |
16 | n-Octane |
17 | n-Nonane |
18 | n-Decane |
19 | Helium |
20 | Argon |
Pressure [MPa] |
void SetPressureMPa(double newP) |
double GetPressureMPa() |
Temperature [K] |
void SetTemperatureK(double newT) |
double GetTemperatureK() |
Protection key |
void SetKeyCode(long nNewValue) |
n/a |
Error status | n/a |
long GetErrorFlag() |
Error report | n/a |
BSTR GetErrorReport() |
Molar mass [kg/kmol] | n/a |
double GetMolarMass() |
Molar density [kg⋅mole/m3] | n/a |
double GetMolarDensity() |
Mass density [kg/m3] | n/a |
double GetDensity() |
Compression factor | n/a |
double GetCompression() |
Relative density at T2=273.15[K], p2=0.101325[MPa] | n/a |
double GetRelativeDensity() |
Superior calorific value on a volumetric basis at T1=298.15[K], T2=273.15[K], p1=p2=0.101325[MPa] |
n/a |
double GetSuperiorCalorificValue() |
Molar internal energy [kJ/kmol] | n/a |
double GetMolarInternalEnergy () |
Specific internal energy [kJ/kg] | n/a |
double GetSpecificInternalEnergy () |
Molar enthalpy [kJ/kmol] | n/a |
double GetMolarEnthalpy () |
Specific enthalpy [kJ/kg] | n/a |
double GetSpecificEnthalpy () |
Molar entropy [kJ/(kmol⋅K)] | n/a |
double GetMolarEntropy () |
Specific entropy [kJ/(kg⋅K)] | n/a |
double GetSpecificEntropy () |
Molar isochoric heat capacity [kJ/(kmol⋅K)] | n/a |
double GetMolarIsochoricHeatCapacity () |
Specific isochoric heat capacity [kJ/(kg⋅K)] | n/a |
double GetSpecificIsochoricHeatCapacity () |
Molar isobaric heat capacity [kJ/(kmol⋅K)] | n/a |
double GetMolarIsobaricHeatCapacity () |
Specific isobaric heat capacity [kJ/(kg⋅K)] | n/a |
double GetSpecificIsobaricHeatCapacity () |
Joule-Thomson coefficient [K/MPa] | n/a |
double GetJouleThomsonCoefficient () |
Isentropic exponent | n/a |
double GetIsentropicExponent () |
Speed of sound [m/s] | n/a |
double GetSpeedOfSound () |
FUNCTION |
Function prototype |
long CalculateIso20765x1(); calculates the properties and returns long int representing error status |
ERROR STATUS |
long GetErrorFlag() |
Description of Error/Warning flags. |
Bit 0 =1 (000001H) |
Error: There exists at least one mole fraction <0 or >1. |
Bit 1 =1 (000002H) |
Error: Total sum of mole fractions <0.98 or >1.02. |
Bit 2 =1 (000004H) |
Warning: Total sum of mole fractions is not exactly equal to 1. This bit denotes only the warning that the fractions have been normalized to give the total sum of mole fractions equal to 1. If only bit 2 was set during the calculation the results are valid. |
Bit 3 =1 (000008H) |
Error: Mole fraction of Methane <0.7 or >1.0. |
Bit 4 =1 (000010H) |
Error: Mole fraction of Nitrogen >0.2. |
Bit 5 =1 (000020H) |
Error: Mole fraction of Carbon Dioxide >0.2. |
Bit 6 =1 (000040H) |
Error: Mole fraction of Ethane >0.1. |
Bit 7 =1 (000080H) |
Error: Mole fraction of Propane >0.035. |
Bit 8 =1 (000100H) |
Error: Mole fraction of Water >0.00015. |
Bit 9 =1 (000200H) |
Error: Mole fraction of Hydrogen sulfide >0.0002. |
Bit 10 =1 (000400H) |
Error: Mole fraction of Hydrogen >0.10. |
Bit 11 =1 (000800H) |
Error: Mole fraction of Carbon monoxide >0.03. |
Bit 12 =1 (001000H) |
Error: Mole fraction of Oxygen >0.0002. |
Bit 13=1 (002000H) |
Error: Mole fraction of Butanes (n-Butane + i-Butane) >0.015. |
Bit 14 =1 (004000H) |
Error: Mole fraction of Pentanes (n-pentane + i-Pentane) >0.005. |
Bit 15 =1 (008000H) |
Error: Mole fraction of Hexanes (n-Hexane) >0.001. |
Bit 16 =1 (010000H) |
Error: Mole fraction of Heptanes (n-Heptane) >0.0005. |
Bit 17 =1 (020000H) |
Error: Mole fraction of octanes plus higher hydrocarbons (n-Octane + n-Nonane + n-Decane) >0.0005. |
Bit 18 =1 (040000H) |
Error: Mole fraction of Helium >0.005. |
Bit 19 =1 (080000H) |
Error: Mole fraction of Argon >0.0002 |
Bit 20 =1 (100000H) |
Error: Pressure <10-7 or >30 MPa. |
Bit 21 =1 (200000H) |
Error: Temperature <250 or >350 K. |
Bit 22 =1 (400000H) |
Error: Relative density <0.55 or >0.90. |
Bit 23 =1 (800000H) |
Error: Superior calorific value <20 MJ/m3 or >48 MJ/m3. |
Bit 24 =1 (1000000H) |
Error: Invalid protection key. |
Bit 25,... |
Bit 25 and all higher bits are unused. |