Python 使用辛代数的代数递归

Python 使用辛代数的代数递归,python,sympy,Python,Sympy,我想得到一个多项式的代数项,它可以用辛函数递归地定义 作为使用Maple的示例,Hermite多项式的定义如下 H(0,x):=1; H(1,x):=2*x; for n from 1 to 6 do H(n_1,x):= 2*x*H(n,x) - 2*n*H(n-1,x); print( simplify(%) ); end do: 这就产生了所需的代数项,然而,我在同位语中找不到做同样事情的方法。您能帮忙吗?就像在Maple中一样,您可以循环,但在这里使用函数似乎是合理的。

我想得到一个多项式的代数项,它可以用辛函数递归地定义

作为使用Maple的示例,Hermite多项式的定义如下

H(0,x):=1;
H(1,x):=2*x;
for n from 1 to 6 do
    H(n_1,x):= 2*x*H(n,x) - 2*n*H(n-1,x);
    print( simplify(%) );
end do:

这就产生了所需的代数项,然而,我在同位语中找不到做同样事情的方法。您能帮忙吗?

就像在Maple中一样,您可以循环,但在这里使用函数似乎是合理的。您可以使用标准python函数:

def coefs(x):
    m = Matrix([1, 2*x, 0 ,0, 0, 0])
    for k in range(3):
        m[k+2] = -2*(k+1)*m[k]+2*x*m[k+1]
        print(k)
    return m

当然,如果需要的话,可以在函数中进行简化。但是,由于这会导致表达式无法取消,我只会在脚本底部简化一次。

我很高兴,如果它解决了您的问题,请将其标记为解决方案。