Rocket module#

In this section, you will find the documentation of the routines implemented to obtain the rocket propellant performance under ideal conditions. There are two models:

  • IAC: Infinite-Area-Chamber,

  • FAC: Finite-Area-Chamber.

Note

This module is based on Gordon and McBride [1994].


Routines
compute_FAC(self, mix1, mix2_inj, mix2_c, mix3)#

Compute chemical equilibria at the injector, outlet of the chamber and at the throat using the Finite-Area-Chamber (FAC) model

This method is based on the method outlined in Gordon, S., & McBride, B. J. (1994). NASA reference publication, 1311.

Parameters:
  • self (struct) – Data of the mixture, conditions, and databases

  • mix1 (struct) – Properties of the initial mixture

  • mix2_inj (struct) – Properties of the mixture at the injector of the chamber (previous calculation)

  • mix2_c (struct) – Properties of the mixture at the outlet of the chamber (previous calculation)

  • mix3 (struct) – Properties of the mixture at the throat (previous calculation)

Returns:

Tuple containing

  • mix2_inj (struct): Properties of the mixture at the injector of the chamber

  • mix2_c (struct): Properties of the mixture at the outlet of the chamber

  • mix3 (struct): Properties of the mixture at the throat

Example

[mix2_inj, mix2_c, mix3] = compute_FAC(self, mix1, mix2_inj, mix2_c, mix3)

compute_chamber_IAC(self, mix1, mix2)#

Compute chemical equilibria at the exit of the chamber (HP) using the Infinite-Area-Chamber (IAC) model

This method is based on the method outlined in Gordon, S., & McBride, B. J. (1994). NASA reference publication, 1311.

Parameters:
  • self (struct) – Data of the mixture, conditions, and databases

  • mix1 (struct) – Properties of the initial mixture

  • mix2 (struct) – Properties of the mixture at the outlet of the chamber (previous calculation)

Returns:

mix2 (struct) – Properties of the mixture at the outlet of the chamber

Example

mix2 = compute_chamber_IAC(self, mix1, mix2)

compute_exit(self, mix2, mix3, mix4, Aratio, varargin)#

Compute thermochemical composition for a given Aratio

This method is based on the method outlined in Gordon, S., & McBride, B. J. (1994). NASA reference publication, 1311.

Parameters:
  • self (struct) – Data of the mixture, conditions, and databases

  • mix2 (struct) – Properties of the mixture at the outlet of the chamber

  • mix3 (struct) – Properties of the mixture at the throat

  • mix4 (struct) – Properties of the mixture at the exit (previous calculation)

  • Aratio (struct) – Ratio area_exit / area_throat

Optional Args:

mix2_in (struct): Properties of the mixture at the inlet of the chamber

Returns:

mix3 (struct) – Properties of the mixture at the throat

Examples

  • mix4 = compute_exit(self, mix2, mix3, mix4, Aratio)

  • mix4 = compute_exit(self, mix2, mix3, mix4, Aratio, mix2_in)

compute_throat_IAC(self, mix2, mix3)#

Compute thermochemical composition for the Infinite-Area-Chamber (IAC) model

This method is based on the method outlined in Gordon, S., & McBride, B. J. (1994). NASA reference publication, 1311.

Parameters:
  • self (struct) – Data of the mixture, conditions, and databases

  • mix2 (struct) – Properties of the mixture at the outlet of the chamber

  • mix3 (struct) – Properties of the mixture at the throat (previous calculation)

Returns:

mix3 (struct) – Properties of the mixture at the throat

Example

mix3 = compute_throat_IAC(self, mix2, mix3)

guess_pressure_IAC_model(mix)#

Compute pressure guess [bar] at the throat considering an Infinite-Area-Chamber (IAC)

This method is based on the method outlined in Gordon, S., & McBride, B. J. (1994). NASA reference publication, 1311.

Parameters:

mix (struct) – Properties of the mixture

Returns:

pressure (float) – Pressure at the throat [bar]

Example

pressure = guess_pressure_IAC_model(mix)

guess_pressure_exit_IAC(mix2, mix3, Aratio, FLAG_SUBSONIC)#

Compute guess logarithm of the ratio pressure_inf / pressure_exit [-] for the given Area ratio [-] and indicanting if the point of interest is in the subsonic area ratios or the supersonic area ratios

This method is based on the method outlined in Gordon, S., & McBride, B. J. (1994). NASA reference publication, 1311.

