欢迎来到天天文库
浏览记录
ID:55631764
大小:17.00 KB
页数:2页
时间:2020-05-21
《matlab实验一:非线性方程求解-牛顿法.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验一:非线性方程求解程序1:二分法:symsfx;f=input('请输入f(x)=');A=input('请输入根的估计范围[a,b]=');e=input('请输入根的误差限e=');while(A(2)-A(1))>ec=(A(1)+A(2))/2;x=A(1);f1=eval(f);x=c;f2=eval(f);if(f1*f2)>0A(1)=c;elseA(2)=c;endendc=(A(1)+A(2))/2;fprintf('c=%.6fa=%.6fb=%.6f',c,A)用二分法计算方程:1.请
2、输入f(x)=sin(x)-x^2/2请输入根的估计范围[a,b]=[1,2]请输入根的误差限e=0.5e-005c=1.a=1.b=1.2.请输入f(x)=x^3-x-1请输入根的估计范围[a,b]=[1,1.5]请输入根的误差限e=0.5e-005c=1.a=1.b=1.程序2:newton法:symsfx;f=input('请输入f(x)=');df=diff(f);x0=input('请输入迭代初值x0=');e1=input('请输入奇异判断e1=');e2=input('请输入根的误差限e2=');N=inpu
3、t('请输入迭代次数限N=');k=1;while(k=Nfprintf('失败')end用newton法计算方程:1.请输入f(x)=x*exp(x)-1请输入迭代
4、初值x0=0.5请输入奇异判断e1=0.1e-010请输入根的误差限e2=0.5e-005请输入迭代次数限N=10x=0.迭代次数为:42.请输入f(x)=x^3-x-1请输入迭代初值x0=1请输入奇异判断e1=0.1e-010请输入根的误差限e2=0.5e-005请输入迭代次数限N=10x=1.迭代次数为:53.1:请输入f(x)=(x-1)^2*(2*x-1)请输入迭代初值x0=0.45请输入奇异判断e1=0.1e-010请输入根的误差限e2=0.5e-005请输入迭代次数限N=10x=0.迭代次数为:43.2:请输入
5、f(x)=(x-1)^2*(2*x-1)请输入迭代初值x0=0.65请输入奇异判断e1=0.1e-010请输入根的误差限e2=0.5e-005请输入迭代次数限N=10x=0.迭代次数为:93.3:请输入f(x)=(x-1)^2*(2*x-1)请输入迭代初值x0=0.55请输入奇异判断e1=0.1e-010请输入根的误差限e2=0.5e-005请输入迭代次数限N=10x=0.迭代次数为:4程序3:改进的newton法:symsfx;f=input('请输入f(x)=');df=diff(f);x0=input('请输入迭代初
6、值x0=');e1=input('请输入奇异判断e1=');e2=input('请输入根的误差限e2=');N=input('请输入迭代次数限N=');k=1;while(k7、ifk>=Nfprintf('失败')end用改进的newton法计算方程:1.请输入f(x)=(x-1)^2*(2*x-1)请输入迭代初值x0=0.55请输入奇异判断e1=0.1e-010请输入根的误差限e2=0.5e-005请输入迭代次数限N=10失败2.请输入f(x)=(x-1)^2*(2*x-1)请输入迭代初值x0=0.55请输入奇异判断e1=0.1e-010请输入根的误差限e2=0.5e-005请输入迭代次数限N=20失败3.请输入f(x)=(x-1)^2*(2*x-1)请输入迭代初值x0=0.55请输入奇异8、判断e1=0.1e-010请输入根的误差限e2=0.5e-005请输入迭代次数限N=100失败
7、ifk>=Nfprintf('失败')end用改进的newton法计算方程:1.请输入f(x)=(x-1)^2*(2*x-1)请输入迭代初值x0=0.55请输入奇异判断e1=0.1e-010请输入根的误差限e2=0.5e-005请输入迭代次数限N=10失败2.请输入f(x)=(x-1)^2*(2*x-1)请输入迭代初值x0=0.55请输入奇异判断e1=0.1e-010请输入根的误差限e2=0.5e-005请输入迭代次数限N=20失败3.请输入f(x)=(x-1)^2*(2*x-1)请输入迭代初值x0=0.55请输入奇异
8、判断e1=0.1e-010请输入根的误差限e2=0.5e-005请输入迭代次数限N=100失败
此文档下载收益归作者所有