为了账号安全,请及时绑定邮箱和手机立即绑定

从 Sympy 中的级数展开中获取 n 阶系数

从 Sympy 中的级数展开中获取 n 阶系数

胡说叔叔 2024-01-15 17:15:49
我有一个使用 numpy 的 poly1d 定义的多项式:import numpy as npp = np.poly1d([-1.37970733e+07,  8.02055768e+07, -1.98442743e+08,  2.70981281e+08,       -2.20611918e+08,  1.07019785e+08, -2.85873914e+07,  3.24251782e+06])然后我对这个多项式关于我称为 的点进行级数展开radMax = 0.80868373。以下是我进行系列扩展的方法:from sympy import series, Symbol, Polyx = Symbol('x')polyExpand = p(x).series(x,radMax,3)/(p(radMax)/0.0523772)这给了我想要的展开式,我想要二阶项的系数。如果运行上面的代码,您将看到该系数为“0.2843162879664”。我想提取这个系数。
查看完整描述

1 回答

?
森林海

TA贡献2011条经验 获得超2个赞

如果您想按项处理系数:


from sympy import sympify

print(polyExpand.as_coefficients_dict()[sympify(f"(x - {radMax}) ** 2")])

如果您想通过索引获取系数:


coeffs = list(polyExpand.as_coefficients_dict().values())

print(coeffs[2]) # order n = 2

这些将正确输出-0.284316287966400。你忘记了负号。


查看完整回答
反对 回复 2024-01-15
  • 1 回答
  • 0 关注
  • 114 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信