Trait rv::process::RandomProcess

source ·
pub trait RandomProcess<X>
where X: Scalar + Debug, Self: Sized,
{ type Error: Error + Send + Sync + 'static; type Index; type SampleFunction: Rv<DVector<X>>; // Required methods fn sample_function(&self, indices: &[Self::Index]) -> Self::SampleFunction; fn ln_m(&self) -> f64; fn ln_m_with_params( &self, parameter: &DVector<f64>, ) -> Result<(f64, DVector<f64>), Self::Error>; fn parameters(&self) -> DVector<f64>; fn set_parameters( self, parameters: &DVector<f64>, ) -> Result<Self, Self::Error>; }
Expand description

A representation of a generic random process

Required Associated Types§

source

type Error: Error + Send + Sync + 'static

Error from

source

type Index

Type of the indexing set.

source

type SampleFunction: Rv<DVector<X>>

Type of the sample function, aka trajectory of the process.

Required Methods§

source

fn sample_function(&self, indices: &[Self::Index]) -> Self::SampleFunction

Create a sample function at the indices given.

source

fn ln_m(&self) -> f64

Compute the log marginal likelihood

source

fn ln_m_with_params( &self, parameter: &DVector<f64>, ) -> Result<(f64, DVector<f64>), Self::Error>

Compute the log marginal likelihood with an different set of parameters and compute the gradient.

source

fn parameters(&self) -> DVector<f64>

Get the parameters

source

fn set_parameters(self, parameters: &DVector<f64>) -> Result<Self, Self::Error>

Set with the given parameters

Object Safety§

This trait is not object safe.

Implementors§