Open vsht opened 1 year ago
These are the issues I meant previously. There is a symmetry in the first example, or at least the code thinks so, it's just that figuring out the momenta map involves solving a system of quadratic equations, which Feynson can only do if they factorize. This might or might not be easy to fix, stay tuned for updates :)
I agree that finding momenta mappings can get ugly for linear propagators: in most cases there is no good way to represent them in terms of some line momenta.
In FeynCalc I try to avoid quadratic equations by simply dropping equations with linear propagators from the system:
Since such integrals usually contain also quadratic propagators and the system is overdetermined, this seems to work quite well. Of course, I guess that one could come up with examples where this approach would fail, but I haven't encountered them in real life yet.
Could one perhaps just add an option to skip symmetries that involve solving equations more complicated than linear ones? Or just do this by default?
In this case feynson will recognize less mappings, but at least the topology identification will always go through without any errors. Which is probably what most users care about more rather than having X instead X+1 unique topologies :)
So in the example you posted above all the equations are quadratic and unfactorizable. I though of just trying to solve the linear ones, and checking if the solution satisfies the quadratic ones too at the end, but in this example there are no linear ones to fall back to, and if all examples are like this, then my approach would yield no symmetries at all, at which point why even call Feynson?
My hope is that there must be some better way here, I mean these are just quadratic equations, we should be able to solve them.
Sorry, that example was indeed an MWE, here is the actual list of topologies we are getting
{{{k1^2+2*gkin*k1*meta*n*u0b,k1^2+2*gkin*k1*meta*n-2*gkin*meta^2*u0b-k1*meta*nb*u0b,k1^2+2*gkin*k1*meta*n*u0b-k1*meta*nb*u0b-2*gkin*meta^2*u0b^2},{k1^2,k1^2-2*gkin*k1*meta*n-2*gkin*meta^2*u0b+k1*meta*nb*u0b},{k1^2,-(k1*mqb*nb),k1^2-2*gkin*k1*meta*n*u0b+k1*meta*nb*u0b-2*gkin*meta^2*u0b^2},
{k1^2,-(k1*mqb*nb),k1^2-2*gkin*k1*meta*n-2*gkin*meta^2*u0b+k1*meta*nb*u0b},{k1^2+k1*meta*nb*u0b,k1^2+2*gkin*k1*meta*n,k1^2+2*gkin*k1*meta*n*u0b},{k1^2,k1^2+k1*meta*nb*u0b,k1^2+2*gkin*k1*meta*n},
{k1^2-k1*meta*nb*u0b,k1^2-2*gkin*k1*meta*n+2*gkin*k1*meta*n*u0b,k1^2+2*gkin*k1*meta*n*u0b-k1*meta*nb*u0b-2*gkin*meta^2*u0b^2},{k1^2,k1^2-2*gkin*k1*meta*n+2*gkin*k1*meta*n*u0b,k1^2+2*gkin*k1*meta*n*u0b-k1*meta*nb*u0b-2*gkin*meta^2*u0b^2},
{k1^2,k1^2-k1*meta*nb*u0b,k1^2+2*gkin*k1*meta*n*u0b-k1*meta*nb*u0b-2*gkin*meta^2*u0b^2},{k1^2,k1^2-k1*meta*nb*u0b,k1^2-2*gkin*k1*meta*n+2*gkin*k1*meta*n*u0b},{k1^2,k1*mqb*nb,k1^2+2*gkin*k1*meta*n*u0b-k1*meta*nb*u0b-2*gkin*meta^2*u0b^2},
{k1*mqb*nb,k1^2+2*gkin*k1*meta*n-2*gkin*k1*meta*n*u0b,k1^2+2*gkin*k1*meta*n-2*gkin*meta^2*u0b-k1*meta*nb*u0b},{k1^2,k1^2+2*gkin*k1*meta*n-2*gkin*k1*meta*n*u0b,k1^2+2*gkin*k1*meta*n-2*gkin*meta^2*u0b-k1*meta*nb*u0b},{k1^2,k1*mqb*nb,k1^2+2*gkin*k1*meta*n-2*gkin*meta^2*u0b-k1*meta*nb*u0b},
{k1*mqb*nb,k1^2+2*gkin*k1*meta*n*u0b,k1^2+2*gkin*k1*meta*n-2*gkin*meta^2*u0b-k1*meta*nb*u0b},{k1^2,k1^2+2*gkin*k1*meta*n-2*gkin*meta^2*u0b-k1*meta*nb*u0b,k1^2+2*gkin*k1*meta*n*u0b-k1*meta*nb*u0b-2*gkin*meta^2*u0b^2},{k1^2,k1^2+2*gkin*k1*meta*n*u0b-k1*meta*nb*u0b-2*gkin*meta^2*u0b^2},
{k1^2,k1^2+2*gkin*k1*meta*n*u0b,k1^2+2*gkin*k1*meta*n*u0b-k1*meta*nb*u0b-2*gkin*meta^2*u0b^2},{k1^2,k1^2+2*gkin*k1*meta*n*u0b,k1^2+2*gkin*k1*meta*n-2*gkin*meta^2*u0b-k1*meta*nb*u0b},{k1^2,k1*mqb*nb,k1^2+2*gkin*k1*meta*n*u0b-k1*meta*nb*u0b-2*gkin*meta^2*u0b^2},
{k1^2,k1*mqb*nb,k1^2+2*gkin*k1*meta*n-2*gkin*meta^2*u0b-k1*meta*nb*u0b},{k1^2,k1^2-k1*meta*nb*u0b,k1^2-2*gkin*k1*meta*n*u0b}},{k1},{{n^2,0},{nb^2,0},{n*nb,0}}}
With FeynCalc, using the naive method of dropping eikonal propagators from the system of equations I get 5 mappings
of the form k1->-k1
. (see attachment).
Hi Vitaly,
here's the first real issue we encountered when using feynson with linear propagators: applying symmetrize to
yields
As far as I can see the two topologies cannot be mapped onto each other, but the error message looks somewhat weird. Notice that switching the overall sign in the second propagator of the second family magically removes the error
giving