作者ororolol (冰奶不加冰)
站內MATLAB
標題問題:newton method
時間Tue Nov 22 20:02:28 2011
板上大大,我想用牛頓法解以下的方程式,
但不知道code問題出在哪,不知道是不是錯在feval
請各位大大指教@@
syms x
f=(-1.75*x)-(x^2)+15
for n=1:10
x=1
x1=f-(feval(f,x)/feval(df,x))
err=abs(x1-x)
if err<10^-10
break
y=feval(f,x1)
end
end
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.23.249
※ 編輯: ororolol 來自: 140.112.23.249 (11/22 20:05)
1F:推 OldChuang:你的X=1應該是初始值吧~那要寫在外面 不然每次都重作 11/22 21:22
2F:→ Raymond0710:裡面要加個x = x1 11/22 23:30
3F:→ b210485:如果是feval出問題的話,試試把feval(f,x)換成subs(f,x) 11/23 00:46
4F:→ b210485:另外可能要檢查一下牛頓法計算的流程 11/23 00:48
5F:→ b210485:還有if...end裡面的break之後那一行應該執行不到吧? 11/23 00:49