如何解决用sympy计算多变量限制
如何计算 sympy
中的多变量限制?
我正在尝试找到以下等式的极限
exp = (x**2-64)*cos(1/(x-8)**2+(y-8)**2)
因为 x 和 y 趋于 8。
我的代码如下:
x,y = symbols("x y")
exp = (x**2-64)*cos(1/(x-8)**2+(y-8)**2)
exp.subs(x,8).subs(y,8)
Sympy
正在返回 0
解决方法
如果要计算限制,应使用 limit
而不是 subs
。
In [42]: (sin(x)/x).subs(x,0)
Out[42]: nan
In [43]: (sin(x)/x).limit(x,0)
Out[43]: 1
请注意,多变量限制通常没有明确定义。您需要指定要采用限制的顺序或以其他方式在 x
和 y
之间提供某种关系,因为限制取决于 x
和 y
如何接近 {{ 1}} 当你采取限制。这在像 8
这样的情况下特别重要,它在极限处给出了一个基本的奇点。
cos(1/x**2)
最后的结果是由于
In [44]: exp.limit(y,8).limit(x,8)
Out[44]: <-128,128>
In [45]: exp.limit(x,8).limit(y,8)
Out[45]: 0
对于除 In [64]: exp.limit(x,8)
Out[64]: 0
之外的任何 y
值都是有效结果。当 8
等于 x
时,以相反的顺序取限制为您提供 y
限制的结果。
您想要哪一个,或者您是否真的想要其他东西取决于您的申请,因为所提出的问题没有唯一的答案。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。