Struct rustitude_core::manager::Manager
source · pub struct Manager {
pub model: Model,
pub dataset: Dataset,
}Expand description
Fields§
§model: ModelThe associated Model.
dataset: DatasetThe associated Dataset.
Implementations§
source§impl Manager
impl Manager
sourcepub fn new(model: &Model, dataset: &Dataset) -> Result<Self, RustitudeError>
pub fn new(model: &Model, dataset: &Dataset) -> Result<Self, RustitudeError>
Generates a new Manager from a Model and Dataset.
§Errors
This method will return a RustitudeError if the precaluclation phase of the Model
fails for any events in the Dataset. See Model::load for more information.
sourcepub fn evaluate(&self, parameters: &[f64]) -> Result<Vec<f64>, RustitudeError>
pub fn evaluate(&self, parameters: &[f64]) -> Result<Vec<f64>, RustitudeError>
Evaluate the Model over the Dataset with the given free parameters.
§Errors
This method will return a RustitudeError if the amplitude calculation fails. See
Model::compute for more information.
sourcepub fn par_evaluate(
&self,
parameters: &[f64],
) -> Result<Vec<f64>, RustitudeError>
pub fn par_evaluate( &self, parameters: &[f64], ) -> Result<Vec<f64>, RustitudeError>
Evaluate the Model over the Dataset with the given free parameters.
This version uses a parallel loop over events.
§Errors
This method will return a RustitudeError if the amplitude calculation fails. See
Model::compute for more information.
sourcepub fn norm_int(&self, parameters: &[f64]) -> Result<Vec<f64>, RustitudeError>
pub fn norm_int(&self, parameters: &[f64]) -> Result<Vec<f64>, RustitudeError>
Find the normalization integral for the Model over the Dataset with the given
free parameters.
§Errors
This method will return a RustitudeError if the amplitude calculation fails. See
Model::norm_int for more information.
sourcepub fn par_norm_int(
&self,
parameters: &[f64],
) -> Result<Vec<f64>, RustitudeError>
pub fn par_norm_int( &self, parameters: &[f64], ) -> Result<Vec<f64>, RustitudeError>
Find the normalization integral for the Model over the Dataset with the given
free parameters. This version uses a parallel loop over events.
§Errors
This method will return a RustitudeError if the amplitude calculation fails. See
Model::norm_int for more information.
sourcepub fn get_amplitude(
&self,
amplitude_name: &str,
) -> Result<Amplitude, RustitudeError>
pub fn get_amplitude( &self, amplitude_name: &str, ) -> Result<Amplitude, RustitudeError>
Get a copy of an Amplitude in the Model by name.
§Errors
This method will return a RustitudeError if there is no amplitude found with the given
name in the parent Model. See Model::get_amplitude for more information.
sourcepub fn get_parameter(
&self,
amplitude_name: &str,
parameter_name: &str,
) -> Result<Parameter, RustitudeError>
pub fn get_parameter( &self, amplitude_name: &str, parameter_name: &str, ) -> Result<Parameter, RustitudeError>
Get a copy of a Parameter in a Model by name and the name of the parent
Amplitude.
§Errors
This method will return a RustitudeError if there is no parameter found with the given
name in the parent Model. It will also first check if the given amplitude exists, and
this method can also fail in the same way (see Model::get_amplitude and
Model::get_parameter).
sourcepub fn print_parameters(&self)
pub fn print_parameters(&self)
Print the free parameters in the Model. See Model::print_parameters for more
information.
sourcepub fn constrain(
&mut self,
amplitude_1: &str,
parameter_1: &str,
amplitude_2: &str,
parameter_2: &str,
) -> Result<(), RustitudeError>
pub fn constrain( &mut self, amplitude_1: &str, parameter_1: &str, amplitude_2: &str, parameter_2: &str, ) -> Result<(), RustitudeError>
Constrain two parameters by name, reducing the number of free parameters by one.
§Errors
This method will fail if any of the given amplitude or parameter names don’t correspond to
a valid amplitude-parameter pair. See Model::constrain for more information.
sourcepub fn fix(
&mut self,
amplitude: &str,
parameter: &str,
value: f64,
) -> Result<(), RustitudeError>
pub fn fix( &mut self, amplitude: &str, parameter: &str, value: f64, ) -> Result<(), RustitudeError>
Fix a parameter by name to the given value.
§Errors
This method will fail if the given amplitude-parameter pair does not exist. See
Model::fix for more information.
sourcepub fn free(
&mut self,
amplitude: &str,
parameter: &str,
) -> Result<(), RustitudeError>
pub fn free( &mut self, amplitude: &str, parameter: &str, ) -> Result<(), RustitudeError>
Free a fixed parameter by name.
§Errors
This method will fail if the given amplitude-parameter pair does not exist. See
Model::free for more information.
sourcepub fn set_bounds(
&mut self,
amplitude: &str,
parameter: &str,
bounds: (f64, f64),
) -> Result<(), RustitudeError>
pub fn set_bounds( &mut self, amplitude: &str, parameter: &str, bounds: (f64, f64), ) -> Result<(), RustitudeError>
Set the bounds of a parameter by name.
§Errors
This method will fail if the given amplitude-parameter pair does not exist. See
Model::set_bounds for more information.
sourcepub fn set_initial(
&mut self,
amplitude: &str,
parameter: &str,
initial: f64,
) -> Result<(), RustitudeError>
pub fn set_initial( &mut self, amplitude: &str, parameter: &str, initial: f64, ) -> Result<(), RustitudeError>
Set the initial value of a parameter by name.
§Errors
This method will fail if the given amplitude-parameter pair does not exist. See
Model::set_initial for more information.
sourcepub fn get_bounds(&self) -> Vec<(f64, f64)>
pub fn get_bounds(&self) -> Vec<(f64, f64)>
Get a list of bounds for all free parameters in the Model. See
Model::get_bounds for more information.
sourcepub fn get_initial(&self) -> Vec<f64>
pub fn get_initial(&self) -> Vec<f64>
Get a list of initial values for all free parameters in the Model. See
Model::get_initial for more information.
sourcepub fn get_n_free(&self) -> usize
pub fn get_n_free(&self) -> usize
Get the number of free parameters in the Model See Model::get_n_free for
more information.
sourcepub fn activate(&mut self, amplitude: &str)
pub fn activate(&mut self, amplitude: &str)
Activate an Amplitude by name. See Model::activate for more information.
sourcepub fn deactivate(&mut self, amplitude: &str)
pub fn deactivate(&mut self, amplitude: &str)
Deactivate an Amplitude by name. See Model::deactivate for more information.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Manager
impl !RefUnwindSafe for Manager
impl Send for Manager
impl Sync for Manager
impl Unpin for Manager
impl !UnwindSafe for Manager
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> 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 moresource§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moresource§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).source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.