pub struct Airframe {
pub diameter_m: f64,
pub cd_vs_mach: Vec<(f64, f64)>,
pub cna_vs_mach: Vec<(f64, f64)>,
pub cp_vs_mach: Vec<(f64, f64)>,
pub cg_dry_m: f64,
pub cg_prop_m: f64,
pub pitch_inertia_kg_m2: f64,
pub induced_k_vs_mach: Vec<(f64, f64)>,
pub recovery_cd_area_m2: f64,
}Expand description
Illustrative airframe parameters for common model-rocket shapes. These are generic, not measured data for any particular kit.
Fields§
§diameter_m: f64Body diameter in metres.
cd_vs_mach: Vec<(f64, f64)>Axial drag coefficient vs Mach.
cna_vs_mach: Vec<(f64, f64)>Normal-force slope per radian vs Mach.
cp_vs_mach: Vec<(f64, f64)>Centre of pressure, metres aft of nose, vs Mach.
cg_dry_m: f64Dry-structure CG, metres aft of nose.
cg_prop_m: f64Propellant CG, metres aft of nose.
pitch_inertia_kg_m2: f64Scalar pitch inertia about the CG, kg·m².
induced_k_vs_mach: Vec<(f64, f64)>Induced-drag factor per radian² vs Mach.
recovery_cd_area_m2: f64Recovery parachute Cd·A in m².
Implementations§
Source§impl Airframe
impl Airframe
Sourcepub fn sport_24mm() -> Self
pub fn sport_24mm() -> Self
A generic 24 mm sport rocket (Estes-alpha-sized), illustrative only.
Sourcepub fn high_power_54mm() -> Self
pub fn high_power_54mm() -> Self
A generic 54 mm high-power rocket, illustrative only.
Sourcepub fn forces(&self, wind_mps: Vec3) -> Result<BallisticForces>
pub fn forces(&self, wind_mps: Vec3) -> Result<BallisticForces>
Drag + atmosphere forces for this airframe in the given wind.
Sourcepub fn weathercock_params(&self) -> Result<WeathercockParams>
pub fn weathercock_params(&self) -> Result<WeathercockParams>
Weathercock parameters for this airframe (CP/CG included).
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Airframe
impl RefUnwindSafe for Airframe
impl Send for Airframe
impl Sync for Airframe
impl Unpin for Airframe
impl UnsafeUnpin for Airframe
impl UnwindSafe for Airframe
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
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
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.