У меня есть следующий код в python для вычисления множества Мандельброта.Он работает нормально, но когда я пытаюсь скомпилировать его с JIT, добавив @jit
декоратор перед функцией def, он больше не работает.Кто-нибудь может сказать мне, почему?Я был бы признателен, если бы вы не критиковали мои вычисления Мандельброта (полагаю, их можно было бы оптимизировать) и просто дайте мне знать, почему JIT не работает с этой функцией.Кстати, код отступает после определения.Это просто не выглядело так, когда я вставил его сюда.
runfile ('D: /python Programs / mandelbrot / mandelbrot.py ', wdir =' D: / python Programs / mandelbrot ') Traceback (последний вызов был последним):
File "", строка 1, в runfile (' D: /программы на python / mandelbrot / mandelbrot.py ', wdir =' D: / python Programs / mandelbrot ')
Файл "C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ spyder_kernels \ customize \ spydercustomize.py ", строка 786, в исполняемом файле исполняемого файла (имя файла, пространство имен)
Файл" C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ spyder_kernels \ customize \ spydercustomize.py ", строка 110,в execfile exec (compile (f.read (), filename, 'exec'), пространство имен)
Файл "D: / python Programs / mandelbrot / mandelbrot.py", строка 41, в mandelbrot_set = mandelbrot (-2.0,1.0, -1.5,1.5,500,500,50)
Файл "C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ dispatcher.py", строка 368, в _compile_for_args поднять e
Файл "C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ dispatcher.py", строка 325, в _compile_for_args возвращает self.compile (кортеж (argtypes))
Файл "C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ dispatcher.py", строка 653, в компиляции cres = self._compiler.compile (args, return_type)
Файл "C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ dispatcher.py", строка 83, в компиляции pipe_class = self.pipeline_class)
Файл "C: \ Users \ Matthew\ Anaconda3 \ lib \ site-packages \ numba \ compiler.py ", строка 873, в compile_extra, возвращать pipe.compile_extra (func)
Файл" C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages "\ numba \ compiler.py ", строка 367, в compile_extra возвращает self._compile_bytecode ()
Файл" C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ compiler.py ", строка804, в _compile_bytecode возвращает self._compile_core ()
Файл "C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ compiler.py", строка 791, в _compile_core res = pm.run (self.status)
Файл "C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ compiler.py", строка 253, в ходе выполнения поднять patched_exception
Файл "C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ compiler.py", строка 245, в стадии выполнения ()
Файл "C: \ Users \ Matthew\ Anaconda3 \ lib \ site-packages \ numba \ compiler.py ", строка 438, в stage_objectmode_frontend cres = self.frontend_looplift ()
Файл" C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages "\ numba \ compiler.py ", строка 428, в frontend_looplift поднял = кортеж (циклы), поднял_от = нет)
Файл" C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ compiler ".py ", строка 887, в compile_ir lifted_from = lifted_from)
Файл" C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ compiler.py ", строка 375, в compile_ir возвращает self._compile_ir ()
Файл "C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ compiler.py", строка 811, в _compile_ir возвращает self._compile_core ()
Файл "C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ compiler.py ", строка 791, в _compile_core res = pm.run (self.status)
Файл" C: \ Users \ Matthew \ Anaconda3\ lib \ site-packages \ numba \ compiler.py ", строка 253, в запускеповысить patched_exception
Файл
Строка "C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ compiler.py"
245, в бегах
этап ()
Файл
Строка "C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ compiler.py"
652, в stage_objectmode_backend
self._backend (lowerfn, objectmode = True)
Файл
Строка "C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ compiler.py"
628, в _backend
пониженный = lowerfn ()
Файл
Строка "C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ compiler.py"
601, в backend_object_mode
self.flags)
Файл
Строка "C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ compiler.py"
1018, в py_lowering_stage
lower.lower ()
Файл
Строка "C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ lowering.py"
173, в нижнем
self.lower_normal_function (self.fndesc)
Файл
Строка "C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ lowering.py"
214, в нижней_нормальной_функции
entry_block_tail = self.lower_function_body ()
Файл
Строка "C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ lowering.py"
239, в Lower_function_body
self.lower_block (блок) * +1066 *
Файл
Строка "C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ lowering.py"
254, в нижнем блоке
self.lower_inst (инст)
Файл "C: \ Users \ Matthew \ Anaconda3 \ lib \ contextlib.py", строка 130, в
выход
self.gen.throw (тип, значение, обратная связь)
Файл "C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ errors.py",
строка 585, в new_error_context
six.reraise (тип (newerr), newerr, tb)
Файл "C: \ Users \ Matthew \ Anaconda3 \ lib \ site-packages \ numba \ six.py",
линия 659, в ререйзе
повысить значение
LoweringError: iters
Файл "mandelbrot.py", строка 17: def
Мандельброт (Xmin, Xmax, Ymin, уты, ширина, высота, MaxIter):
для ix, перечислите (x):
points.append ([])
^