用python的庫 scipy尋根函數 解方程組求根

1.標量函數

x+2cos(x)=0x+2cos(x) =0

程序如下

import numpy as np
from scipy.optimize import root
def func(x):
    return x + 2 * np.cos(x)
sol = root(func, 0.3)
print(sol.x)
結果:[-1.02986653]

2.一組非線性方程

x0cos(x1)=4x_{0}cos(x_{1})=4x0+x1+x2=4x_{0}+x_{1}+x_{2}=4x1+x2=2x_{1}+x_{2}=2

程序如下:

import numpy as np
from scipy.optimize import root
def func(x):
    return x[0] * np.cos(x[1]) - 4, \
           x[0] + x[1] + x[2] - 4, \
           x[1] + x[2] - 2
sol = root(func, [1, 2, 1])
print(sol.x)
 結果 :[-1.97014577  3.16004914  0.82227607]
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章