pub enum Atmosphere {
Standard {
station_altitude_m: f64,
temperature_c: f64,
pressure_hpa: f64,
humidity_percent: f64,
},
Uniform {
density_kg_m3: f64,
speed_of_sound_mps: f64,
},
}Expand description
Atmospheric inputs supported by the upstream derivative kernel.
Variants§
Standard
Station measurements; the upstream model applies its local altitude lapse. Humidity affects station density; this derivative path uses dry-air sound speed.
Fields
Uniform
Constant density and sound speed, independent of position. Upstream’s direct-mode sentinel requires 0 <= density < 2 and sound speed > 200.
Implementations§
Source§impl Atmosphere
impl Atmosphere
Sourcepub fn icao_standard(station_altitude_m: f64) -> Result<Self>
pub fn icao_standard(station_altitude_m: f64) -> Result<Self>
A dry station at station_altitude_m above sea level reading the ICAO
standard atmosphere for that altitude. Air at every altitude is then
the standard atmosphere’s, whatever the station altitude, so a launch
site at elevation E flies through standard air with its station (and
any atmosphere zones, which are readings at the station) at E.
At 0 m this equals Atmosphere::default exactly. The altitude must
be finite and within the troposphere, -1000 to 11000 m. Temperature
follows the ICAO lapse of 6.5 K per kilometre of geopotential height;
pressure is upstream’s reduce_qnh_to_station_pressure of the
1013.25 hPa standard sea-level pressure.
Trait Implementations§
Source§impl Clone for Atmosphere
impl Clone for Atmosphere
impl Copy for Atmosphere
Source§impl Debug for Atmosphere
impl Debug for Atmosphere
Source§impl Default for Atmosphere
impl Default for Atmosphere
Source§impl PartialEq for Atmosphere
impl PartialEq for Atmosphere
impl StructuralPartialEq for Atmosphere
Auto Trait Implementations§
impl Freeze for Atmosphere
impl RefUnwindSafe for Atmosphere
impl Send for Atmosphere
impl Sync for Atmosphere
impl Unpin for Atmosphere
impl UnsafeUnpin for Atmosphere
impl UnwindSafe for Atmosphere
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> Scalar for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.