該怎麼在Mathematica中使用牛頓迭代法呢?

時間 2021-06-07 11:35:04

1樓:cvgmt

如果還是用 For,While,Do 這些過程式手法,那還是別用 Mathematica 了。因為不會有進步的。

下面是其中一種最基本的做法。

f[x_] = 2 x^2 + 5 x + 1;

NestList[# - f[#]/f'[#] &, 0., 20]

2樓:四零七

牛頓法有很多變種,這裡只用最基礎的牛頓法。要求解 ,基本步驟就是先假設乙個初值 ,迭代的下乙個值就是 ,直至收斂。這裡的收斂判斷條件,就先簡單的用乙個前後迭代的差小於 。

如果要用最基本的函式,那我假設Mathematica的自帶求導函式也不能用。那可以用最基本的數值求導來近似一階導。

newtonMethod

[func_

,init_

,dx_

:0.0001

,tol_

:10.^-6

]:=Module

[,While

[Abs[x

-x0]>

tol,=];

x]拿問題中的方程舉例,

func = 2 #^2 + 5 # + 1 &newtonMethod[func, 0, 10.^-3, 10.^-6]

(* -0.219224 *)

對比Mathematica的自帶求解器,結果一致Solve[func[x] == 0, x] // N(* , } *)

Mathematica或matlab怎麼求解含有復變數的方程?

這題其實有解析解 一般常規的代數方程用一些cas計算器模擬器更方便,比如Ti nspire cas的模擬器。使用csolve函式即可求解。其中 特別的,如果 紐澤西管風琴 Solve 0.1 2 Im Sqrt 10.9 I x x Reals,x 將常數改為精確的數就可以得到解析解。Solve 1...

用 Mathematica 怎麼進行根式分母有理化?

所以關鍵是找到分母所滿足的乙個有理係數多項式,例如使用以下命令 MinimalPolynomial Sqrt 2 Sqrt 3 Sqrt 5 x 得到 記為 這說明是方程的乙個根。由變形可得 於是可以將代入上式,獲得的有理表達 FullSimplify 960 x 352 x 3 40 x 5 x ...

Mathematica畫圖,怎麼畫下面的這兩個圖,謝謝大家了

Graphics Opacity 1 Thick Circle 15,Line Arrowheads Arrow Dashed Line Line Line Text Style A 20 Bold Text Style O 20 Bold Text Style C 20 Bold Text Sty...