иногда ядро ​​умирает при запуске python кода с numpy и gmpy2 - PullRequest
0 голосов
/ 23 марта 2020

Я хотел использовать gmpy2 и хотел посмотреть, как он будет взаимодействовать с numpy, поэтому я возился и запускал этот код несколько раз.

import numpy as np
import gmpy2 as mp
mp.get_context().precision = 200
a = np.empty(shape = 100,dtype = object)
for x in range(len(a)):
    a[x] = mp.mpfr(np.random.random_sample())
    a[x] *= np.pi
    a[0] *= a[x]
print(a[0])
a[0] = a[0] // 1
a[0] = int(a[0])
print(a[0])

В большинстве случаев это ведет себя хорошо , но иногда это вызывает проблемы, на Jupyter ноутбуке иногда ядро ​​умирает, когда я запускаю этот код, на Jupyter lab происходит то же самое. На Spyder я получаю это:

An error occurred while starting the kernel
 ..\..\src\get_str.c:98: GNU MP assertion failed: f <= 0

Может кто-нибудь, пожалуйста, скажите мне, что происходит, и как я могу избежать / исправить эту проблему.

Мое окружение:

  • Python 3.7
  • JupyterLab 1.2.6
  • Блокнот Jupyter 6.0.3
  • Spyder 4.1.1
  • numpy 1.18 .1
  • gmpy2 2.0.8
  • Windows 10
...