Module amplitudes

Source
Expand description

Amplitudes and methods for making and evaluating them.

Structs§

AmplitudeID
A tag which refers to a registered Amplitude. This is the base object which can be used to build Expressions and should be obtained from the Manager::register method.
AmplitudeValues
A helper struct that contains the value of each amplitude for a particular event
Evaluator
A structure which can be used to evaluate the stored Expression built on registered Amplitudes. This contains a Resources struct which already contains cached values for precomputed Amplitudes and any relevant free parameters and constants.
GradientValues
A helper struct that contains the gradient of each amplitude for a particular event
Manager
A manager which can be used to register Amplitudes with Resources. This structure is essential to any analysis and should be constructed using the Manager::default() method.
Model
A struct which contains a set of registerd Amplitudes (inside a Manager) and an Expression.

Enums§

Expression
An expression tree which contains AmplitudeIDs and operators over them.
ParameterLike
An enum containing either a named free parameter or a constant value.

Traits§

Amplitude
This is the only required trait for writing new amplitude-like structures for this crate. Users need only implement the register method to register parameters, cached values, and the amplitude itself with an input Resources struct and the compute method to actually carry out the calculation. Amplitude-implementors are required to implement Clone and can optionally implement a precompute method to calculate and cache values which do not depend on free parameters.

Functions§

central_difference
Utility function to calculate a central finite difference gradient.
constant
Shorthand for generating a constant value (which acts like a fixed parameter).
parameter
Shorthand for generating a named free parameter.