有没有人知道是否有内置函数同意获得表单的多元系列扩展
f(x,y) = a + b*x + c*y + d*x**2 + e*x*y + f*y**2 + ...
即按所有变量的升序排列?
提前致谢.
最佳答案
简短的回答是,目前(sympy build 0.7.5),没有内置函数可以处理多变量序列扩展.
似乎只支持在一个变量中对多变量函数进行系列扩展.您可以在函数文档here中的_eval_nseries的docstring中看到这一点.如果这对您很重要,您可以对Issue Tracker发表评论或加入mailinglist.
所以,要清楚,这有效:
In [1]: import sympy as sp
In [2]: x,y = sp.symbols('x,y')
In [3]: g = sp.exp(-x*y)
In [4]: g
Out[4]: exp(-x*y)
In [5]: g.series(x,0)
Out[5]: 1 - x*y + x**2*y**2/2 - x**3*y**3/6 + x**4*y**4/24 - x**5*y**5/120 + O(x**6)
In [6]: g.series(y,0)
Out[6]: 1 - x*y + x**2*y**2/2 - x**3*y**3/6 + x**4*y**4/24 - x**5*y**5/120 + O(y**6)
但在以下任何一项中都没有您想要的功能:
In [7]: g.series((x,y),(0,0))
Out[7]: exp(-x*y)
In [8]: g.series((x,0),(y,0))
Out[8]: exp(-x*y)
In [9]: g.series(x,y,0)
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
dist-packages/sympy/core/expr.pyc in series(self,x,x0,n,dir,logx)
2401 return self
2402
-> 2403 if len(dir) != 1 or dir not in '+-':
2404 raise ValueError("Dir must be '+' or '-'")
2405
TypeError: object of type 'int' has no len()
In [10]: g.series(x,0)
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。