Struct rustitude_core::manager::Manager
source · pub struct Manager<F: Field> {
pub model: Model<F>,
pub dataset: Dataset<F>,
}Expand description
Fields§
§model: Model<F>The associated Model.
dataset: Dataset<F>The associated Dataset.
Implementations§
source§impl<F: Field> Manager<F>
impl<F: Field> Manager<F>
sourcepub fn new(
model: &Model<F>,
dataset: &Dataset<F>,
) -> Result<Self, RustitudeError>
pub fn new( model: &Model<F>, dataset: &Dataset<F>, ) -> 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: &[F]) -> Result<Vec<F>, RustitudeError>
pub fn evaluate(&self, parameters: &[F]) -> Result<Vec<F>, 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 evaluate_indexed(
&self,
parameters: &[F],
indices: &[usize],
) -> Result<Vec<F>, RustitudeError>
pub fn evaluate_indexed( &self, parameters: &[F], indices: &[usize], ) -> Result<Vec<F>, RustitudeError>
Evaluate the Model over the Dataset with the given free parameters.
This method allows the user to supply a list of indices and will only evaluate events at those indices. This can be used to evaluate only a subset of events or to resample events with replacement, such as in a bootstrap.
§Errors
This method will return a RustitudeError if the amplitude calculation fails. See
Model::compute for more information.
sourcepub fn par_evaluate(&self, parameters: &[F]) -> Result<Vec<F>, RustitudeError>
pub fn par_evaluate(&self, parameters: &[F]) -> Result<Vec<F>, 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 par_evaluate_indexed(
&self,
parameters: &[F],
indices: &[usize],
) -> Result<Vec<F>, RustitudeError>
pub fn par_evaluate_indexed( &self, parameters: &[F], indices: &[usize], ) -> Result<Vec<F>, RustitudeError>
Evaluate the Model over the Dataset with the given free parameters.
This method allows the user to supply a list of indices and will only evaluate events at those indices. This can be used to evaluate only a subset of events or to resample events with replacement, such as in a bootstrap.
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 get_amplitude(
&self,
amplitude_name: &str,
) -> Result<Amplitude<F>, RustitudeError>
pub fn get_amplitude( &self, amplitude_name: &str, ) -> Result<Amplitude<F>, 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<F>, RustitudeError>
pub fn get_parameter( &self, amplitude_name: &str, parameter_name: &str, ) -> Result<Parameter<F>, 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 free_parameters(&self) -> Vec<Parameter<F>>
pub fn free_parameters(&self) -> Vec<Parameter<F>>
Returns a Vec<Parameter<F>> containing the free parameters in the Model.
See Model::free_parameters for more information.
sourcepub fn fixed_parameters(&self) -> Vec<Parameter<F>>
pub fn fixed_parameters(&self) -> Vec<Parameter<F>>
Returns a Vec<Parameter<F>> containing the fixed parameters in the Model.
See Model::fixed_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: F,
) -> Result<(), RustitudeError>
pub fn fix( &mut self, amplitude: &str, parameter: &str, value: F, ) -> 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: (F, F),
) -> Result<(), RustitudeError>
pub fn set_bounds( &mut self, amplitude: &str, parameter: &str, bounds: (F, F), ) -> 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: F,
) -> Result<(), RustitudeError>
pub fn set_initial( &mut self, amplitude: &str, parameter: &str, initial: F, ) -> 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<(F, F)>
pub fn get_bounds(&self) -> Vec<(F, F)>
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<F>
pub fn get_initial(&self) -> Vec<F>
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) -> Result<(), RustitudeError>
pub fn activate(&mut self, amplitude: &str) -> Result<(), RustitudeError>
Activate an Amplitude by name. See Model::activate for more information.
§Errors
This function will return a RustitudeError::AmplitudeNotFoundError if the given
amplitude is not present in the Model.
sourcepub fn activate_all(&mut self)
pub fn activate_all(&mut self)
Activate all Amplitudes by name. See Model::activate_all for more information.
sourcepub fn isolate(&mut self, amplitudes: Vec<&str>) -> Result<(), RustitudeError>
pub fn isolate(&mut self, amplitudes: Vec<&str>) -> Result<(), RustitudeError>
Activate only the specified Amplitudes while deactivating the rest. See
Model::isolate for more information.
§Errors
This function will return a RustitudeError::AmplitudeNotFoundError if a given
amplitude is not present in the Model.
sourcepub fn deactivate(&mut self, amplitude: &str) -> Result<(), RustitudeError>
pub fn deactivate(&mut self, amplitude: &str) -> Result<(), RustitudeError>
Deactivate an Amplitude by name. See Model::deactivate for more information.
§Errors
This function will return a RustitudeError::AmplitudeNotFoundError if the given
amplitude is not present in the Model.
sourcepub fn deactivate_all(&mut self)
pub fn deactivate_all(&mut self)
Deactivate all Amplitudes by name. See Model::deactivate_all for more information.
Trait Implementations§
Auto Trait Implementations§
impl<F> Freeze for Manager<F>
impl<F> !RefUnwindSafe for Manager<F>
impl<F> Send for Manager<F>
impl<F> Sync for Manager<F>
impl<F> Unpin for Manager<F>where
F: Unpin,
impl<F> !UnwindSafe for Manager<F>
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§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§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 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.