用MATLAB的迭代法求解x 3 x 1 0在x0 1 5附

時間 2021-06-27 22:16:35

1樓:匿名使用者

%牛頓迭代法 解方程y=x.^3-x-1

x=1.5;

format long;

x1=x-func1_1(x)/func1_1_1(x);

if(abs(x1)<1.5)

delt=abs(x1-x);

else

delt=abs((x1-x)/x1);

endwhile(delt>1e-6|abs(func1_1(x))>1e-6)

x=x1; x1=x-func1_1(x)/func1_1_1(x);

if(abs(x1)<1.5)

delt=abs(x1-x);

else

delt=abs((x1-x)/x1);

endif func1_1(x1)==0

break

endend

disp('解方程y=x.^3-x-1,牛頓迭代法結果')x1編輯函式

function y=func1_1(x)y=x.^3-x-1;

function y=func1_1_1(x)y=3*x.^2-1

% 對分法

delta=10e-5;

a=1;

b=2;

fa=func2_1(a);

fb=func2_1(b);

n=1;

while(1)

if(fa*fb>0)

break;

endx=(a+b)/2;

fx=func2_1(x);

if(abs(fx)

break;

elseif(fa*fx<0)

b=x;fb=fx;

else

a=x;fa=fx;

endif(b-a

break;

endn=n+1;

enddisp('對分法結果');

x% 呼叫roots函式求解結果並作圖

x=linspace(-5,5);

y=x.^2-x-1;

plot(x,y)

p=[1 -1 -1];

disp('呼叫roots函式求解')

x=roots(p)

編輯函式

function y=func2_1(x)y=x.^2-x-1;

function y=func2_1_1(x)y=2*x-1

2樓:若德漢爾

x=1.5;

m=0.00000001

n=500000;

for k=1:n

y=x-(x^3-x-1)/(3*x^2-1);

if (abs(x-y))

break;

endx=y;

endx

x^3-x-1

k採用的是牛頓迭代法 x是解 x^3-x-1如果十分接近0證明解正確 k是迭代次數 可以通過調整m的值使精度繼續提高

用牛頓迭代法求方程x^3-3x-1=0在x0=2附近的根。 要求:給出程式和執行結果;計算結果保留4位有效數字

3樓:程國安罐罐

syms x

f=x^復3-3*x-1;

df=diff(f,x);

eps=1e-5;

x0=2;

cnt=0;

maxcnt=200; %最大迴圈次數制

while cnt止無限迴圈

x1=x0-subs(f,x,x0)/subs(df,x,x0); %去掉分號可以看到迭代過程.

if (abs(x1-x0)

break;

endx0=x1;

cnt=cnt+1;

endif cnt==maxcnt

disp '不收斂'

else

vpa(x1,8)end

急!!!!!哪位大哥會matlab 幫忙寫個程式,用牛頓迭代法求方程x^3-3*x-1=0在2附近的解

4樓:匿名使用者

^syms x

x0=2;

f=x^3-3*x-1;

eps=1e-6;

maxcnt=1000;

fx=diff(f,x);

x1=x0;

cnt=1;

while cnt<=maxcnt

x2=x1-subs(f/fx,x,x1);

if abs(x1-x2)數,迭代前,迭代後x1=x2;

cnt=cnt+1;

endsubs(f,x,x2)

5樓:06級王勇

#include

main()

while(fabs(f/fd)>1e-5);

printf("x=%.6f",x1);}

迭,疊的區別,「疊加」與「迭加」的區別

116貝貝愛 迭和疊的區別 意思不同 寫法不同 側重點不同一 意思不同 1 迭 1 更換 輪流。2 屢次。3 及 忙不迭。2 疊 1 一層加上一層 重複。2 摺疊 衣被 紙張等 3 姓。二 寫法不同 1 迭 2 疊 三 側重點不同 1 迭 指人。2 疊 指物。 公園乒乓 在重疊意義上是同意字。交替意...

matlab怎麼寫函式檔案,用matlab如何編寫一個函式檔案,實現 n

matlab的函式檔案是按下列的格式進行編寫的。具體的格式為function 輸出變數 函式名稱 輸入變數 例如 用matlab的程式編輯器,寫函式檔案 m函式eg2 1f.mfunction s f m s 0 for n 1 m s s 1 n n end然後,儲存為eg2 1f.m 然後在指令...

MATLAB是幹什麼用的軟體,MATLAB是做什麼用的?

數學軟體,數值計算平臺 matlab是做什麼用的?sap的用途實在是太多,它是目前最為 流行 的erp軟體,使用它可以說是與世界接軌。至於學習它有什麼好處,那就要分情況而論了!1 普通的應用操作 user 學了用處不大,因為各個公司的模式不一定一樣。此類非常好學,只要記得幾個命令就行。2 管理員 s...