文档介绍:-
. z.
非线性方程的数值计算方法实验
【摘要】在利用数学工具研究社会现象和自然现象,或解决工程技术等问题时,很多问题都可以归结为非线性方程的求解问题,无论在理论研究方面还是在不成立,执行〔3〕。
〔3〕令p(k)=g(p(k-1)),err=|p(k)-p(k-1)|。
(4)判断err<tol是否成立,如成立,输出结果,如不成立,令k=k+1,跳转到〔2〕。
-
. z.
start
Input g,p0,tol;k=2
k>ma*1
Y
N
Let p(k)=g(p(k-1));err=|p(k)-p(k-1)|
k=k+1
err<to1
output
Y
N
output
end
令,简单画出与的图像,可令*=1,,。
图4. 与
当输入[k,p,err,P]=fi*pt(g,1,1e-12,100)
输出k =2 p =1 err =0
P =
1
1
通过图形我们知道不动点有2个,*=。
算法:
输入f,a,b,delta,ma*1,令k= 1。
f(a)=feval(f,a);f(b)=feval(f,b);k=1.
〔3〕判断f(a)*f(b)>0是否成立,假设不成立输出结果,假设成立执行步骤〔4〕。
〔4〕判断k>ma*1是否成立,假设成立输出结果,假设不成立执行步骤〔5〕。
〔5〕令d*=yb*(b-a)/(yb-ya),c=b-*,yc=feval(f,c).
(6) 判断yc=0是否成立,假设成立输出结果,假设不成立执行步骤〔7〕。
〔7〕判断yc*yb>0是否成立,假设成立,令b=c,yb=,令a=c,ya=yc.
( 8)令err=|b-a|.
(9)判断err<delta是否成立,假设成立,输出结果。假设不成立,令k=k+1,执行〔4〕。
-
. z.
start
流程图:
Input f,a,b,delta,ma*1,,
k=k+1
Y
f(a)*f(b)>0
N
output
Y
k>ma*1
N
d*=yb*(b-a)/(b-a)
c=b-*
yc=feval(f,c)
Y
yc=0
N
Y
N
yc*yb>0
b=c
yb=yc
a=c
ya=yc
err=|b-a|
N
err<delta
Y
output
end
当输入[c,err,yc]=regula(f,,,1e-10,100)
输出c =
err =--008
yc =-017
算法:
输入h,r,p0,p1,delta,ma*=1.
判断k>ma*1是否成立,假设成立,输出;假设不成立,执行〔3〕。
令p2=p1-feval(f,p1)*(p1-p0)/(fe