Skip to content

Conversation

@tueda
Copy link
Collaborator

@tueda tueda commented Dec 27, 2024

This fixes #474.

Internally, 2 new flags NOTOPOS and NOSYMMETRYFACTOR have been introduced. These flags are not yet exposed to users as preprocessor variables.

For now, node numbers start from 1.

The result of Diagram_3 has been updated:

-       + node_(0,-Q1)*node_(1,-Q2)*node_(2,Q1,-p1,-p2)*node_(3,p1,-p3,-p4)*
-      node_(4,Q2,p2,p3,p4)
+       + node_(0,-Q1)*node_(1,-Q2)*node_(2,-p1,-p2,-p3)*node_(3,Q2,p1,-p4)*
+      node_(4,Q1,p2,p3,p4)

but they are actually the same. The old and new diagrams are equivalent when considering the symmetry that arises from interchanging the two external legs:

I am not sure about the diagram generator options for NOSNAILS_, NOTADPOLES_, etc., as they have not yet been tested.

- Add NOTOPOS and NOSYMMETRYFACTOR flags to control the inclusion of
  topo_ and symmetry factors.
- Set an appropriate default value for the optional last argument of the
  topologies_ function.
- Fix missing/wrong initialization of info and TopoInf.
- Avoid unnecessary heap allocation.
The expected result for the Diagrams_3 test case is updated while
remaining consistent with the old result because of the symmetry of
interchanging the external legs.

For now, the node IDs are decremented in the test code to reproduce the
old results.
@coveralls
Copy link

Coverage Status

coverage: 50.914% (+0.2%) from 50.722%
when pulling e76def6 on tueda:pr-fix-topologies-1
into 8abec49 on vermaseren:master.

@tueda tueda added this to the v5 milestone Jan 29, 2025
@tueda tueda marked this pull request as ready for review June 1, 2025 15:32
@tueda
Copy link
Collaborator Author

tueda commented Jun 1, 2025

Question: Are these changes acceptable?

  1. The node numbering starts from 1 instead of 0.
  2. The generated graphs appear different (but are isomorphic).

Another question about the diagram generator is why the name WITHOUTINSERTIONS_ was chosen instead of NOINSERTIONS_.

@jodavies
Copy link
Collaborator

jodavies commented Jun 1, 2025

There is also WITHEDGES, WITHBLOCKS and WITHONEPISETS. Those could be standardised a bit indeed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Broken topologies_

3 participants