Git Product home page Git Product logo

combustion_toolbox's Introduction

Combustion Toolbox

Combustion Toolbox: A MATLAB-GUI based open-source tool for solving gaseous combustion problems

DOI File Exchange CD Documentation license


     

Main features

  • The code stems from the minimization of the free energy of the system by using Lagrange multipliers combined with a Newton-Raphson method, upon condition that initial gas properties are defined by two functions of states (e.g., temperature and pressure)
  • When temperature is not externally imposed, the code retrieves a routine also based on Newton-Raphson method to find the equilibrium temperature
  • Solve processes that involve strong changes in the dynamic pressure, such as detonations and shock waves in the steady state
  • Find the equilibrium conditions of the different phenomena undergoing behind the shock: molecular vibrational excitation up to dissociation, and electronic excitation up to ionization, thereby providing the properties of the gas in plasma state within the temperature range given by the NASA’s 9-coefficient polynomial fits.
  • Calculate the chemical equilibrium composition of a mixture by selecting which species can react or remain chemically frozen (inert).
  • The corresponding thermodynamic properties of the species are modelled with NASA’s 9-coefficient polynomial fits, which ranges up to 20000 K, and the ideal gas equation of state
  • Results are in excellent agreement with NASA’s Chemical Equilibrium with Applications (CEA) program, CANTERA and Caltech’s Shock and Detonation Toolbox, and TEA
  • Chemical equilibrium problems
    • TP: Equilibrium composition at defined temperature and pressure
    • HP: Adiabatic temperature and composition at constant pressure
    • SP: Isentropic compression/expansion to a specified pressure
    • TV: Equilibrium composition at defined temperature and constant volume
    • EV: Adiabatic temperature and composition at constant volume
    • SV: Isentropic compression/expansion to a specified volume
  • Shock calculations:
    • Pre-shock and post shock states
    • Equilibrium or frozen composition
    • Incident or reflected shocks
    • Chapman-Jouguet detonations, overdriven detonations, and underdriven detonations
    • Reflected detonations
    • Oblique shocks/detonations
    • Shock/detonation polar curves for incident and reflected states
    • Hugoniot curves
    • Ideal jump conditions for a given adiabatic index and pre-shock Mach number
  • Rocket propellant performance assuming:
    • Infinite-Area-Chamber model (IAC)
    • Finite-Area-Chamber model (FAC)
  • All the routines and computations are encapsulated in a more comprehensive and user-friendly GUI
  • The code is in it’s transition to Python
  • Export results in a spreadsheet
  • Export results as a .mat format
  • Display predefined plots (e.g., molar fraction vs equilence ratio)

This project is also part of the PhD of Alberto Cuadra-Lara.

Start here!

  • The tutorial will help you get started using Combustion Toolbox on your pc.
  • See examples of Combustion Toolbox applications.
  • Check the documentation of almost every functions.

Gallery

We have several examples of what Combustion Toolbox can do. Here we show a preview of the GUI and some results obtained from Combustion Toolbox.

Figure 1: Current state of the GUI.

Figure 2: Hugoniot curves for different molecular gases at pre-shock temperature T1 = 300 K and pressure p1 = 1 atm [numerical results obtained with Combustion Toolbox (lines) and contrasted with NASA’s Chemical Equilibrium with Applications (CEA) code excluding ionization (symbols)].

Figure 3: Example CJ detonation for lean to rich CH4-air mixtures at standard conditions: (a) variation of molar fraction, (b) variation of temperature. The computational time was of 9.25 seconds using a Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz for a set of 24 species considered and a total of 351 case studies.

Figure 4: Pressure-deflection shock polar (left) and wave angle-deflection shock polar (right) for an air mixture (78.084% N2, 20.9476% O2, 0.9365% Ar, 0.0319% CO2) at pre-shock temperature T1 = 300 K and pressure p1 = 1 atm, and a range of preshock Mach numbers M1 = [2, 14]; line: considering dissociation, ionization, and recombination in multi-species mixtures; dashed: considering a thermochemically frozen air mixture.

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Please send feedback or inquiries to [email protected]

Thank you for testing Combustion Toolbox!

Acknowledgements

People

Grupo de Mecánica de Fluidos, Universidad Carlos III, Av. Universidad 30, 28911, Leganés, Spain

See also the list of contributors who participated in this project.

Citing Combustion Toolbox

@misc{combustiontoolbox,
    author = "Cuadra, A and Huete, C and Vera, M",
    title = "Combustion Toolbox: A MATLAB-GUI based open-source tool for solving gaseous combustion problems",
    year = 2023,
    note = "Version 0.9.99g",
    doi = {https://doi.org/10.5281/zenodo.5554911}
}

combustion_toolbox's People

Contributors

albertocuadra avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.