You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The code generation for simple integrals with make_package and split=True fails.
Example:
frompySecDecimportmake_packageif__name__=="__main__":
make_package(
name='A30b',
integration_variables= ['z'],
prefactor='1',
regulators= ['eps'],
requested_orders= [0],
polynomials_to_decompose= ['(1-z)^(-1-eps)'],
split=True,
# Bug in symmetry finder in pySecDec v1.6.4use_iterative_sort=True, # works if set to Falseuse_light_Pak=False,
use_dreadnaut=False,
use_Pak=False,
)
Gives:
running "sum_package" for A30b
running "make_package" for "A30b_integral"
number of primary sectors before symmetry finding: 1
Traceback (most recent call last):
File "/Users/sj/Documents/repo/secdec-private/nodist_examples/marcoli/makepkg.py", line 5, in <module>
make_package(
File "/Users/sj/Documents/repo/secdec-private/pySecDec/make_package.py", line 375, in make_package
sum_package(
File "/Users/sj/Documents/repo/secdec-private/pySecDec/code_writer/sum_package.py", line 480, in sum_package
template_replacements = [_generate_one_term(
^^^^^^^^^^^^^^^^^^^^
File "/Users/sj/Documents/repo/secdec-private/pySecDec/code_writer/sum_package.py", line 480, in <listcomp>
template_replacements = [_generate_one_term(
^^^^^^^^^^^^^^^^^^^
File "/Users/sj/Documents/repo/secdec-private/pySecDec/code_writer/sum_package.py", line 171, in _generate_one_term
mp = make_package(**package_generator._asdict())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/sj/Documents/repo/secdec-private/pySecDec/code_writer/make_package.py", line 1988, in make_package
for primary_sector_index, primary_sector in enumerate(primary_sectors_to_consider):
File "/Users/sj/Documents/repo/secdec-private/pySecDec/code_writer/make_package.py", line 1856, in primary_decomposition_with_splitting
primary_sectors = _reduce_sectors_by_symmetries\
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/sj/Documents/repo/secdec-private/pySecDec/code_writer/make_package.py", line 1432, in _reduce_sectors_by_symmetries
sectors = decomposition.squash_symmetry_redundant_sectors_sort(sectors, iterative_sort, indices)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/sj/Documents/repo/secdec-private/pySecDec/decomposition/common.py", line 658, in squash_symmetry_redundant_sectors_sort
replaced_sectors = _remove_variables(sectors, indices)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/sj/Documents/repo/secdec-private/pySecDec/decomposition/common.py", line 575, in _remove_variables
output.append( Sector(new_cast, new_other, new_Jacobian) )
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/sj/Documents/repo/secdec-private/pySecDec/decomposition/common.py", line 53, in __init__
initial_monomial_factor = Polynomial([ [0]*self.number_of_variables ], [1], poly.polysymbols)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/sj/Documents/repo/secdec-private/pySecDec/algebra.py", line 381, in __init__
raise TypeError('All entries in `expolist` must be integer.')
TypeError: All entries in `expolist` must be integer.
The problem seems to be that split is implemented as a kind of primary decomposition and the symmetry finder ends up trying to (incorrectly) create a Sector that has the 1 variable z eliminated.
Disabling the symmetry finder gives reasonable looking results.
The text was updated successfully, but these errors were encountered:
Reported to me by: Matteo Marcoli
The code generation for simple integrals with
make_package
andsplit=True
fails.Example:
Gives:
The problem seems to be that
split
is implemented as a kind of primary decomposition and the symmetry finder ends up trying to (incorrectly) create aSector
that has the 1 variablez
eliminated.Disabling the symmetry finder gives reasonable looking results.
The text was updated successfully, but these errors were encountered: