FE-AGA8-92DC-DLL


FE-AGA8-92DC-DLL (felib.aga8x92dc) is a component of felib.dll.
Felib.aga8x92dc performs the calculation of:

  • compresion factor
  • mass density in kg/m3
  • relative density
  • molar density in kmol/m3
  • molar mass in kg/kmol
  • superior calorific value in MJ/m3

completely in accordance with:

  • AGA-8: Compressibility Factors for Natural Gas and Other Hydrocarbon Gases", American Gas Association (AGA) Transmission Measurement Committee Report No. 8, American Petroleum Institute (API).

Description of felib.aga8x92dc class interface: properties (variables), method (function) and error status flags.

PROPERTIES
Property Set property value Get property value
I X(I): mole fraction for
0 Methane void Set­Component­Molar­Fraction­(short I, double X(I) double Get­Component­Molar­Fraction­(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 Set­PressureMPa­(double newP) double Get­PressureMPa­()
Temperature [K] void Set­TemperatureK­(double newT) double Get­TemperatureK­()
Protection key void SetKeyCode(long nNewValue) n/a
Error status n/a long GetError­Flag()
Error report n/a BSTR GetError­Report()
Molar mass [kg/kmol] n/a double GetMole­Average()
Molar density [kg⋅mole/m3] n/a double GetMolar­Density()
Mass density [kg/m3] n/a double Get­Density()
Compression factor n/a double Get­Compression­()
Relative density at T2=273.15[K], p2=0.101325[MPa] n/a double Get­Relative­Density()
Superior calorific value on a volumetric basis at T1=298.15[K], T2=273.15[K], p1=p2=0.101325[MPa] n/a double Get­Superior­Calorific­Value()
FUNCTION
Function prototype long CalculateAga8x92dc(); calculates mole average, molar density, density, compression, relative density, superior calorific value and returns long int representing error status
ERROR STATUS
long GetError­Flag() 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 mole fractions have been normalized to give the total sum 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 or >1.0.
Bit 4 =1 (000010H) Error: Mole fraction of Nitrogen <0 or >1.0.
Bit 5 =1 (000020H) Error: Mole fraction of Carbon Dioxide <0 or >1.0.
Bit 6 =1 (000040H) Error: Mole fraction of Ethane <0 or >1.0.
Bit 7 =1 (000080H) Error: Mole fraction of Propane >0.12.
Bit 8 =1 (000100H) Error: Mole fraction of Water >0.1.
Bit 9 =1 (000200H) Error: Mole fraction of Hydrogen sulfide >1.0.
Bit 10 =1 (000400H) Error: Mole fraction of Hydrogen >1.0.
Bit 11 =1 (000800H) Error: Mole fraction of Carbon monoxide >0.03.
Bit 12 =1 (001000H) Error: Mole fraction of Oxygen >0.21.
Bit 13=1 (002000H) Error: Mole fraction of Butanes (n-Butane + i-Butane) >0.06.
Bit 14 =1 (004000H) Error: Mole fraction of Pentanes (n-pentane + i-Pentane) >0.04.
Bit 15 =1 (008000H) Error: Mole fraction of Hexanes plus (n-Hexane + n-Heptane + n-Octane + n-Nonane, n-Decane) >0.1.
Bit 16 =1 (010000H) Error: Mole fraction of Helium >0.03.
Bit 17 =1 (020000H) Error: Mole fraction of Argon >0.01
Bit 18 =1 (040000H) Error: Pressure <10-8 or >275.8 MPa.
Bit 19 =1 (080000H) Error: Temperature <144 or >678 K.
Bit 20 =1 (100000H) Error: Relative density <0.07 or >1.52.
Bit 21 =1 (200000H) Error: Superior calorific value <0 or >67.066 MJ/m3.
Bit 22 =1 (400000H) Error: No convergence.
Bit 23 =1 (800000H) Unused.
Bit 24 =1 (1000000H) Error: Incorrect protection key.
Bit 25,... Bit 25 and all higher bits are unused.