DiagramGroup

Symbolica documentation for getting started, symbolic expressions, numerical evaluation, pattern matching, and APIs in Python and Rust.

DiagramGroup

class DiagramGroup

Diagrams whose numerators are related by known scalar factors.

Grouping lets amplitude calculations evaluate one master numerator and reconstruct related diagrams from each member’s symbolic ratio.

Examples

from symbolica import S, E
from symbolica.community import hepkit as hep
model = hep.Model.phi4()
process = model.process(["phi", "phi"], ["phi", "phi"])
result = process.generate_diagrams(loops=1)
diagram = result.diagrams[0]
group = result.groups[0]
master_diagram = result.diagrams[group.master]
ratios = [member.ratio for member in group.members]

Attributes

Name Description
master Return the retained-diagram index used as the numerator reference.
members Return the deterministically ordered group members, including the master.

master

DiagramGroup.master: builtins.int

Return the retained-diagram index used as the numerator reference.

Examples

Using the setup in the DiagramGroup class example:

result.diagrams[result.groups[0].master]

members

DiagramGroup.members: builtins.list[GroupMember]

Return the deterministically ordered group members, including the master.

Examples

Using the setup in the DiagramGroup class example:

weighted_diagrams = [(result.diagrams[m.diagram], m.ratio) for m in group.members]