我試圖得到微分方程 y'=sin(x) 但我的微分方程將無法進(jìn)一步運(yùn)行,因?yàn)槲沂盏藉e(cuò)誤“無法將表達(dá)式轉(zhuǎn)換為浮點(diǎn)數(shù)”。如果我將 numpy 與 np.sin(x) 一起使用,則會(huì)收到另一個(gè)錯(cuò)誤“ufunc 的循環(huán)不支持沒有可調(diào)用 sin 方法的 Symbol 類型的參數(shù) 0”。這是代碼:import sympy as symfrom math import *x = sym.symbols('x')y = sym.Function('y')diffeq = sym.Eq(y(x).diff(x), sin(x))如果有人能告訴我哪里出錯(cuò)了,那將是一個(gè)很大的幫助,因?yàn)樗雌饋砗芎?jiǎn)單......
1 回答

喵喔喔
TA貢獻(xiàn)1735條經(jīng)驗(yàn) 獲得超5個(gè)贊
您打電話時(shí)sin()
提出了一個(gè)它不支持的論點(diǎn)。math.sin()
必須將數(shù)值作為其唯一參數(shù)。
我認(rèn)為要解決這個(gè)問題,您只需要傳遞函數(shù)的名稱而不是調(diào)用它:
diffeq = sym.Eq(y(x).diff(x), sin)
否則,您需要使用sym.sin
而不是math.sin
:
diffeq = sym.Eq(y(x).diff(x), sym.sin(x))
添加回答
舉報(bào)
0/150
提交
取消