pyfeyn2.auto.position.auto_vdw

pyfeyn2.auto.position.auto_vdw(fd, points=None, LJ=0.0, dis=None, y_symmetry=0.0, x_symmetry=0.0, intersection=0.0)[source]

Minimizes a potential between vertices and legs. Further the function to be minimized gets punished by the number of intersections scaled by intersection. The function to be minimized gets punished by the asymmetry in x and y direction scaled by x_symmetry and y_symmetry.

Parameters:
  • fd (FeynmanDiagram) – The Feynman diagram to be positioned.

  • points (list of Point, optional) – The points (leg or vertex) to be positioned. Recommended values are fd.vertices or [*fd.vertices, *fd.legs]

  • LJ (float, optional) – The strength of the Lennard-Jones potential, by default 1.0

  • y_symmetry (float, optional) – The strength of the punishment for asymmetry in y direction, by default 0.0

  • x_symmetry (float, optional) – The strength of the punishment for asymmetry in x direction, by default 0.0

  • intersection (float, optional) – The strength of the punishment for intersections, by default 0.0

Returns:

The Feynman diagram with the vertices and legs positioned.

Return type:

FeynmanDiagram