gudrunhe/secdec

enforce_complex does not work anymore?

Opened this issue · 4 comments

Hi,

I wanted to ask if the enforce_complex=False functionality is obsolete in the newer/newest versions.
With version 1.4.x if I set it to False, it will not do the imaginary part of the integration (with Vegas).
Whereas, in the 1.5.x version, it seems like whether you set it to True/False, it always does the imaginary part of the integration, although in the integrand there is no such imaginary part.
Is this functionality doing what it should do?

PS. The imaginary integration is fast of course as there is nothing to integrate and prints a 0 (x e-19 I) (still it is using computing resources).

Kind regards,
GD

vsht commented

Hi Goutam,

I think that the option that works in newer pySecDec versions is called contour_deformation. Setting it to False effectively
disables the calculation of the imaginary part.

Cf. also here

Cheers,
Vladyslav

Hi Vlad,

Thanks for the hint. I found contour_deformation_polynomial=None instead.
However, this does not stop it.

Hi Goutam,

I can confirm that the flag enforce_complex is not working as intendended. This should only have a minor impact on the integration time, but we will try to fix this.

spj101 commented

@KernerM is this resolved in v1.6 or still todo?