我有一個(gè)使用 numpy 的 poly1d 定義的多項(xiàng)式: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])然后我對這個(gè)多項(xiàng)式關(guān)于我稱為 的點(diǎn)進(jìn)行級數(shù)展開radMax = 0.80868373。以下是我進(jìn)行系列擴(kuò)展的方法:from sympy import series, Symbol, Polyx = Symbol('x')polyExpand = p(x).series(x,radMax,3)/(p(radMax)/0.0523772)這給了我想要的展開式,我想要二階項(xiàng)的系數(shù)。如果運(yùn)行上面的代碼,您將看到該系數(shù)為“0.2843162879664”。我想提取這個(gè)系數(shù)。
1 回答

森林海
TA貢獻(xiàn)2011條經(jīng)驗(yàn) 獲得超2個(gè)贊
如果您想按項(xiàng)處理系數(shù):
from sympy import sympify
print(polyExpand.as_coefficients_dict()[sympify(f"(x - {radMax}) ** 2")])
如果您想通過索引獲取系數(shù):
coeffs = list(polyExpand.as_coefficients_dict().values())
print(coeffs[2]) # order n = 2
這些將正確輸出-0.284316287966400。你忘記了負(fù)號。
添加回答
舉報(bào)
0/150
提交
取消