combinatorics#
import qrules.combinatorics
Perform permutations on the edges of a StateTransitionGraph
.
In a StateTransitionGraph
, the edges represent quantum states, while the nodes
represent interactions. This module provides tools to permutate, modify or extract these
edge and node properties.
- class InitialFacts(edge_props: Dict[int, Tuple[Particle, float]] = _Nothing.NOTHING, node_props: Dict[int, InteractionProperties] = _Nothing.NOTHING)[source]#
Bases:
object
- node_props: Dict[int, InteractionProperties]#
- create_initial_facts(initial_state: Sequence[Union[str, Tuple[str, Sequence[float]]]], final_state: Sequence[Union[str, Tuple[str, Sequence[float]]]], particle_db: ParticleCollection) List[InitialFacts] [source]#
- permutate_topology_kinematically(topology: Topology, initial_state: List[Union[str, Tuple[str, Sequence[float]]]], final_state: List[Union[str, Tuple[str, Sequence[float]]]], final_state_groupings: Optional[Union[List[List[List[str]]], List[List[str]], List[str]]] = None) List[Topology] [source]#
- perform_external_edge_identical_particle_combinatorics(graph: StateTransitionGraph) List[StateTransitionGraph] [source]#
Create combinatorics clones of the
StateTransitionGraph
.In case of identical particles in the initial or final state. Only identical particles, which do not enter or exit the same node allow for combinatorics!