Exporting Properties for Pele
The development of FuelLib was motivated by the need for more accurate liquid fuel property prediction in computational fluid dynamics (CFD) simulations. This section desscribes how to export properties from FuelLib for use in the spray module of the PelePhysics library[1] for combustion simulations in the PeleLMeX flow solver[2] [3].
Currently, there are two liquid property models implemented in Pele: the Group Contribution Method (GCM) and the original PeleMP (MP) model. The GCM is a replica of the model implemented in FuelLib and the MP model is the original model described in Owen et al. [1]
Each model has its own specific set of inputs required for Pele. The default parameters
for the export script Export4Pele.py
are set for the GCM. PelePhysics requires
the following for each compound in the fuel for the GCM:
Hydrocarbon family
Molecular weight
Critical temperature
Critical pressure
Critical volume
Boiling point
Accentric factor
Molar volume
Specific heat coefficients
Latent heat of vaporization
The MP model in PelePhysics requires properties at a specified reference temperature for each compound in the fuel:
Critical temperature
Boiling point
Latent heat of vaporization
Specific heat
Density
Optionally, Antoine coefficients for vapor pressure
The export script, Export4Pele.py
, generates an input file containing
the necessary properties for each compound in the fuel. The following sections
walk through the process and the available options for exporting properties from FuelLib
to Pele.
Note
The units for PeleLMeX are MKS while the units for PeleC are CGS. This is the same for
the spray inputs. Therefore, when running a spray simulation coupled with PeleC, the units for the
liquid fuel properties must be in CGS. The default units for the Export4Pele.py
script is MKS,
but users can specify CGS by using the --units cgs
option.
Default Options
From the FuelLib
directory, navigate to the source directory and run the following command in the terminal to export
the required GCM parameters. The fuel here, “heptane-decane”, is a binary mixture
of heptane and decane. Note that --fuel_name
is the only required input:
cd FuelLib/source
python Export4Pele.py --fuel_name heptane-decane
This generates the following input file, FuelLib/exportData/sprayPropsGCM_heptane-decane.inp
, for use in a PeleLMeX simulation:
# -----------------------------------------------------------------------------
# Liquid fuel properties for GCM in Pele
# Fuel: heptane-decane
# Number of compounds: 2
# Generated: <YYY-MM-DD> <HH-MM-SS>
# FuelLib remote URL: https://github.com/NREL/FuelLib.git
# Git commit: <commit-hash>
# Units: MKS
# -----------------------------------------------------------------------------
particles.fuel_species = NC7H16 NC10H22
particles.Y_0 = 0.7375 0.2625
particles.dep_fuel_species = NC7H16 NC10H22
# Properties for NC7H16 in MKS
particles.NC7H16_family = 0 # saturated hydrocarbons
particles.NC7H16_molar_weight = 0.100000 # kg/mol
particles.NC7H16_crit_temp = 549.855981 # K
particles.NC7H16_crit_press = 2821129.514417 # Pa
particles.NC7H16_crit_vol = 0.000425 # m^3/mol
particles.NC7H16_boil_temp = 379.073212 # K
particles.NC7H16_acentric_factor = 0.336945 # -
particles.NC7H16_molar_vol = 0.000146 # m^3/mol
particles.NC7H16_cp_a = 1636.255000 # J/kg/K
particles.NC7H16_cp_b = 3046.511000 # J/kg/K
particles.NC7H16_cp_c = -983.629000 # J/kg/K
particles.NC7H16_latent = 383110.000000 # J/kg
# Properties for NC10H22 in MKS
particles.NC10H22_family = 0 # saturated hydrocarbons
particles.NC10H22_molar_weight = 0.142000 # kg/mol
particles.NC10H22_crit_temp = 623.690516 # K
particles.NC10H22_crit_press = 2115522.932445 # Pa
particles.NC10H22_crit_vol = 0.000592 # m^3/mol
particles.NC10H22_boil_temp = 452.596977 # K
particles.NC10H22_acentric_factor = 0.468050 # -
particles.NC10H22_molar_vol = 0.000196 # m^3/mol
particles.NC10H22_cp_a = 1630.488028 # J/kg/K
particles.NC10H22_cp_b = 3098.105634 # J/kg/K
particles.NC10H22_cp_c = -1024.456338 # J/kg/K
particles.NC10H22_latent = 368035.211268 # J/kg
To include these parameters in your Pele simulation, copy the sprayPropsGCM_heptane-decane.inp
file to the specific case directory and include the following line in your Pele input file:
FILE = sprayPropsGCM_heptane-decane.inp
Additional Options
There are many additional options that can be specified when running the export script:
--fuel_data_dir
: Specify the directory containing the fuel data files. The default is"FuelLib/fuelData"
.--units
: Specify the units for the properties. The default is “mks” but users can set the units to “cgs” for use in PeleC.--dep_fuel_names
: Specify which gas-phase species the liquid fuel deposits. The default is the same as the fuel name, but users can specify a single gas-phase species or a list of gas-phase species.--export_dir
: Specify the directory to export the file. The default is “FuelLib/exportData”.--export_mix
: Export the fuel as a single mixture species. The default is 0 or False.--export_mix_name
: Specify the name of the mixture species if--export_mix
is set to True. The default is the same as the fuel name.--fuel_data_dir
: Specify the directory containing the fuel data files. The default is “FuelLib/fuelData”.--liq_prop_model
: Specify the liquid property model to use. The default is"gcm"
but users can set it to"mp"
to export properties for the MP model in Pele.--psat_antoine
: Option to use Antoine coefficients for vapor pressure in the MP model. The default is True, but users can set it to False to not use Antoine coefficients.
Liquid Species Deposit to Single Gas-Phase Species
To specify all liquid fuel species deposity to a single gas-phase species, run the following command:
cd FuelLib/source
python Export4Pele.py --fuel_name heptane-decane --dep_fuel_names SINGLE_GAS
This will result in the following:
particles.fuel_species = NC7H16 NC10H22
particles.Y_0 = 0.7375 0.2625
particles.dep_fuel_names = SINGLE_GAS SINGLE_GAS
# Properties for NC7H16 in MKS
...
Liquid Species Deposit to Specific Gas-Phase Species
Alternatively, users can specify a list of gas-phase species, run the following command:
python Export4Pele.py --fuel_name heptane-decane --dep_fuel_names GAS_1 GAS_2
which produces:
particles.fuel_species = NC7H16 NC10H22
particles.Y_0 = 0.7375 0.2625
particles.dep_fuel_names = GAS_1 GAS_2
# Properties for NC7H16 in MKS
...
Export Liquid Fuel as Single Mixture Species
To export mixture properties of a multicomponent fuel as a single component, run the following command:
cd FuelLib/source
python Export4Pele.py --fuel_name heptane-decane --export_mix True
This generates the following input file, FuelLib/exportData/sprayPropsGCM_mixture_heptane-decane.inp
:
# -----------------------------------------------------------------------------
# Liquid fuel properties for GCM in Pele
# Fuel: posf10264
# Number of compounds: 1
# Generated: <YYY-MM-DD> <HH-MM-SS>
# FuelLib remote URL: https://github.com/NREL/FuelLib.git
# Git commit: <commit-hash>
# Units: MKS
# -----------------------------------------------------------------------------
particles.fuel_species = LIQ-MIX
particles.Y_0 = 1.0
particles.dep_fuel_species = GAS
# Properties for LIQ-MIX in MKS
particles.LIQ-MIX_family = 0 # saturated hydrocarbons
particles.LIQ-MIX_molar_weight = 0.108418 # kg/mol
particles.LIQ-MIX_crit_temp = 564.653893 # K
particles.LIQ-MIX_crit_press = 2679711.894438 # Pa
particles.LIQ-MIX_crit_vol = 0.000458 # m^3/mol
particles.LIQ-MIX_boil_temp = 393.808839 # K
particles.LIQ-MIX_acentric_factor = 0.363221 # -
particles.LIQ-MIX_molar_vol = 0.000156 # m^3/mol
particles.LIQ-MIX_cp_a = 1635.099184 # J/kg/K
particles.LIQ-MIX_cp_b = 3056.851593 # J/kg/K
particles.LIQ-MIX_cp_c = -991.811612 # J/kg/K
particles.LIQ-MIX_latent = 380088.711936 # J/kg
This feature was used to generate the mixture properties for the conventional JP-8 jet fuel (posf10264), in the validation section of the PelePhysics documentation, where the liquid fuel is modeled as a single component that deposits to the HyChem gas-phase species for POSF10264.
Exporting Properties for the MP Model in Pele
Users can export properties for the MP model in Pele by specifying --liq_prop_model mp
when running the export script:
cd FuelLib/source
python Export4Pele.py --fuel_name heptane-decane --liq_prop_model mp
This generates the following input file, FuelLib/exportData/sprayPropsMP_heptane-decane.inp
, for use in a PeleLMeX simulation:
# -----------------------------------------------------------------------------
# Liquid fuel properties for MP in Pele
# Fuel: posf10264
# Number of compounds: 2
# Generated: <YYY-MM-DD> <HH-MM-SS>
# FuelLib remote URL: https://github.com/NREL/FuelLib.git
# Git commit: <commit-hash>
# Units: MKS
# -----------------------------------------------------------------------------
particles.fuel_species = NC7H16 NC10H22
particles.Y_0 = 0.7375 0.2625
particles.dep_fuel_species = NC7H16 NC10H22
# Properties for NC7H16 in MKS
particles.NC7H16_crit_temp = 549.855981 # K
particles.NC7H16_boil_temp = 379.073212 # K
particles.NC7H16_latent = 383110.000000 # J/kg
particles.NC7H16_cp = 1636.255000 # J/kg/K
particles.NC7H16_rho = 683.355277 # kg/m^3
particles.NC7H16_psat = 4.1644940008887215 1351.7047368174296 -51.094643469126446 100000.0 # Pa
# Properties for NC10H22 in MKS
particles.NC10H22_crit_temp = 623.690516 # K
particles.NC10H22_boil_temp = 452.596977 # K
particles.NC10H22_latent = 368035.211268 # J/kg
particles.NC10H22_cp = 1630.488028 # J/kg/K
particles.NC10H22_rho = 726.195341 # kg/m^3
particles.NC10H22_psat = 4.380101435197679 1702.1569216938776 -60.0774808903445 100000.0 # Pa
Users can choose to not use Antoine coefficients for vapor pressure in the MP model by specifying --psat_antoine False
when running the export script:
cd FuelLib/source
python Export4Pele.py --fuel_name heptane-decane --liq_prop_model mp --psat_antoine False
This generates a similar input file as above, but without the Antoine coefficients for vapor pressure.