Classes | Functions

sc_propulsion.h File Reference

Propulsion modeling functions. More...

Classes

struct  aero_info
 Aerodynamic information. More...

Functions

double thruster_power (double thrust, double u_e, double eff)
 General power required by a thruster.
double boron_proton_thruster_exhaust_velocity (double n_protons)
 Boron-proton exhaust velocity.
double BloDown (double mPress, double rhoFuel, double vTank, double rPress, double T, double mFuel)
 Blow down pressurized fuel system model.
ml_matrix EngineDataFromTable (ml_matrix thrustTable, ml_matrix sFC_Table, ml_matrix mach_no, ml_matrix altitude, double m, double h)
 Extracts engine data from a table. Outputs thrust and specific fuel consumption.
double area_ratio_from_mach (double M, double gamma)
 Computes area ratio to mach number.
double isentropic_expansion (double M, double gamma)
 Computes the isentropic expansion of a gas.
double ue_qr (double qR, double gamma, double p0, double pE)
 Exhaust velocity from heating value.
double qr_hydrogen (void)
 Heating value of hydrogen.
double mach_from_area_ratio (double aR, double gamma)
 Mach number from area ratio.
ml_matrix RocketH2 (double p0, double pA, double aStar, double aE, double f)
 Thrust and exhaust velocity of an H2/O2 rocket.
double rhs_mach_from_area_ratio (double M, void *context)
 Right hand side of the minimization algorithm for mach from area ratio.
ml_matrix solid_rocket_inertia (double mDot, double a, double b, double rho, double h)
 Solid rocket model.
double FindH (double r, double d, double tol, int nMax)
 Bisection routine to find the height of a fluid in a sphere.
double TankHeight (double r, double vF)
 Find the height of a fluid in a sphere.

Detailed Description


Function Documentation

double thruster_power ( double  thrust,
double  u_e,
double  eff 
)

General power required by a thruster.

Parameters:
thrustThrust (N)
u_eExhaust velocity (m/s)
effThruster efficiency
Returns:
power Power (W)
double boron_proton_thruster_exhaust_velocity ( double  n_protons )

Boron-proton exhaust velocity.

Parameters:
n_protonsNumber of protons
Returns:
Exhaust velocity (m/s)
double BloDown ( double  mPress,
double  rhoFuel,
double  vTank,
double  rPress,
double  T,
double  mFuel 
)

Blow down pressurized fuel system model.

Parameters:
mPressMass of pressurization gas
rhoFuelFuel density
vTankTank volume
rPressGas constant of pressurant
TTemperature
mFuelMass of fueld
Returns:
Pressure
ml_matrix EngineDataFromTable ( ml_matrix  thrust_Table,
ml_matrix  sFC_Table,
ml_matrix  mach_no,
ml_matrix  altitude,
double  m,
double  h 
)

Extracts engine data from a table. Outputs thrust and specific fuel consumption.

Parameters:
thrust_Table2-dimensional matrix, size n, m
sFC_Table2-dimensional matrix, size n, m
mach_no1-dimensional matrix, size 1, m
altitude2-dimensional matrix, size 1,n
mMach number to compute
hAltitude
Returns:
b 1-dimensional matrix, [thrust;sFC]
double area_ratio_from_mach ( double  M,
double  gamma 
)

Computes area ratio to mach number.

Parameters:
MMach number.
gammaRatio of specific heats.
Returns:
Area ratio.
double isentropic_expansion ( double  M,
double  gamma 
)

Computes the isentropic expansion of a gas.

Parameters:
MMach number.
gammaRatio of specific heats.
Returns:
Expansion ratio.
double ue_qr ( double  qR,
double  gamma,
double  p0,
double  pE 
)

Exhaust velocity from heating value.

Parameters:
qRHeating value (J/kg)
gammaRatio of specific heats.
p0Combustion chamber pressure (N/m^2).
pEExhaust pressure (N/m^2).
Returns:
exhaust velocity.
double qr_hydrogen ( void   )
Returns:
heating value (J/kg).
double mach_from_area_ratio ( double  aR,
double  gamma 
)

Mach number from area ratio.

Parameters:
aRArea ratio.
gammaRatio of specific heats.
Returns:
Mach number.

References aero_info::aR, and aero_info::gamma.

ml_matrix RocketH2 ( double  p0,
double  pA,
double  aStar,
double  aE,
double  f 
)

Thrust and exhaust velocity of an H2/O2 rocket.

Parameters:
p0Combustion pressure (N/m^2).
pAAmbient pressure (N/m^2).
aStarThroat area (m^2).
aEExit area (m^2).
fMixture ratio H2/O2.
Returns:
[thrust (N);exhaust velocity (m/s)].
double rhs_mach_from_area_ratio ( double  M,
void *  context 
)

Right hand side of the minimization algorithm for mach from area ratio.

Parameters:
MMach number.
*contextPointer to data structure. Needs to contain the ratio of specific heats
Returns:
error.

References aero_info::aR, and aero_info::gamma.

ml_matrix solid_rocket_inertia ( double  mDot,
double  a,
double  b,
double  rho,
double  h 
)

Solid rocket model.

Assumes a cylindrical solid rocket with a cylindrical burn surface.

Parameters:
mDotMass flow (kg/s).
aOutside radius (m).
bInside radius (m).
rhoFuel density (kg/m^3).
hFuel height (m).
Returns:
[Ixx IDotxx; Iyy IDotyy; Izz IDotzz].

References PI.

double FindH ( double  r,
double  d,
double  tol,
int  nMax 
)

Bisection routine to find the height of a fluid in a sphere.

Parameters:
rSphere radius
d3*volume fuel/pi
tolSolution tolerance
nMaxMaximum number of iterations
Returns:
h Fuel height
double TankHeight ( double  r,
double  vF 
)

Find the height of a fluid in a sphere.

Parameters:
rSphere radius
vFVolume of fuel
Returns:
h Fuel height

References PI.