QRules is a Python package for validating and generating particle reactions using quantum number conservation rules. The user only has to provide a certain set of boundary conditions (initial and final state, allowed interaction types, expected decay topologies, etc.). QRules will then span the space of allowed quantum numbers over all allowed decay topologies and particle instances that correspond with the sets of allowed quantum numbers it has found.
The resulting state transition objects are particularly useful for amplitude analysis / Partial Wave Analysis as they contain all information (such as expected masses, widths, and spin projections) that is needed to formulate an amplitude model.
Visit qrules.rtfd.io for more information!
For an overview of upcoming releases and planned functionality, see here.
- Input: Particle database
- Source of truth: PDG
- Predefined particle list file
- Option to overwrite and append with custom particle definitions
- State transition graph
- Feynman graph like description of the reactions
- Visualization of the decay topology
- Conservation rules
- Open-closed design
- Large set of predefined rules
- Spin/Angular momentum conservation
- Quark and Lepton flavor conservation (incl. isospin)
- Baryon number conservation
- EM-charge conservation
- Parity, C-Parity, G-Parity conservation
- Mass conservation
- Predefined sets of conservation rules representing Strong, EM, Weak interactions
See CONTRIBUTING.md