#[non_exhaustive]pub struct WingGeometry {
pub span: f64,
pub root_chord: f64,
pub tip_chord: f64,
pub sweep_le_rad: f64,
pub dihedral_rad: f64,
pub twist_tip_rad: f64,
pub n_span: usize,
pub n_chord: usize,
}Expand description
Wing planform definition for VLM analysis.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.span: f64Full wingspan (m), tip to tip.
root_chord: f64Root chord length (m).
tip_chord: f64Tip chord length (m). Equal to root_chord for rectangular wings.
sweep_le_rad: f64Leading edge sweep angle (rad). 0 for unswept.
dihedral_rad: f64Dihedral angle (rad). 0 for flat wing.
twist_tip_rad: f64Geometric twist at tip relative to root (rad). Negative = washout.
n_span: usizeSpanwise panels per semi-span.
n_chord: usizeChordwise panels.
Implementations§
Source§impl WingGeometry
impl WingGeometry
Sourcepub fn rectangular(span: f64, chord: f64, n_span: usize, n_chord: usize) -> Self
pub fn rectangular(span: f64, chord: f64, n_span: usize, n_chord: usize) -> Self
Rectangular wing (no taper, no sweep, no twist).
Sourcepub fn tapered(
span: f64,
root_chord: f64,
tip_chord: f64,
n_span: usize,
n_chord: usize,
) -> Self
pub fn tapered( span: f64, root_chord: f64, tip_chord: f64, n_span: usize, n_chord: usize, ) -> Self
Tapered wing (no sweep, no twist).
Sourcepub fn reference_area(&self) -> f64
pub fn reference_area(&self) -> f64
Wing reference area: S = span × (root + tip) / 2.
Sourcepub fn aspect_ratio(&self) -> f64
pub fn aspect_ratio(&self) -> f64
Aspect ratio: AR = span² / S.
Sourcepub fn total_panels(&self) -> usize
pub fn total_panels(&self) -> usize
Total number of panels (both semi-spans × chordwise).
Trait Implementations§
Source§impl Clone for WingGeometry
impl Clone for WingGeometry
Source§fn clone(&self) -> WingGeometry
fn clone(&self) -> WingGeometry
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for WingGeometry
impl Debug for WingGeometry
Source§impl<'de> Deserialize<'de> for WingGeometry
impl<'de> Deserialize<'de> for WingGeometry
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for WingGeometry
impl RefUnwindSafe for WingGeometry
impl Send for WingGeometry
impl Sync for WingGeometry
impl Unpin for WingGeometry
impl UnsafeUnpin for WingGeometry
impl UnwindSafe for WingGeometry
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