Я пытаюсь реализовать вложенное суммирование. Для удобства чтения я использую Sympy. Теперь я нашел тупик. Последовательность кода вычисляет элементы матрицы F_np. В настоящее время для простоты f_np остается нулевым. Позже суммированные значения интегрируются. Следовательно, вложенные суммы необходимо вычислять явно, а не сохранять в виде алгебраических обозначений. Sympy всегда сохраняет алгебраическую запись при вызове doit().
Например, F_np[0,1].doit() возвращает следующее значение вместо 0.

Поскольку l может работать между 0 и 0, он должен оставаться 0. Поскольку m должен быть нулем, а также 0. Поэтому в этом случае мы вызываем сумма записи [0,0], которая также должна быть равна нулю.
импортировать numpy как np из импорта Sympy. Матрица, символы, сумма, мин, макс. l=symbols('l',integer=True) m=symbols('m',integer=True) j=symbols('j',integer=True) k_limit=2 р=2 п=2 f_np=Matrix(np.zeros([k_limit,k_limit])) F_np=Матрица(np.zeros([k_limit,k_limit])) для n в диапазоне (0,k_limit): для p в диапазоне (0,k_limit): F_np[n,p]=Сумма( Сумма( Сумма( f_np[м,p-j-1] ,(j,l,Min(p-1-m,p-1)) ) ,(m,Max(0,n-l-1),p-1-l) ) ,(л,0,р-1) )