用sypy计算多元函数的taylor级数

2024-06-09 18:48:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图用SymPy计算一个函数的泰勒级数,它依赖于三角函数sinchere),为了简化我的问题,我们可以假设我需要的函数泰勒级数是:

f(x1, x2) = sinc(x1) * sinc(x2)

我的问题是当导入数学硕士我经常会遇到这样的错误:

cannot create mpf from ...

我尝试过使用taylor-series近似或this other solution(数字1.),但它们似乎都失败了。例如,对于后面的备选方案,线路:

^{pr2}$

退货:

cannot create mpf from x

我还尝试过将函数定义为表达式和lambda函数。但似乎什么都不管用。在

任何帮助都将不胜感激。在


Tags: 函数fromhere错误create数学x1x2
1条回答
网友
1楼 · 发布于 2024-06-09 18:48:02

不能对符号SymPy对象使用mpmath函数。您需要象征性地定义sinc。在

一种方法是将它定义为一个Python函数,它返回等价的函数(这里sinsympy.sin):

def sinc(x):
    return sin(x)/x

或者,你可以为它编写自己的同调类。在

^{pr2}$

后者允许您编写sinc(x),它将被打印成这样,您还可以用它来定义自定义行为,比如派生的样子、系列的工作方式等等。这还允许您在0、oo等处定义正确的值。在

但是为了获取级数,只需使用sin(x)/x(即第一个解)就可以了,因为你的最终答案中无论如何都不会有sinc,而且series方法在像0这样的点求值时会正确地接受限制。在

相关问题 更多 >