QED Diagram Generation #10
Loading…
x
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Implement a good generation algorithm for QED diagrams.
Idea:
1.1: Generate unlabeled free rooted plane trees (http://combos.org/tree) from fermion lines
1.2: Connect external photons
1.3: Assign left-side fermions in all combinations
1.4: Assign right-side fermions in all combinations
1.5: Assign external photons
Use recursive iterators for the diagram generation to reduce memory footprint while generating.
Revision of the diagram generation:
What we really want are "labeled free plane trees with n vertices", i.e., trees that have no specified root (->free), have labeled nodes, and are in a plane (-> ordering of subtrees is fixed). This is not the same as generating only free plane trees and then labeling them in n! ways, since in this way we produce isomorphic duplicates. We can actually easily see this by noticing that the formula for the number of labeled free plane trees (3n-3)!/(2n-1)! doesn't always have a factor of n!, resulting in fractions.
Therefore, it is likely more useful to find an appropriate generation algorithm generating labelled free plane trees with n vertices directly. The procedure then becomes:
1.1: Generate labeled free plane trees from fermion lines with fixed left sides: (3n-3)!/(2n-1)! objects
1.2: Connect external photons: previous objects times C(m+3n-3, 3n-3)
1.3: Assign right-side fermions in all combinations: previous objects times e! * u! * t!
1.4: Assign external photons: previous objects times m!