particle¶
Collection of data structures and functions for particle information.
This module defines a particle as a collection of quantum numbers and things related to this.
-
class
AbstractQNConverter[source]¶ Bases:
abc.ABCAbstract interface for a quantum number converter.
-
class
CompareGraphElementPropertiesFunctor(ignored_qn_list=None)[source]¶ Bases:
objectFunctor for comparing graph elements.
-
class
FloatQNConverter[source]¶ Bases:
expertsystem.state.particle.AbstractQNConverterInterface for converting
floatquantum numbers.-
class_label= 'Class'¶
-
type_label= 'Type'¶
-
value_label= 'Value'¶
-
-
class
IntQNConverter[source]¶ Bases:
expertsystem.state.particle.AbstractQNConverterInterface for converting
intquantum numbers.-
class_label= 'Class'¶
-
type_label= 'Type'¶
-
value_label= 'Value'¶
-
-
class
InteractionQuantumNumberNames[source]¶ Bases:
enum.EnumDefinition of quantum number names for interaction nodes.
-
L= 1¶
-
ParityPrefactor= 3¶
-
S= 2¶
-
-
class
Labels[source]¶ Bases:
enum.EnumLabels that are useful in the particle module.
-
Class= 1¶
-
Component= 2¶
-
DecayInfo= 3¶
-
Name= 4¶
-
Parameter= 5¶
-
Pid= 6¶
-
PreFactor= 7¶
-
Projection= 8¶
-
QuantumNumber= 9¶
-
Type= 10¶
-
Value= 11¶
-
-
class
ParticleDecayPropertyNames[source]¶ Bases:
enum.EnumDefinition of decay properties names of particles.
-
Width= 1¶
-
-
class
ParticlePropertyNames[source]¶ Bases:
enum.EnumDefinition of properties names of particles.
-
Mass= 2¶
-
Pid= 1¶
-
-
class
QuantumNumberClasses[source]¶ Bases:
enum.EnumTypes of quantum number classes in the form of an enumerate.
-
Float= 2¶
-
Int= 1¶
-
Spin= 3¶
-
-
class
Spin(mag, proj)[source]¶ Bases:
objectSimple struct-like class defining spin as magnitude plus projection.
-
class
SpinQNConverter(parse_projection=True)[source]¶ Bases:
expertsystem.state.particle.AbstractQNConverterInterface for converting
Spinquantum numbers.-
class_label= 'Class'¶
-
proj_label= 'Projection'¶
-
type_label= 'Type'¶
-
value_label= 'Value'¶
-
-
class
StateQuantumNumberNames[source]¶ Bases:
enum.EnumDefinition of quantum number names for states.
-
BaryonNumber= 1¶
-
Bottomness= 2¶
-
CParity= 5¶
-
Charge= 3¶
-
Charm= 4¶
-
ElectronLN= 6¶
-
GParity= 7¶
-
IsoSpin= 8¶
-
MuonLN= 9¶
-
Parity= 10¶
-
Spin= 11¶
-
Strangeness= 12¶
-
TauLN= 13¶
-
Topness= 14¶
-
-
add_to_particle_list(particle)[source]¶ Add a particle dictionary object to the particle database dictionary.
The key will be extracted from the
particlename (XML tag@Name). If the key already exists, the entry in particle database will be overwritten by this one.
-
calculate_combinatorics(edges, state_particles, attached_external_edges_per_node, allowed_particle_groupings=None)[source]¶
-
get_particle_copy_by_name(particle_name)[source]¶ Get a
deepcopyof a particle from the particle database.This is useful when you want to manipulate that copy and add it as a new entry to the particle data base.
-
get_particle_with_name(particle_name)[source]¶ Get particle from the particle database by name.
Deprecated since version 0.2.0: particle database has become a dictionary, so you can already access its entries with a string index.
-
load_particle_list_from_xml(file_path)[source]¶ Add entries to the particle database from definitions in an XML file.
By default, the expert system loads the particle database from the XML file
particle_list.xmllocated in the ComPWA module. Useload_particle_list_from_xmlto append to the particle database.Note
If a particle name in the loaded XML file already exists in the particle database, the one in the particle database will be overwritten.
- Return type
None
-
load_particle_list_from_yaml(file_path)[source]¶ Use
load_particle_list_from_yamlto append to the particle database.Note
If a particle name in the YAML file already exists in the particle database instance, the one in particle database will be overwritten.
- Return type
None