Struct nyx_space::dynamics::solarpressure::SolarPressure
source · pub struct SolarPressure {
pub phi: f64,
pub e_loc: EclipseLocator,
}
Expand description
Computation of solar radiation pressure is based on STK: http://help.agi.com/stk/index.htm#gator/eq-solar.htm .
Fields§
§phi: f64
solar flux at 1 AU, in W/m^2
e_loc: EclipseLocator
Implementations§
source§impl SolarPressure
impl SolarPressure
sourcepub fn default_raw(
shadow_bodies: Vec<Frame>,
almanac: Arc<Almanac>
) -> Result<Self, DynamicsError>
pub fn default_raw( shadow_bodies: Vec<Frame>, almanac: Arc<Almanac> ) -> Result<Self, DynamicsError>
Will set the solar flux at 1 AU to: Phi = 1367.0
Trait Implementations§
source§impl Clone for SolarPressure
impl Clone for SolarPressure
source§fn clone(&self) -> SolarPressure
fn clone(&self) -> SolarPressure
Returns a copy 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 Display for SolarPressure
impl Display for SolarPressure
source§impl ForceModel for SolarPressure
impl ForceModel for SolarPressure
source§fn eom(
&self,
ctx: &Spacecraft,
almanac: Arc<Almanac>
) -> Result<Vector3<f64>, DynamicsError>
fn eom( &self, ctx: &Spacecraft, almanac: Arc<Almanac> ) -> Result<Vector3<f64>, DynamicsError>
Defines the equations of motion for this force model from the provided osculating state.
source§fn dual_eom(
&self,
ctx: &Spacecraft,
almanac: Arc<Almanac>
) -> Result<(Vector3<f64>, Matrix3<f64>), DynamicsError>
fn dual_eom( &self, ctx: &Spacecraft, almanac: Arc<Almanac> ) -> Result<(Vector3<f64>, Matrix3<f64>), DynamicsError>
Force models must implement their partials, although those will only be called if the propagation requires the
computation of the STM. The
osc_ctx
is the osculating context, i.e. it changes for each sub-step of the integrator.Auto Trait Implementations§
impl Freeze for SolarPressure
impl RefUnwindSafe for SolarPressure
impl Send for SolarPressure
impl Sync for SolarPressure
impl Unpin for SolarPressure
impl UnwindSafe for SolarPressure
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more§impl<T> Pointable for T
impl<T> Pointable for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§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 more§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).§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.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self
to the equivalent element of its superset.