pub struct StochasticNoise {
pub white_noise: Option<WhiteNoise>,
pub bias: Option<GaussMarkov>,
}
Expand description
Stochastic noise modeling used primarily for synthetic orbit determination measurements.
This implementation distinguishes between the white noise model and the bias model. It also includes a constant offset.
Fields§
§white_noise: Option<WhiteNoise>
§bias: Option<GaussMarkov>
Implementations§
source§impl StochasticNoise
impl StochasticNoise
sourcepub const MIN: Self = _
pub const MIN: Self = _
The minimum stochastic noise process with a zero mean white noise of 1e-6.
sourcepub fn default_range_km() -> Self
pub fn default_range_km() -> Self
Default stochastic process of the Deep Space Network, as per DESCANSO Chapter 3, Table 3-3. Using the instrument bias as the white noise value, zero constant bias.
sourcepub fn default_doppler_km_s() -> Self
pub fn default_doppler_km_s() -> Self
Default stochastic process of the Deep Space Network, using as per DESCANSO Chapter 3, Table 3-3 for the GM process.
sourcepub fn covariance(&self, epoch: Epoch) -> f64
pub fn covariance(&self, epoch: Epoch) -> f64
Return the covariance of these stochastics at a given time.
sourcepub fn simulate<P: AsRef<Path>>(
self,
path: P,
runs: Option<u32>,
unit: Option<String>,
) -> Result<Vec<StochasticState>, Box<dyn Error>>
pub fn simulate<P: AsRef<Path>>( self, path: P, runs: Option<u32>, unit: Option<String>, ) -> Result<Vec<StochasticState>, Box<dyn Error>>
Simulate the configured stochastic model and store the bias in a parquet file.
Python: call as simulate(path, runs=25, unit=None)
where the path is the output Parquet file, runs is the number of runs, and unit is the unit of the bias, reflected only in the headers of the parquet file.
The unit is only used in the headers of the parquet file.
This will simulate the model with “runs” different seeds, sampling the process 500 times for a duration of 5 times the time constant.
Trait Implementations§
source§impl Clone for StochasticNoise
impl Clone for StochasticNoise
source§fn clone(&self) -> StochasticNoise
fn clone(&self) -> StochasticNoise
1.6.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for StochasticNoise
impl Debug for StochasticNoise
source§impl Default for StochasticNoise
impl Default for StochasticNoise
source§fn default() -> StochasticNoise
fn default() -> StochasticNoise
source§impl<'de> Deserialize<'de> for StochasticNoise
impl<'de> Deserialize<'de> for StochasticNoise
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>,
source§impl PartialEq for StochasticNoise
impl PartialEq for StochasticNoise
source§impl Serialize for StochasticNoise
impl Serialize for StochasticNoise
impl Copy for StochasticNoise
impl StructuralPartialEq for StochasticNoise
Auto Trait Implementations§
impl Freeze for StochasticNoise
impl RefUnwindSafe for StochasticNoise
impl Send for StochasticNoise
impl Sync for StochasticNoise
impl Unpin for StochasticNoise
impl UnwindSafe for StochasticNoise
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,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)source§impl<T> FromDhall for Twhere
T: DeserializeOwned,
impl<T> FromDhall for Twhere
T: DeserializeOwned,
fn from_dhall(v: &Value) -> Result<T, Error>
§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>
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>
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>
self
from the equivalent element of its
superset. Read more§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).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset
but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self
to the equivalent element of its superset.