builder

Deprecated since version 0.7.3: Use QRules and AmpForm instead

import expertsystem.amplitude.dynamics.builder

Build lineshape with correct variable names and values.

class ResonanceDynamicsBuilder(*args, **kwargs)[source]

Bases: Protocol

Protocol that is used by set_dynamics.

Follow this Protocol when defining a builder function that is to be used by set_dynamics. For an example, see the source code create_relativistic_breit_wigner, which creates a relativistic_breit_wigner.

See also

Custom dynamics

__call__(particle: Particle, variable_pool: TwoBodyKinematicVariableSet)Tuple[Expr, Dict[Symbol, float]][source]

Call self as a function.

class TwoBodyKinematicVariableSet(in_edge_inv_mass: Symbol, out_edge_inv_mass1: Symbol, out_edge_inv_mass2: Symbol, helicity_theta: Symbol, helicity_phi: Symbol, angular_momentum: Optional[int] = None)[source]

Bases: object

__eq__(other)

Method generated by attrs for class TwoBodyKinematicVariableSet.

angular_momentum: Optional[int]
helicity_phi: Symbol
helicity_theta: Symbol
in_edge_inv_mass: Symbol
out_edge_inv_mass1: Symbol
out_edge_inv_mass2: Symbol
create_non_dynamic(particle: Particle, variable_pool: TwoBodyKinematicVariableSet)Tuple[Expr, Dict[Symbol, float]][source]
create_non_dynamic_with_ff(particle: Particle, variable_pool: TwoBodyKinematicVariableSet)Tuple[Expr, Dict[Symbol, float]][source]
create_relativistic_breit_wigner(particle: Particle, variable_pool: TwoBodyKinematicVariableSet)Tuple[Expr, Dict[Symbol, float]][source]
create_relativistic_breit_wigner_with_ff(particle: Particle, variable_pool: TwoBodyKinematicVariableSet)Tuple[Expr, Dict[Symbol, float]][source]
verify_signature(builder: Callable)None[source]

Check signature of a builder function dynamically.

Dynamically check whether a builder has the same signature as ResonanceDynamicsBuilder. This function is needed because typing.runtime_checkable does only checks members and methods, not the signature of those methods.