amplitude#

formulate(model: ModelDefinition, cleanup_summations: bool = False, to_latex: Callable[[str], str] = <function identity_function>, additional_builders: dict[str, PropagatorDynamicsBuilder] | None = None) AmplitudeModel[source]#

Formulate the serialized chains with their supplied complex weights.

Coupling symbols include the subsystem when a chain name occurs in multiple subsystems. This preserves distinct serialized weights, including relative signs, without imposing additional symmetry relations between the chains.

formulate_chain_amplitude(λ0: sp.Rational, λ1: sp.Rational, λ2: sp.Rational, λ3: sp.Rational, model: ModelDefinition, chain_idx: int, to_latex: Callable[[str], str] = <function identity_function>, additional_builders: dict[str, PropagatorDynamicsBuilder] | None = None) dict[Basic, complex | float | Expr][source]#

Formulate the amplitude for one decay chain of a serialized model.

This is the serialization counterpart of DalitzPlotDecompositionBuilder.formulate_subsystem_amplitude: the couplings and dynamics are read from the model definition instead of being generated, but the phase conventions, the Kronecker delta over the production helicities, and the sum over the resonance helicity \(\lambda_R\) are the same. The two implementations have to be kept in sync.

formulate_aligned_amplitude(model: ModelDefinition, λ0: Rational | Symbol, λ1: Rational | Symbol, λ2: Rational | Symbol, λ3: Rational | Symbol) tuple[PoolSum, dict[Symbol, Expr]][source]#
formulate_recoupling(model: ModelDefinition, chain_idx: int, vertex_idx: int) Expr[source]#
get_existing_subsystem_ids(model: ModelDefinition) list[FinalStateID][source]#
class HelicityRecoupling(*args)[source]#

Bases: Expr

λa: Rational | Symbol[source]#
λb: Rational | Symbol[source]#
λa0: Rational | Symbol[source]#
λb0: Rational | Symbol[source]#
class ParityRecoupling(*args)[source]#

Bases: Expr

λa: Any[source]#
λb: Any[source]#
λa0: Any[source]#
λb0: Any[source]#
f: Any[source]#
class LSRecoupling(*args)[source]#

Bases: Expr

λa: Any[source]#
λb: Any[source]#
l: Any[source]#
s: Any[source]#
ja: Any[source]#
jb: Any[source]#
j: Any[source]#