欢迎来到天天文库
浏览记录
ID:35252336
大小:40.00 KB
页数:4页
时间:2019-03-22
《计算方法第二章方程求根上机报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、计算方法与实习实验报告实验报告名称班级:学号:姓名:成绩:1实验目的1)通过对二分法与牛顿迭代法作编程练习与上级运算,进一步体会二分法与牛顿迭代法的不同特点。2)编写割线迭代法的程序,求非线性迭代法的解,并与牛顿迭代法。2实验内容用牛顿法和割线法求下列方程的根x^2-e^x=0;x*e^x-1=0;lgx+x-2=0;3实验步骤1)根据二分法和牛顿迭代法,割线法的算法编写相应的求根函数;2)将题中所给参数带入二分法函数,确定大致区间;3)用牛顿迭代法和割线法分别对方程进行求解;3程序设计牛顿迭代法x0=1.0;N=100;k=0;eps=5e-6;delta=1e-6;while(1)x1=
2、x0-fc1(x0)/fc2(x0);k=k+1;ifk>Ndisp('Newmethodfailed')计算方法与实习实验报告breakendif(abs(x1-x0)3、4、abs(fc1(x1))=delta)c=x1;x1=cutnext(x0,x1);x0=c;5、%x0x1µÝÍƵõ½x1x2ÈÔÈ»±£´æÔÚx0x1endk=k+1;ifk>Ndisp('Cutlinemethodfailed')break;endif(abs(x1-x0)6、7、abs(fc1(x1))8、)原函数functionfc1=fc1(x)fc1=x*exp(x)-1;end导数functionfc2=fc2(x)fc2=(x+1)*exp(x);end3)原函数functionfc1=fc1(x)fc1=log10(x)+x-2;end导函数functionfc2=fc2(x)fc2=1/x/log(10)+1;end4实验结果及分析1)牛顿法结果-0.7034722378割线法结果-0.70346742252)牛顿法结果0.5671435302割线法结果0.56714329043)牛顿法结果1.7553985566割线法结果1.7555794993牛顿迭代法由于设置delta=19、e-6,所以算出的误差e<1.0*10^-5;割线法由于设置delta=5e-8,所以误差e<1.0*10^-7;计算方法与实习实验报告5总结编程时由于将迭代的代码x0=x1放在if(abs(x1-x0)10、11、abs(fc1(x1))
3、
4、abs(fc1(x1))=delta)c=x1;x1=cutnext(x0,x1);x0=c;
5、%x0x1µÝÍƵõ½x1x2ÈÔÈ»±£´æÔÚx0x1endk=k+1;ifk>Ndisp('Cutlinemethodfailed')break;endif(abs(x1-x0)6、7、abs(fc1(x1))8、)原函数functionfc1=fc1(x)fc1=x*exp(x)-1;end导数functionfc2=fc2(x)fc2=(x+1)*exp(x);end3)原函数functionfc1=fc1(x)fc1=log10(x)+x-2;end导函数functionfc2=fc2(x)fc2=1/x/log(10)+1;end4实验结果及分析1)牛顿法结果-0.7034722378割线法结果-0.70346742252)牛顿法结果0.5671435302割线法结果0.56714329043)牛顿法结果1.7553985566割线法结果1.7555794993牛顿迭代法由于设置delta=19、e-6,所以算出的误差e<1.0*10^-5;割线法由于设置delta=5e-8,所以误差e<1.0*10^-7;计算方法与实习实验报告5总结编程时由于将迭代的代码x0=x1放在if(abs(x1-x0)10、11、abs(fc1(x1))
6、
7、abs(fc1(x1))8、)原函数functionfc1=fc1(x)fc1=x*exp(x)-1;end导数functionfc2=fc2(x)fc2=(x+1)*exp(x);end3)原函数functionfc1=fc1(x)fc1=log10(x)+x-2;end导函数functionfc2=fc2(x)fc2=1/x/log(10)+1;end4实验结果及分析1)牛顿法结果-0.7034722378割线法结果-0.70346742252)牛顿法结果0.5671435302割线法结果0.56714329043)牛顿法结果1.7553985566割线法结果1.7555794993牛顿迭代法由于设置delta=19、e-6,所以算出的误差e<1.0*10^-5;割线法由于设置delta=5e-8,所以误差e<1.0*10^-7;计算方法与实习实验报告5总结编程时由于将迭代的代码x0=x1放在if(abs(x1-x0)10、11、abs(fc1(x1))
8、)原函数functionfc1=fc1(x)fc1=x*exp(x)-1;end导数functionfc2=fc2(x)fc2=(x+1)*exp(x);end3)原函数functionfc1=fc1(x)fc1=log10(x)+x-2;end导函数functionfc2=fc2(x)fc2=1/x/log(10)+1;end4实验结果及分析1)牛顿法结果-0.7034722378割线法结果-0.70346742252)牛顿法结果0.5671435302割线法结果0.56714329043)牛顿法结果1.7553985566割线法结果1.7555794993牛顿迭代法由于设置delta=1
9、e-6,所以算出的误差e<1.0*10^-5;割线法由于设置delta=5e-8,所以误差e<1.0*10^-7;计算方法与实习实验报告5总结编程时由于将迭代的代码x0=x1放在if(abs(x1-x0)10、11、abs(fc1(x1))
10、
11、abs(fc1(x1))
此文档下载收益归作者所有