settings#

import qrules.settings

Default configuration for qrules.

It is possible to change some settings from the outside, for instance:

>>> import qrules
>>> qrules.settings.MAX_ANGULAR_MOMENTUM = 4
>>> qrules.settings.MAX_SPIN_MAGNITUDE = 3
CONSERVATION_LAW_PRIORITIES: Dict[GraphElementRule | EdgeQNConservationRule | ConservationRule, int] = {<class 'qrules.conservation_rules.BaryonNumberConservation'>: 90, <class 'qrules.conservation_rules.BottomnessConservation'>: 68, <class 'qrules.conservation_rules.ChargeConservation'>: 100, <class 'qrules.conservation_rules.CharmConservation'>: 70, <class 'qrules.conservation_rules.ElectronLNConservation'>: 45, <class 'qrules.conservation_rules.MassConservation'>: 10, <class 'qrules.conservation_rules.MuonLNConservation'>: 44, <class 'qrules.conservation_rules.StrangenessConservation'>: 69, <class 'qrules.conservation_rules.TauLNConservation'>: 43, <function c_parity_conservation>: 5, <function g_parity_conservation>: 3, <function helicity_conservation>: 7, <function identical_particle_symmetrization>: 2, <function isospin_conservation>: 60, <function ls_spin_validity>: 89, <function parity_conservation>: 6, <function parity_conservation_helicity>: 4, <function spin_conservation>: 8, <function spin_magnitude_conservation>: 8}#

Determines the order with which to verify conservation rules.

EDGE_RULE_PRIORITIES: Dict[GraphElementRule, int] = {<function gellmann_nishijima>: 50, <function isospin_validity>: 61, <function spin_validity>: 62}#

Determines the order with which to verify Edge conservation rules.

class InteractionType(value)[source]#

Bases: Enum

Types of interactions in the form of an enumerate.

STRONG = 1[source]#
EM = 2[source]#
WEAK = 3[source]#
static from_str(description: str) InteractionType[source]#
create_interaction_settings(formalism: str, particle_db: ParticleCollection, nbody_topology: bool = False, mass_conservation_factor: float | None = 3.0, max_angular_momentum: int = 2, max_spin_magnitude: float = 2.0) Dict[InteractionType, Tuple[EdgeSettings, NodeSettings]][source]#

Create a container that holds the settings for InteractionType.

class NumberOfThreads[source]#

Bases: object

classmethod get() int[source]#
classmethod set(n_cores: int | None) None[source]#

Set the number of threads; use None for all available cores.