expertsystem¶
import expertsystem
A rule based system that facilitates particle reaction analysis.
The main responsibility of the expertsystem is to validate particle reactions
as specified by the user. The user boundary conditions for a particle reaction
problem are for example the initial state, final state, and allowed
interactions.
A further responsibility is to build amplitude models, if a reaction is valid. These models are based on the found solutions and represent the transition probability of the process.
The expertsystem consists of two main components:
expertsystem.reaction― the core of the
expertsystemthat computes which transitions (represented by aStateTransitionGraph) are allowed between a certain initial and final state. Internally, the system propagates the quantum numbers defined by thereaction.particlemodule through theStateTransitionGraph, while satisfying the rules define by theconservation_rulesmodule. See Generate transitions and Particle database.expertsystem.amplitude― a collection of tools to convert the
StateTransitionGraphsolutions found byreactioninto anHelicityModel. This module is specifically designed to create amplitude model templates for PWA fitter packages. See Formulate amplitude model.
Finally, the io module provides tools that can read and write the objects of
this framework.
-
check_reaction_violations(initial_state: Union[str, Tuple[str, Sequence[float]], Sequence[Union[str, Tuple[str, Sequence[float]]]]], final_state: Sequence[Union[str, Tuple[str, Sequence[float]]]], mass_conservation_factor: Optional[float] = 3.0) → Set[FrozenSet[str]][source]¶ An alias to
reaction.check_reaction_violations.
-
generate_transitions(initial_state: Union[str, Tuple[str, Sequence[float]], Sequence[Union[str, Tuple[str, Sequence[float]]]]], final_state: Sequence[Union[str, Tuple[str, Sequence[float]]]], allowed_intermediate_particles: Optional[List[str]] = None, allowed_interaction_types: Optional[Union[str, List[str]]] = None, formalism_type: str = 'helicity', particles: Optional[ParticleCollection] = None, mass_conservation_factor: Optional[float] = 3.0, topology_building: str = 'isobar', number_of_threads: Optional[int] = None) → Result¶ An alias to
reaction.generate.
-
load_default_particles() → ParticleCollection[source]¶ Load the default particle list that comes with the
expertsystem.Runs
load_pdgand supplements its output definitions from the filereaction/additional_definitions.yml.
Submodules and Subpackages