Skip to content

BYUignite/ODT

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ODT

This code implements the One-Dimensional Turbulence (ODT) model for turbulent reacting or nonreacting flows. See also the Basic ODT implementation.

Documentation

Detailed documentation is available here. More information on the theory and application of ODT is available here.

A publication detailing this code is provided in the following reference:

V.B. Stephens, D.O. Lignell, “One-dimensional turbulence (ODT): computationally efficient modeling and simulation of turbulent flows,” SoftwareX, 13:100641 (2020).

A short video overview summarizing downloading, building, running, and processing the code is shown here.

A Code Ocean module that provides a runable version of the installed code is also available.

Dependencies

ODT Code

  • Cantera: open-source suite of tools for problems involving chemical kinetics, thermodynamics, and transport.
  • Yaml: input file format. This installation is conveniently built into the ODT build process.
  • Cmake 3.12 or higher
  • (OPTIONAL) Doxygen: builds documentation.

Post-processing

Post-processing data produced by ODT and ODT is processed via Python 3 scripts. We recommend Python 3.2 or higher. Scripts may not function properly using Python 2.x. The following packages are required and can be installed via pip3:

  • numpy
  • scipy
  • matplotlib
  • glob
  • yaml
  • sys
  • os

Directory structure

  • build: build the code
  • data: contains all data files output during a simulation
    • The code will generate a subfolder with a name corresponding to case name specified in the run script in the run folder.
      • This case subfolder will contain subfolders input, runtime, data, and post, which contain the input data files, runtime output, simulation data files, and post-processed data, respectively.
  • doc: contains documentation files
  • input: contains case input files
    • Other input files include a Cantera mechanism file in the user_gas_mechanisms folder and an optional restart.yaml file.
  • post: contains post-processing scripts and files for given case types
    • Output is placed in data/caseName/post. These are mostly Python files. Some cases also include experimental data files for comparison and plotting.
  • run: contains the code executable odt.x and several run scripts
    • The user specifies inputDir as the path to the input file containing the case to run and specifies a case name for variable caseName. Files are created and copied into data/caseName, as noted above.
  • source: contains source code (including header files) and CMakeLists.txt files