Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

One Dimensional Freely Propagating Flame Physics and Example, as well as b #591

Open
wants to merge 44 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
f68093a
A One Dimensional Premixed Flame Physics Kernel
klbudzin Jan 8, 2018
fce1fd5
Adding Files to the Makefile
klbudzin Jan 8, 2018
cfba2bb
added flame into physics naming and physics factory
klbudzin Jan 8, 2018
90b9ed9
Fixed Typos and Template Problems
klbudzin Jan 17, 2018
d505525
adding the instantiating file
klbudzin Jan 17, 2018
82f75c4
Fixed a few Capitilization mistakes and reordered the initialization
klbudzin Jan 22, 2018
0e3c8d1
Added Brackets around a loop for visual eaze
klbudzin Jan 30, 2018
05bd0a5
adding an example for a one dimensional premixed laminar flame, it is…
klbudzin Mar 6, 2018
b45e3fe
At some point the Fixing of units was undone and this corrects the eq…
klbudzin Mar 19, 2018
e3248c3
A Take On velocity being the third variable over mass flux
klbudzin May 1, 2018
064a1dd
first attempt at a flame speed qoi
klbudzin May 19, 2018
b91d2d1
Working Flame speed QOI with a hard coded Mixture Molecular Weight
klbudzin May 20, 2018
c603e40
adding in mass fraction to the calculation
klbudzin May 28, 2018
1070e67
First attempt at both antioch and cantera chemistry
klbudzin May 29, 2018
7f8b928
More general flame speed qoi, for any material and chemistry. Still n…
klbudzin May 30, 2018
696d334
Setting up variable initialization for side time derivative
klbudzin Jun 1, 2018
cd672bc
work done today, mostly failures
klbudzin Jun 4, 2018
38dfb70
added some checks to make sure and unburnt and initial temperature ar…
klbudzin Jun 6, 2018
c8247b6
Cleaning up a few unnessecary things
klbudzin Jun 6, 2018
a232b16
Merge branches 'master' and 'BoundaryCondition/MassFlux' into Boundar…
klbudzin Jun 19, 2018
d0a20a8
adding my chemistry comparison script between antioch and cantera for…
klbudzin Jul 2, 2018
49320de
First attempt at adding species specific, specific heats. Will need t…
klbudzin Jul 2, 2018
4211e06
Making it so Antioch and Cantera evaluators have the same inputs for …
klbudzin Jul 2, 2018
6000ef0
Rework of current species specific heat to return them as a vector in…
klbudzin Jul 3, 2018
f1e1636
quick work around for clipping temperatures and density in cantera
klbudzin Jul 4, 2018
48a9dea
first attempt at hirschfield approx, keeps mixed mass fractions at 1 …
klbudzin Jul 24, 2018
c01b208
fixing something here i cant remember today
klbudzin Jul 27, 2018
bd38c2c
forgot the header
klbudzin Jul 27, 2018
722dc99
Fixed a looming problem with the boundary condition implementation wh…
klbudzin Jul 27, 2018
2574e5e
fixing merge conflicts
klbudzin Jul 27, 2018
354a17c
Fixing some looming merging issues
klbudzin Jul 30, 2018
cd62e8a
Never included mu as a registered property
klbudzin Aug 3, 2018
01da4dd
At somepoint I lost the initializer for my Diffusion vector when calc…
klbudzin Aug 9, 2018
cbeab7e
reworking a few things to remove some unneeded things
klbudzin Aug 24, 2018
04158cc
Copied and paster postprocessing procedure for cp_s and forgot to cha…
klbudzin Aug 24, 2018
3bbed64
Reworking of the Flames speed to pull M at a specific point, will be …
klbudzin Sep 27, 2018
c88f902
Adding a quick flame temperature qoi
klbudzin Mar 14, 2019
bfbd5a2
adding a ease of life output, to make sure the unburnt conditions wer…
klbudzin Apr 1, 2019
0a547f0
Cleaning up a few things, and adding the option to pick the point the…
klbudzin May 29, 2019
a6a0b00
Cleaning up a few things that were not necessarily needed
klbudzin May 29, 2019
a86fa5c
Changed the mass flux back to being evaluated at the boundary since i…
klbudzin May 29, 2019
aa8e882
Adding in a One dimensional methane flame example.
klbudzin May 29, 2019
c9c5c60
Changing the variable names in the side_time_derivative method.
klbudzin May 30, 2019
8fa3168
Fixing Merging conflicts
klbudzin May 30, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -397,6 +397,7 @@ AC_CONFIG_FILES(examples/spectroscopy/run.sh, [chmod +x examples
AC_CONFIG_FILES(examples/multigrid/run_poisson.sh, [chmod +x examples/multigrid/run_poisson.sh])
AC_CONFIG_FILES(examples/multigrid/run_stokes.sh, [chmod +x examples/multigrid/run_stokes.sh])
AC_CONFIG_FILES(examples/torsion_hyperelasticity/run.sh, [chmod +x examples/torsion_hyperelasticity/run.sh])
AC_CONFIG_FILES(examples/od_methane_flame/run.sh, [chmod +x examples/od_methane_flame/run.sh])

dnl-----------------------------------------------
dnl Generate header files
Expand Down
15 changes: 15 additions & 0 deletions examples/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -267,6 +267,21 @@ torsionhyperelasticity_DATA += $(top_srcdir)/examples/torsion_hyperelasticity/in

EXTRA_DIST += $(torsionhyperelasticity_DATA)

#=======================================================================
# One Dimensional Flame Example
#=======================================================================
methanedir = $(prefix)/examples/od_methane_flame
methane_DATA = $(top_srcdir)/examples/od_methane_flame/similar.in
methane_DATA += $(top_srcdir)/examples/od_methane_flame/initial.in
methane_DATA += $(top_srcdir)/examples/od_methane_flame/continue.in
methane_DATA += $(top_srcdir)/examples/od_methane_flame/steady.in
methane_DATA += $(top_srcdir)/examples/od_methane_flame/gri30.xml
methane_DATA += $(top_srcdir)/examples/od_methane_flame/gri30_chemical_mixture.dat
methane_DATA += $(top_srcdir)/examples/od_methane_flame/README
methane_SCRIPTS = $(top_builddir)/examples/od_methane_flame/run.sh

EXTRA_DIST += $(methane_DATA)

MAINTAINERCLEANFILES = Makefile.in

MOSTLYCLEANFILES = *.gcno
17 changes: 17 additions & 0 deletions examples/od_methane_flame/README
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
This example the progression to steady state for a one dimensional methane flame using the freely propogating OdPremixedFlame physics. Here there are three input files used. The initial.in file contains options for the first time step and generates a one dimensional mesh that contains 100 elements going from 0 to 1.5 centimeters. This mesh is then redistributed quadratically towards the inlet(left) boundary, which is where the flame will be balance on. For the inital guess a cubic was used to estimate the change in the temperature, fuel, oxidizer, and water over the flame front. The specific values of these fits are given through the RunVars section of the input file, where:
TmaxCubic : The end point value of the cubic fit to the flame front of the temperature profile.
TmaxLinear : The end point value of the linear extrapolation of the end of the cubic fit of the temperature to the end of the domain.
Tinit : The boundary value of the temperature, and should be the same as that set in the boundary condition section.
YOxidizer_Start : Unburnt mass fraction of the oxidizer (in this case O2).
YOxidizer_MaxCubic : The end point value of the cubic fit to the flame front of the oxidizer profile.
YOxidizer_MaxLinear: The end point value of the linear extrapolation of the end of the cubic fit of the oxidizer to the end of the domain.
YFuel_Start : Unburnt mass fraction of the fuel (in this case CH4).
YDilute_Start : Unburnt mass fraction of the dilutent (in this case N2).
xstart : Starting point for the flame front cubic fit, this should almost always be at the start of the domain, as that is where the flame will burn to.
xend : Ending point for the flame front cubic fit, this value should depend on the starting point and estimated width of the flame front.

The other two files are for restarting the example from a previous simulation, and for solving the steady state problem (continue.in and steady.in respectively). The similar.in input file contains all the input fields that were similar between the three input files, and the reason for doing this can be seen if wishing to change the chemistry model.
This example is configured to using cantera as the thermochemistry library with mixed transport. This can be seen in the similar input file. To change to a different mode of transport with cantera, alter the gas_mixture field value to the appropriate phase in the xml file using a different model for transport. To switch to Antioch with mixed tranpsort, uncomment the Antioch section in the input file, and comment the Cantera Section.

This example currently runs with the GRI-Mech 3.0 reaction mechanism. This can be changed by altering the gas_mixture fields in the similar.in file to a different xml file.
The Run script will run this example from the initial state to its appropriate steady state solution and output the speed of the flame as well as the temperature 1 cm into the domain.
22 changes: 22 additions & 0 deletions examples/od_methane_flame/continue.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Mesh related options
[Mesh]
[./Read]
filename= './restart.exo'
[]

# Restart file option
[restart-options]
restart_file = ''
[]

# Solver Options
[SolverOptions]
[./TimeStepping]
solver_type = 'libmesh_euler_solver'
delta_t = '5.0e-6'
n_timesteps = '100'
theta = '1.0'
[]

# Include things similar between steady/unsteady and continued runs.
[include similar.in]
Loading