public class ConicalShock
extends java.lang.Object
Written by: Joseph A. Huwaldt
Modifier and Type | Field and Description |
---|---|
static boolean |
STRONG
Constant indicating that a strong shock solution should
be returned from shockAngle().
|
static boolean |
WEAK
Constant indicating that a weak shock solution should
be returned from shockAngle();
|
Constructor and Description |
---|
ConicalShock()
Construct a conical shock solver that assumes the gas properties
for air (gamma = 1.4).
|
ConicalShock(double gamma)
Construct a conical shock solver object using the specified
specific heat ratio for the gas that the shock is in
(use 1.4 for air).
|
Modifier and Type | Method and Description |
---|---|
double |
coneAngle(double M1,
double thetaS)
Method that computes the cone half-angle (thetaC) given the
shock angle and the Mach number upstream of the oblique shock.
|
double |
coneMach(double M1,
double thetaS)
Method that computes the Mach number at the surface of a cone
in supersonic flow given the Mach number upstream of the oblique
shock and the shock angle.
|
double |
coneP_P0(double M1,
double thetaS)
Method that computes the ratio of static pressure at the surface of the
cone to the static pressure upstream of the oblique shock forward of the cone
given the free-stream Mach number and the conical shock angle.
|
double |
conePT_P(double M1,
double thetaS)
Method that computes the ratio of total and static pressure
at the surface of the cone given the free-stream Mach number and
the conical shock angle.
|
double |
coneRho_Rho0(double M1,
double thetaS)
Method that computes the ratio of static density at the surface of the
cone to the static density upstream of the oblique shock forward of the cone
given the free-stream Mach number and the conical shock angle.
|
double |
coneRhoT_Rho(double M1,
double thetaS)
Method that computes the ratio of total and static density
at the surface of the cone given the free-stream Mach number and
the conical shock angle.
|
double |
coneT_T0(double M1,
double thetaS)
Method that computes the ratio of static temperature at the surface of the
cone to the static temperature upstream of the oblique shock forward of the cone
given the free-stream Mach number and the conical shock angle.
|
double |
coneTT_T(double M1,
double thetaS)
Method that computes the ratio of total and static temperature
at the surface of the cone given the free-stream Mach number and
the conical shock angle.
|
double |
freeStreamMach(double thetaC,
double thetaS)
Calculate the Mach number upstream of a conical shock
given the cone half-angle and the shock angle.
|
double |
getGamma()
Method that returns the specific heat ratio for the gas used in
the calculation of the conical shock properties.
|
static void |
main(java.lang.String[] args)
A simple method to test the methods in this class.
|
void |
setGamma(double gamma)
Method used to set the specific heat ratio for the gas used in the
calculation of the conical shock properties.
|
double |
shockAngle(double M1,
double thetaC,
boolean type)
Method that computes the oblique shock wave angle given the
cone half-angle and the Mach number upstream of the oblique shock.
|
public static final boolean STRONG
public static final boolean WEAK
public ConicalShock()
public ConicalShock(double gamma)
public double getGamma()
public void setGamma(double gamma)
public double coneTT_T(double M1, double thetaS)
M1
- The Mach number upstream of the oblique shock.thetaS
- The shock angle in radians (0 < thetaS <= PI/2).public double coneT_T0(double M1, double thetaS)
M1
- The Mach number upstream of the oblique shock.thetaS
- The shock angle in radians (0 < thetaS <= PI/2).public double conePT_P(double M1, double thetaS)
M1
- The Mach number upstream of the oblique shock.thetaS
- The shock angle in radians (0 < thetaS <= PI/2).public double coneP_P0(double M1, double thetaS)
M1
- The Mach number upstream of the oblique shock.thetaS
- The shock angle in radians (0 < thetaS <= PI/2).public double coneRhoT_Rho(double M1, double thetaS)
M1
- The Mach number upstream of the oblique shock.thetaS
- The shock angle in radians (0 < thetaS <= PI/2).public double coneRho_Rho0(double M1, double thetaS)
M1
- The Mach number upstream of the oblique shock.thetaS
- The shock angle in radians (0 < thetaS <= PI/2).public double coneMach(double M1, double thetaS)
M1
- The Mach number upstream of the oblique shock.thetaS
- The shock angle in radians (0 < thetaS <= PI/2).public double coneAngle(double M1, double thetaS)
M1
- The Mach number upstream of the oblique shock.thetaS
- The shock angle in radians (0 < thetaS <= PI/2).public double shockAngle(double M1, double thetaC, boolean type) throws jahuwaldt.tools.math.RootException
M1
- The Mach number upstream of the oblique shock.thetaC
- The cone half-angle (conical incline angle) in radians
(0 <= thetaC < thetaMax).type
- Indicates if you want the Strong (true) or
weak (false) solution to be returned.jahuwaldt.tools.math.RootException
- if there is a problem finding the shock angle.public double freeStreamMach(double thetaC, double thetaS) throws jahuwaldt.tools.math.RootException
thetaC
- The cone half-angle in radians.thetaS
- The conical shock angle in radians.jahuwaldt.tools.math.RootException
- if there is a problem finding Mach number.public static void main(java.lang.String[] args)