Spacecraft Control Framework 1.0
Spacecraft Control Library
|
Propulsion modeling functions. More...
Go to the source code of this file.
Classes | |
struct | aero_info |
Aerodynamic information. More... | |
Functions | |
double | thruster_power (double thrust, double u_e, double eff) |
General power required by a thruster. More... | |
double | boron_proton_thruster_exhaust_velocity (double n_protons) |
Boron-proton exhaust velocity. More... | |
double | BloDown (double mPress, double rhoFuel, double vTank, double rPress, double T, double mFuel) |
Blow down pressurized fuel system model. More... | |
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. More... | |
double | area_ratio_from_mach (double M, double gamma) |
Computes area ratio to mach number. More... | |
double | isentropic_expansion (double M, double gamma) |
Computes the isentropic expansion of a gas. More... | |
double | ue_qr (double qR, double gamma, double p0, double pE) |
Exhaust velocity from heating value. More... | |
double | qr_hydrogen (void) |
Heating value of hydrogen. More... | |
double | mach_from_area_ratio (double aR, double gamma) |
Mach number from area ratio. More... | |
ml_matrix | RocketH2 (double p0, double pA, double aStar, double aE, double f) |
Thrust and exhaust velocity of an H2/O2 rocket. More... | |
double | rhs_mach_from_area_ratio (double M, void *context) |
Right hand side of the minimization algorithm for mach from area ratio. More... | |
ml_matrix | solid_rocket_inertia (double mDot, double a, double b, double rho, double h) |
Solid rocket model. More... | |
double | FindH (double r, double d, double tol, int nMax) |
Bisection routine to find the height of a fluid in a sphere. More... | |
double | TankHeight (double r, double vF) |
Find the height of a fluid in a sphere. More... | |
Propulsion modeling functions.
double thruster_power | ( | double | thrust, |
double | u_e, | ||
double | eff | ||
) |
General power required by a thruster.
General power required by a thruster.
thrust | Thrust (N) |
u_e | Exhaust velocity (m/s) |
eff | Thruster efficiency |
double boron_proton_thruster_exhaust_velocity | ( | double | n_protons | ) |
Boron-proton exhaust velocity.
Boron-proton exhaust velocity.
n_protons | Number of protons |
double BloDown | ( | double | mPress, |
double | rhoFuel, | ||
double | vTank, | ||
double | rPress, | ||
double | T, | ||
double | mFuel | ||
) |
Blow down pressurized fuel system model.
Blow down pressurized fuel system model.
mPress | Mass of pressurization gas |
rhoFuel | Fuel density |
vTank | Tank volume |
rPress | Gas constant of pressurant |
T | Temperature |
mFuel | Mass of fueld |
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.
Compute the difference between successive elements of a 1-dimensional matrix \param thrust_Table 2-dimensional matrix, size n, m \param sFC_Table 2-dimensional matrix, size n, m \param mach_no 1-dimensional matrix, size 1, m \param altitude 2-dimensional matrix, size 1,n
m | Mach number to compute |
h | Altitude |
References interp_2d().
double area_ratio_from_mach | ( | double | M, |
double | gamma | ||
) |
Computes area ratio to mach number.
Computes area ratio to mach number.
M | Mach number. |
gamma | Ratio of specific heats. |
Referenced by rhs_mach_from_area_ratio().
double isentropic_expansion | ( | double | M, |
double | gamma | ||
) |
Computes the isentropic expansion of a gas.
Computes the isentropic expansion of a gas.
M | Mach number. |
gamma | Ratio of specific heats. |
Referenced by RocketH2().
double ue_qr | ( | double | qR, |
double | gamma, | ||
double | p0, | ||
double | pE | ||
) |
Exhaust velocity from heating value.
Exhaust velocity from heating value.
qR | Heating value (J/kg) |
gamma | Ratio of specific heats. |
p0 | Combustion chamber pressure (N/m^2). |
pE | Exhaust pressure (N/m^2). |
Referenced by RocketH2().
double qr_hydrogen | ( | void | ) |
double mach_from_area_ratio | ( | double | aR, |
double | gamma | ||
) |
Mach number from area ratio.
Mach number from area ratio.
aR | Area ratio. |
gamma | Ratio of specific heats. |
References aero_info::aR, aero_info::gamma, rhs_mach_from_area_ratio(), and secant().
Referenced by RocketH2().
ml_matrix RocketH2 | ( | double | p0, |
double | pA, | ||
double | aStar, | ||
double | aE, | ||
double | f | ||
) |
Thrust and exhaust velocity of an H2/O2 rocket.
Thrust and exhaust velocity of an H2/O2 rocket.
p0 | Combustion pressure (N/m^2). |
pA | Ambient pressure (N/m^2). |
aStar | Throat area (m^2). |
aE | Exit area (m^2). |
f | Mixture ratio H2/O2. |
References isentropic_expansion(), mach_from_area_ratio(), qr_hydrogen(), and ue_qr().
double rhs_mach_from_area_ratio | ( | double | M, |
void * | context | ||
) |
Right hand side of the minimization algorithm for mach from area ratio.
Right hand side of the minimization algorithm for mach from area ratio.
M | Mach number. |
*context | Pointer to data structure. Needs to contain the ratio of specific heats |
References aero_info::aR, area_ratio_from_mach(), and aero_info::gamma.
Referenced by mach_from_area_ratio().
ml_matrix solid_rocket_inertia | ( | double | mDot, |
double | a, | ||
double | b, | ||
double | rho, | ||
double | h | ||
) |
Solid rocket model.
Solid rocket model.
Assumes a cylindrical solid rocket with a cylindrical burn surface.
mDot | Mass flow (kg/s). |
a | Outside radius (m). |
b | Inside radius (m). |
rho | Fuel density (kg/m^3). |
h | Fuel height (m). |
References PI.
double FindH | ( | double | r, |
double | d, | ||
double | tol, | ||
int | nMax | ||
) |
Bisection routine to find the height of a fluid in a sphere.
Bisection routine to find the height of a fluid in a sphere.
r | Sphere radius |
d | 3*volume fuel/pi |
tol | Solution tolerance |
nMax | Maximum number of iterations |
Referenced by TankHeight().