Skip to main content

GraphTerm

Trait GraphTerm 

Source
pub trait GraphTerm {
    // Required methods
    fn evaluate<T: FloatLike>(
        &mut self,
        sample: &MomentumSample<T>,
        context: GraphTermEvaluationContext<'_, '_, T>,
    ) -> Result<GraphEvaluationResult<T>>;
    fn name(&self) -> String;
    fn orientation_label(&self, orientation_id: usize) -> Option<String>;
    fn lmb_channel_label(
        &self,
        channel_id: ChannelIndex,
        parameterization_settings: &ParameterizationSettings,
    ) -> Result<Option<String>>;
    fn warm_up(
        &mut self,
        settings: &RuntimeSettings,
        model: &Model,
    ) -> Result<()>;
    fn get_graph(&self) -> &Graph;
    fn get_num_channels(
        &self,
        parameterization_settings: &ParameterizationSettings,
    ) -> usize;
    fn get_num_orientations(&self) -> usize;
    fn selected_lmb_basis_id(
        &self,
        parameterization_settings: &ParameterizationSettings,
    ) -> Result<LmbIndex>;
    fn get_tropical_sampler(&self) -> &SampleGenerator<3>;
    fn get_mut_param_builder(&mut self) -> &mut ParamBuilder<f64>;
    fn get_real_mass_vector(&self) -> EdgeVec<Option<F<f64>>>;
}

Required Methods§

Source

fn evaluate<T: FloatLike>( &mut self, sample: &MomentumSample<T>, context: GraphTermEvaluationContext<'_, '_, T>, ) -> Result<GraphEvaluationResult<T>>

Source

fn name(&self) -> String

Source

fn orientation_label(&self, orientation_id: usize) -> Option<String>

Source

fn lmb_channel_label( &self, channel_id: ChannelIndex, parameterization_settings: &ParameterizationSettings, ) -> Result<Option<String>>

Source

fn warm_up(&mut self, settings: &RuntimeSettings, model: &Model) -> Result<()>

Source

fn get_graph(&self) -> &Graph

Source

fn get_num_channels( &self, parameterization_settings: &ParameterizationSettings, ) -> usize

Source

fn get_num_orientations(&self) -> usize

Source

fn selected_lmb_basis_id( &self, parameterization_settings: &ParameterizationSettings, ) -> Result<LmbIndex>

Source

fn get_tropical_sampler(&self) -> &SampleGenerator<3>

Source

fn get_mut_param_builder(&mut self) -> &mut ParamBuilder<f64>

Source

fn get_real_mass_vector(&self) -> EdgeVec<Option<F<f64>>>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§