Modeling a Hypersonic Engine with engicloud.ai

Modeling a Hypersonic Engine with engicloud.ai
A turbojet is a complex engine that powers most aeroplanes. But complex as they are to build and operate, conceptually they are very simple. A rotating compressor compresses the incoming air, which is then mixed with fuel and burned, and expanded by a nozzle to generate thrust. This is shown as (a) in the figure below.

Turbojets operate well from Mach ranges in the subsonic regime (M < 1, airliners), up to around M = 2 in the supersonic regime (military aircraft).
But what happens when we need to go faster? The compressor becomes less effective, creating a complex shock wave structure that hinders performance. The solution is to get rid of the compressor, and take advantage of the shock waves to compress the air. If the air is processed by a normal shock, it becomes subsonic for combustion. This is the ramjet, which uses the ram effect of the shock wave to compress and slow down the incoming air. Ramjets are effective for velocities in the range of M = 3 and above.
However, if you need to go even faster, say M = 5 and above, the ramjet faces issues. The compression of the normal shock becomes too strong, causing very high pressures and temperatures, and leading to high efficiency loss. The solution is to get rid of the normal shock and allow flow to remain supersonic throughout. Enter the supersonic combustion ramjet engine, or scramjet. As the name implies, in scramjets the combustion happens in supersonic flow, and it is suitable for operation in M > 5, with theoretical limits allowing for operation to Mach 16 and above.
Scramjets therefore are engines suitable for operating in the hypersonic regime, that is, five or more times the speed of sound.
The flow through a scramjet engine is extremely complex. Thick boundary layers, shock interactions, shock-induced boundary-layer separation, high temperature gas effects, supersonic turbulent combustion... the list goes on. It is however, conceptually very simple, as the turbojet: compression -> combustion -> expansion. How can we model that with engicloud.ai?
The ideal scramjet
Project template: Scramjet engine (0D combustion, perfect gas)
Remember the main processes in a scramjet: compression, combustion, and expansion. To set up an analytical solution for this, we need three calculators: oblique shock wave, Rayleigh flow, and isentropic expansion.

Oblique shock
An oblique shock wave is the kind of shock wave that is formed when the airflow hits a deflection that is not perpendicular to the flow.

The deflection compresses the flow, reducing Mach number and increasing pressure and temperature, creating a shock wave as it changes direction. This plays the role of the compressor in our ideal scramjet engine.
Rayleigh flow
Rayleigh flow, or more specifically, flow on a constant area duct with heat addition, is a simple analytical way to model combustion. As heat is added to the flow, its total temperature will increase and the Mach number reduce up to a choke limit where M = 1. This is a simple way to analytically calculate a combustion process in a scramjet combustor.
Nozzle Expansion
To generate thrust, the gases from combustion need to be expanded in a nozzle. An ideal nozzle is essentially an isentropic expansion, where the gas trades pressure and temperature into a higher Mach number.
This completes our very simple scramjet with the needed components, but to make it more realistic, we can add a KPI: specific impulse.
Thrust and specific impulse
Specific impulse is a measure of how efficiently the engine uses its fuel to generate thrust. Scramjets have higher specific impulse than rockets at the same range of Mach numbers.
To calculate this we need the Thrust and Specific Impulse calculator, that calculates the thrust from the nozzle output and gives us the specific impulse as well.
This gives us a project that allows us to compare different scramjets in terms of generated thrust and their specific impulse.
There's one more place we can add some complexity to make it more realistic. We can calculate the heat added by combustion from the fuel mass flow. This can be done by two more calculators, the heat of combustion and enthalpy of formation calculators.
Enthalpy of formation and heat of combustion
It is more convenient from an engineering perspective to account for massflow of fuel rather than the heat added by its burning. For this reason, the heat of combustion calculator takes a mass flow of fuel and its chemical energy. It also takes combustion efficiency as an input to more accurately represent incomplete combustion.
The chemical energy of the fuel is computed by the enthalpy of formation calculator, which relies on [Cantera](https://cantera.org/) for the thermodynamic calculations.
This concludes a project that, while not capturing all the complexity of scramjet operation, which is impossible without high-fidelity simulations and experimental testing, allows us to get a good and reasonably accurate overview of the performance for a simple engine.
Increasing complexity to capture more accurate physics
engicloud.ai allows you to build increasingly complex projects to more effectively capture the physics of what you are trying to model. We can apply this to the scramjet engine, and here we'll demonstrate two ways you can make that happen, by introducing high-temperature gas effects, and by modelling combustion more accurately.
High-temperature gas effects
Project: Scramjet engine (0D combustion, high-temperature gas effects)
In scramjet operation, the air gets very hot, and hotter the faster the scramjet is moving. In these conditions, air no longer behaves as a perfect gas. First oxygen molecules start dissociating (i.e. separating into individual atoms), then nitrogen. As temperatures increase further, they can start recombining and forming intermediate species like $\mathrm{NO}$.
This changes the behaviour of the gas and in turn affects the flow properties at each stage of the engine. For example, dissociation takes energy away from the flow, so the temperature behind a shock wave is lower when accounting for high-temperature effects compared with ideal gas.
For this setup, we use a modified version of the oblique shock calculator which uses [Cantera](https://cantera.org) to calculate the high-temperature effects (commonly also referred to real gas effects in engineering, though technically not correct).

Combustion modelling
Project: Scramjet engine (1D combustion, ideal gas)
Another place where we can enhance our project is in the combustion modelling. We can again leverage [Cantera](https://cantera.org), this time using a reactor model instead of the simple enthalpy of formation calculator to get a more accurate result for the heat generated by the fuel, using a proper reaction mechanism for the calculation. While this is still a simplification to the real supersonic turbulent combustion flow regime in a scramjet, it allows us to provide a much more accurate heat release value for the fuel under the combustor conditions.
Putting it all together
Project: Scramjet (1D, high-temperature gas effects)
We can combine these two scenarios to create an even more accurate model that accounts for both high-temperature gas effects and combustion modelling.
This is one example of how you engicloud.ai allows you to take simple calculators and build complex models. What will you create next?

Sign-Up Now
We will be launching the engicloud.ai platform in Q1 2026.
Sign-Up to be the first to know when we go Live and get your
Launch Special Coupon Code (pssssst it's 20% Off).
We will also send you updates along the way, so you don't miss a beat.