コンテンツにスキップ

SpacecraftShape

このコンテンツはまだ日本語訳がありません。

Defined in: surface.rs:66

pub enum SpacecraftShape {
Sphere { area: f64, cd: f64, cr: f64 },
Panels(Vec<SurfacePanel>),
}

Spacecraft shape model for aerodynamic force computation.

Provides a gradation from the simplest attitude-independent model (Sphere) to fully attitude-dependent panel models (Panels).

area: f64 cd: f64 cr: f64

Attitude-independent model. Carries effective cross-section area and surface coefficients. Not limited to geometric spheres — represents any isotropic surface model.


Panels([Vec<SurfacePanel>](https://doc.rust-lang.org/std/vec/struct.Vec.html))

Flat-panel model: attitude-dependent.


fn sphere(area: f64, cd: f64, cr: f64) -> Self

Create a sphere (attitude-independent) shape with the given parameters.

Panics if area is not positive or if cd/cr are negative.


fn panels(panels: [Vec<SurfacePanel>](https://doc.rust-lang.org/std/vec/struct.Vec.html)) -> Self

Create a panel model from an arbitrary set of panels.


fn cube(half_size: f64, cd: f64, cr: f64) -> Self

Create a cube with the given half-size, drag coefficient, and radiation pressure coefficient.

Generates 6 panels (±x, ±y, ±z), each with area (2 * half_size)² m² and centre of pressure at the face centre (half_size m from CoM along the face normal).