Usage

Main interface

The expertsystem consists of three main components: particle, reaction, and amplitude that build on each other. Here’s a small example of how to use them!

Check allowed reactions

The expertsystem can be used to check whether a transition between an initial and final state is violated by any conservation rules:

import expertsystem as es

es.check_reaction_violations(
    initial_state="pi0",
    final_state=["gamma", "gamma", "gamma"],
)
{frozenset({'c_parity_conservation'})}

Investigate intermediate resonances

result = es.reaction.generate(
    initial_state="J/psi(1S)",
    final_state=["K0", "Sigma+", "p~"],
    allowed_interaction_types="strong",
    formalism_type="canonical-helicity",
)
import graphviz

dot = es.io.asdot(result, collapse_graphs=True)
graphviz.Source(dot)
_images/usage_17_0.svg

Finally, you use the amplitude module to convert these transitions into a mathematical description that you can use to fit your data and perform Partial Wave Analysis!