ampform_dpd#

import ampform_dpd

Module for formulating the amplitude model for a three-body decay using DPD.

class AmplitudeModel(decay: ThreeBodyDecay, intensity: Expr = 1, amplitudes: dict[Indexed, Expr] = NOTHING, variables: dict[Symbol, Expr] = NOTHING, parameter_defaults: dict[Symbol, float | complex] = NOTHING, masses: dict[Symbol, float] = NOTHING, invariants: dict[Symbol, Expr] = NOTHING)[source]#

Bases: object

decay: ThreeBodyDecay[source]#
intensity: Expr[source]#
amplitudes: dict[Indexed, Expr][source]#
variables: dict[Symbol, Expr][source]#
parameter_defaults: dict[Symbol, float | complex][source]#
masses: dict[Symbol, float][source]#
invariants: dict[Symbol, Expr][source]#
property full_expression: Expr[source]#
class DalitzPlotDecompositionBuilder(decay: ThreeBodyDecay, min_ls: tuple[bool, bool] | bool = True)[source]#

Bases: object

formulate(reference_subsystem: Literal[1, 2, 3] = 1, cleanup_summations: bool = False) AmplitudeModel[source]#
formulate_subsystem_amplitude(λ0: Rational, λ1: Rational, λ2: Rational, λ3: Rational, subsystem_id: Literal[1, 2, 3]) AmplitudeModel[source]#
formulate_aligned_amplitude(λ0: Rational | Symbol, λ1: Rational | Symbol, λ2: Rational | Symbol, λ3: Rational | Symbol, reference_subsystem: FinalStateID = 1) tuple[PoolSum, dict[Symbol, Expr]][source]#
class DynamicsConfigurator(decay: ThreeBodyDecay)[source]#

Bases: object

register_builder(identifier, builder: DynamicsBuilder) None[source]#
get_builder(identifier) DynamicsBuilder[source]#
property decay: ThreeBodyDecay[source]#
class DynamicsBuilder(*args, **kwargs)[source]#

Bases: Protocol

formulate_non_resonant(decay_chain: ThreeBodyDecayChain) tuple[Expr, dict[Symbol, float | complex]][source]#
create_mass_symbol_mapping(decay: ThreeBodyDecay) dict[Symbol, float][source]#
formulate_invariants(decay: ThreeBodyDecay) dict[Symbol, Expr][source]#
formulate_third_mandelstam(decay: ThreeBodyDecay, x_mandelstam: Literal[1, 2, 3] = 1, y_mandelstam: Literal[1, 2, 3] = 2) Add[source]#

Submodules and Subpackages