combinatorics

Deprecated since version 0.7.3: Use QRules and AmpForm instead

import expertsystem.reaction.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, node_props: Dict[int, InteractionProperties] = NOTHING)[source]

Bases: object

__eq__(other)

Method generated by attrs for class InitialFacts.

edge_props: Dict[int, Tuple[Particle, float]]
node_props: Dict[int, InteractionProperties]
create_initial_facts(topology: Topology, particles: ParticleCollection, initial_state: Sequence[Union[str, Tuple[str, Sequence[float]]]], final_state: Sequence[Union[str, Tuple[str, Sequence[float]]]], final_state_groupings: Optional[Union[List[List[List[str]]], List[List[str]], List[str]]] = None)List[InitialFacts][source]
match_external_edges(graphs: List[StateTransitionGraph[Tuple[Particle, float]]])None[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!