Appendix B: FlameMaster Diffusion Flamelet Control File

A FlameMaster control file for generating diffusion flamelets is replicated here for the reader to use as a template for their set of conditions.

### Newton Solver ####
TStart = 0.1e-4
TEnd = 10.0

DampFlag = TRUE
LambdaMin = 1.0e-2

UseNumericalJac is TRUE
UseModifiedNewton = TRUE

MaxIter = 350
TolRes = 1.0e-3
TolDy = 1.0e-4

#### Grid ####
DeltaNewGrid = 20
OneSoluOneGrid is TRUE
initialgridpoints = 81
maxgridpoints =359
Q = -0.25
R = 60

#OutputPath is ./upperBranch_rightMoving
OutputPath is./upperBranch_leftMoving
#OutputPath is ./lowerBranch_rightPoint
#OutputPath is ./lowerBranch_leftMoving

WriteRes is TRUE
WriteEverySolution is TRUE

StartProfilesFile is ./N-C12H26_p468_8chi800000tf0288to0111
#StartProfilesFile is ./N-C12H26_p468_8chi497.037tf0288to0111Tst0941
#StartProfilesFile is ./N-C12H26_p468_8chi00500tf0288to0111
#StartProfilesFile is ./lowerBranch_rightPoint/N-C12H26_p468_8chi5e+09tf0288to0111

MechanismFile is ndodecane_31spec.pre
globalReaction is N-C12H26 + 18.5O2 == 12CO2 + 13H2O;

fuel is N-C12H26
oxidizer is O2

#### Flame ####
ConstLewisNumber is TRUE
LewisNumberFile is LewisNumberOne
ArclengthCont = TRUE

Flame is Counterflow Diffusion in Mixture Fraction Space
EquationOfState is PengRobinson

Scalar DissipationRate =1e6 #Starting rate
#Scalar DissipationRate =1.1e6 #Upper branch - right moving value
Scalar DissipationRate =1e1 #Upper branch - left moving value
#Scalar DissipationRate =50e8 #Lower Branchure right point
#Scalar DissipationRate =1e3 #Extinction branch, left

# Additional Values to constrain the curve to have resolution near the turning point of the S-curve
#Scalar DissipationRate = 1.000000e06

# Note: If the pressure continuation to shift the conditions is not quite
# exactly the pressure you want, then on the next property shift, just adjust
# this initial pressure to be the pressure that you want, and it should update
# the pressure and whatever the other property you selected.
pressure = 46.884e6

#### Boundary Conditions ####
Fuel Side {
    dirichlet {
    t=288.889
    Y->N-C12H26 = 1.0
    }
}

Oxidizer Side {
    dirichlet {
    t=111.111
    Y->O2 = 1.00
    }
}

Appendix C: FlameMaster Premixed Flamelet Control File

A FlameMaster control file for generating premixed flamelets is replicated here for the reader to use as a template for their set of conditions.

#### Newton solver ####
UseNumericalJac is TRUE
UseSecondOrdJac is TRUE
UseModifiedNewton = TRUE

DampFlag = TRUE
LambdaMin = 1.0e-3

MaxIter = 2000
TolRes = 1.0e-16
TolDy = 1e-12

#### grid ####
DeltaNewGrid = 50
OneSolutionOneGrid = TRUE
initialgridpoints = 80
maxgridpoints = 360
q = -0.25
R = 60

#### Sensitivity Analysis ####
#ReactionFluxAnal is TRUE

#### I/O ####
WriteEverySolution = TRUE

#PrintMolarFractions is TRUE
OutputPath is ./output

#StartProfilesFile is ./CH4_p01_0phi1_0006tu0300
StartProfilesFile is ./output/CH4_p01_0phi1_0000tu0300

#### Chemistry ####
MechanismFile is drm19.pre
globalReaction is CH4 + 2O2 == CO2 + 2H2O;

EquationOfState is IdealGasLaw

fuel is CH4
oxidizer is O2

#### Flame ####
ConstLewisNumber is TRUE
LewisNumberFile is LewisNumberOne

Flame is UnstretchedPremixed
ExactBackward is TRUE

phi = 0.95
phi = 0.9
phi = 0.85
phi = 0.8
phi = 0.75

pressure = 101325

#### Boundary conditions ####
#ConstMassFlux is TRUE
#MassFlux = 0.3

Unburnt Side {
    dirichlet {
        t = 300
        Y->CH4 = 0.0552
        Y->O2 = 0.2201
        Y->N2 = 0.7247
    }
}

Appendix D: Species Renaming

Occasionally there will be a case where the species names that FlameMaster uses (and the names that are written to the flamelet table) conflict with Stream’s table processor (bad characters, etc.). A Python utility has been written that will take an input file containing a mapping of old names to new names and rename the species in a provided ascii flamelet table.

Command:

bin/flamelet/utilities/flamemaster-tools/loci_table_species_rename.py Table.dat rename.dat

Appendix E: Pruning FlameMaster Counterflow-Diffusion Flamelets

In the course of generating a suite of counterflow-diffusion flamelets using FlameMaster, it is possible to generate a large number of flamelets due to FlameMaster’s use of an automatic arclength-continuation method. A resolution of 5 to 10 flamelets per decade of the scalar dissipation rate is usually sufficient. A collection of many flamelet solutions also runs a possible risk of having an overlapping flamelet solution. When this happens, the uniqueness of the Z-C manifold that is used to interpolate becomes polluted and the tabulated values can become erroneous. To remedy this issue, a Python utility script is provided in the utilities/flamemaster_tools directory of the Flamelet Table Tool. The script is named flamemaster_flamelet_pruning.py.

A summary of the options that the script takes is provided below:

FlameMaster Pruning Script Arguments

Argument

Type

Description

–flamelets_path

str (required)

Absolute or relative path to directory with flamelets

–minimum_arclength

float (required)

Threshold that removed flamelets that are closer than this distance together

–output_dir_name

str (required)

Name of directory to output pruned flamelets to