Parameters:
  • mix2 (struct) – Properties of the mixture at the outlet of the chamber

  • mix3 (struct) – Properties of the mixture at the throat

  • Aratio (struct) – Ratio area_exit / area_throat

  • FLAG_SUBSONIC (bool) – Flag indicating if the Aratio refer to the subsonic region or the supersonic region

Returns:

log_P (float) – Log pressure ratio [-]

Example

log_P = guess_pressure_exit_IAC(mix2, mix3, 3, false)

rocket_parameters(mix2, mix3, gravity, varargin)#

Compute Rocket performance parameters at the throat

This method is based on the method outlined in Gordon, S., & McBride, B. J. (1994). NASA reference publication, 1311.

Parameters:
  • mix2 (struct) – Properties of the mixture at the outlet of the chamber

  • mix3 (struct) – Properties of the mixture at the throat

  • gravity (float) – Gravitational acceleration [m/s2]

Returns:

mix3 (struct) – Properties of the mixture at the throat

rocket_performance(self, mix1, varargin)#

Routine that computes the propellant rocket performance

Methods implemented:
  • Infinite-Area-Chamber (IAC)

  • Finite-Area-Chamber (FAC)

This method is based on the method outlined in Gordon, S., & McBride, B. J. (1994). NASA reference publication, 1311.

Parameters:
  • self (struct) – Data of the mixture, conditions, and databases

  • mix1 (struct) – Properties of the initial mixture

Optional Args:
  • Aratio (struct): Ratio area_exit / area_throat

  • mix2_inj (struct): Properties of the mixture at the injector (previous calculation)

  • mix2_c (struct): Properties of the mixture at the outlet of the chamber (previous calculation)

  • mix3 (struct): Properties of the mixture at the throat (previous calculation)

  • mix4 (struct): Properties of the mixture at the given exit points (previous calculation)

Returns:

Tuple containing

  • mix1 (struct): Properties of the initial mixture

  • mix2_inj (struct): Properties of the mixture at the injector

  • mix2_c (struct): Properties of the mixture at the outlet of the chamber

  • mix3 (struct): Properties of the mixture at the throat

  • mix4 (struct): Properties of the mixture at the given exit points

Examples

  • [mix1, mix2_inj, mix2_c, mix3, mix4] = rocket_performance(self, mix1)

  • [mix1, mix2_inj, mix2_c, mix3, mix4] = rocket_performance(self, mix1, Aratio)

  • [mix1, mix2_inj, mix2_c, mix3, mix4] = rocket_performance(self, mix1, Aratio, mix2_inj)

  • [mix1, mix2_inj, mix2_c, mix3, mix4] = rocket_performance(self, mix1, Aratio, mix2_inj, mix2_c)

  • [mix1, mix2_inj, mix2_c, mix3, mix4] = rocket_performance(self, mix1, Aratio, mix2_inj, mix2_c, mix3)

  • [mix1, mix2_inj, mix2_c, mix3, mix4] = rocket_performance(self, mix1, Aratio, mix2_inj, mix2_c, mix3, mix4)

solve_model_rocket(self, mix1, mix2_inj, mix2_c, mix3, mix4, Aratio)#

Compute chemical equilibria at different points of the rocket depending of the model selected

Methods implemented:
  • Infinite-Area-Chamber (IAC)

  • Finite-Area-Chamber (FAC)

This method is based on the method outlined in Gordon, S., & McBride, B. J. (1994). NASA reference publication, 1311.

Parameters:
  • self (struct) – Data of the mixture, conditions, and databases

  • mix1 (struct) – Properties of the initial mixture

  • mix2_inj (struct) – Properties of the mixture at the injector [only FAC] (previous calculation)

  • mix2_c (struct) – Properties of the mixture at the outlet of the chamber (previous calculation)

  • mix3 (struct) – Properties of the mixture at the throat (previous calculation)

  • mix4 (struct) – Properties of the mixture at the given exit points (previous calculation)

  • Aratio (float) – Area ratios [-]

Returns:

Tuple containing

  • mix2_1 (struct): Properties of the mixture at injector of the chamber (only FAC)

  • mix2 (struct): Properties of the mixture at the outlet of the chamber

  • mix3 (struct): Properties of the mixture at the throat

  • mix4 (struct): Properties of the mixture at the given exit points

Example

[mix2_1, mix2, mix3, mix4] = solve_model_rocket(self, mix1, mix2_1, mix2, mix3, mix4, Aratio)