資源描述:
《現(xiàn)代數(shù)值計算上機習題答案》由會員上傳分享,免費在線閱讀,更多相關內容在教育資源-天天文庫。
1、上海電力學院數(shù)值計算方法上機實習報告院 系:電氣工程學院專業(yè)年級:電力系統(tǒng)及其自動化學生姓名: 楊建 學號:ys1310301074指導教師: 黃建雄 2013年12月23日數(shù)值計算方法上機實習題1.設,(1)由遞推公式,從的幾個近似值出發(fā),計算;(2)粗糙估計,用,計算;(3)分析結果的可靠性及產(chǎn)生此現(xiàn)象的原因(重點分析原因)。%上機習題1%(1)I=0.182;forn=1:20I=(-5)*I+1/n;endfprintf('I20的值是%e',I);%(2)I=0.0087;forn=1:20I=(-1/5)*I+1/(5*n);e
2、ndfprintf('I0的值是%f',I);3)現(xiàn)象產(chǎn)生的原因:假設Sn的真值為Sn*,誤差為εn,即εn=Sn*-Sn對于真值,我們也有關系式Sn*+5Sn-1*=1n綜合兩個遞推公式有εn=-5εn-1這就意味著哪怕開始只有一點點誤差,只要n足夠大,按照這種每計算一步誤差增長5倍的方式,所得結果總是不可信的。因此整個算法是不穩(wěn)定的。對于第二種方法εn=-15εn-1誤差會以每計算一步縮小到1/5的方式進行,所以以這種方法計算的結果是可靠的,整個算法是穩(wěn)定的。2.求方程的近似根,要求,并比較計算量。(1)在[0,1]上用二分法;(2)取初值,并用迭代
3、;(3)加速迭代的結果;(4)取初值,并用牛頓迭代法;(5)分析絕對誤差。%(1)在[0,1]上用二分法;a=0;b=1.0;ci=0;whileabs(b-a)>5*1e-4c=(b+a)/2;ci=ci+1;ifexp(c)+10*c-2>0b=c;elsea=c;endendfprintf('二分法求得c的值是%ft',c);fprintf('迭代次數(shù)是%d',ci);%(2)不動點迭代法,x=0;a=1;ci=0;whileabs(x-a)>5*1e-4a=x;x=(2-exp(x))/10;ci=ci+1;endfprintf('不動點迭代求
4、得x的值是%ft',x);fprintf('迭代次數(shù)是%d',ci);%(3)艾特肯加速迭代x=0;a=0;b=1;ci=0;whileabs(b-a)>5*1e-4a=x;y=exp(x)+10*x-2;z=exp(y)+10*y-2;x=x-(y-x)^2/(z-2*y+x);b=x;ci=ci+1;endfprintf('艾特肯加速迭代求得x的值是%ft',x);fprintf('迭代次數(shù)是%d',ci);%(4)用牛頓迭代法x=0;a=0;b=1;ci=0;whileabs(b-a)>5*1e-4a=x;x=x-(exp(x)+10*x-
5、2)/(exp(x)+10);b=x;ci=ci+1;endfprintf('牛頓迭代法求得x的值是%ft',x);fprintf('迭代次數(shù)是%d',ci);%(5)分析絕對誤差solve('exp(x)+10*x-2=0');fprintf('x的真值是%.8f',x);運行結果:二分法求得c的值是0.090332迭代次數(shù)是11絕對為誤差為0.000193不動點迭代求得x的值是0.090513迭代次數(shù)是4絕對為誤差為0.000012艾特肯加速迭代求得x的值是0.099488迭代次數(shù)是3絕對為誤差為0.008963牛頓迭代法求得x的值是0.09052
6、5迭代次數(shù)是2絕對為誤差為0.000000x的真值是0.090525>>分析可知加速迭代絕對誤差最大,二分法次之,牛頓法和不動點法迭代效果最好。3.鋼水包使用次數(shù)多以后,鋼包的容積增大,數(shù)據(jù)如下:x23456789y6.428.29.589.59.7109.939.991011121314151610.4910.5910.6010.810.610.910.76試從中找出使用次數(shù)和容積之間的關系,計算均方差。(注:增速減少,用何種模型)解:設y=f(x)具有指數(shù)形式(a>0,b<0)。對此式兩邊取對數(shù),得。記A=lna,B=b,并引入新變量z=lny,t=1/
7、x。引入新變量后的數(shù)據(jù)表如下x23456789t=1/x0.50000.33330.25000.20000.16670.14290.12500.1111z=lny1.85942.10412.25972.25132.27212.30262.29562.3016101112131415160.10000.09090.08330.07690.07140.06670.06252.35042.35992.36092.37952.36092.38882.3758程序:t=[0.50000.33330.25000.20000.16670.14290.12500.11110
8、.10000.09090.08330.07690.0