#python #sympy
Вопрос:
Я пытаюсь найти обратное преобразование Лапласа уравнения:
X(s) = (s(s 2))/((s 2)(s 3)(s 4))*e^-2s.
import sympy
import numpy as np
sympy.init_printing()
s, t = sympy.symbols('s, t')
X = (((s*(s 1))/(s 2)*(s 3)*(s 4)))*(sympy.exp(-2*s))
parfrac = sympy.apart(X, full=True).doit()
def invL(X):
return sympy.inverse_laplace_transform(X, s, t)
print(invL(X))
Выше приведено то, что я пытался, и я продолжаю получать «NotImplementedError: многомерное разложение частичной дроби».
как мне избавиться от этой ошибки?
Комментарии:
1. Эта ссылка может помочь: github.com/sympy/sympy/issues/14763
2. Пожалуйста, опубликуйте код в виде текста, а не изображения. Мы хотим видеть это в самом вопросе и иметь возможность скопировать его.
3. Эта ошибка отображается, если вы не указали, какую переменную следует развернуть, например
apart(expr)
, bsapart(expr, s)
.4. Это работает для меня без
exp(-2*s)
термина. Включениеx=s
, изменяет ошибку.sympy
функции не гарантируют работу со всеми выражениями.