2025年現(xiàn)代數(shù)值計算技術(shù)實(shí)驗(yàn)報告指南_第1頁
2025年現(xiàn)代數(shù)值計算技術(shù)實(shí)驗(yàn)報告指南_第2頁
2025年現(xiàn)代數(shù)值計算技術(shù)實(shí)驗(yàn)報告指南_第3頁
2025年現(xiàn)代數(shù)值計算技術(shù)實(shí)驗(yàn)報告指南_第4頁
2025年現(xiàn)代數(shù)值計算技術(shù)實(shí)驗(yàn)報告指南_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

河北工業(yè)大學(xué)班級:計1305班試驗(yàn)一,分析其誤差的變化。1、通過上機(jī)編程,復(fù)習(xí)鞏固此前所學(xué)程序設(shè)計語言;2、通過上機(jī)計算,理解舍入誤差所引起的數(shù)值不穩(wěn)定性。3、通過上機(jī)計算,理解運(yùn)算次序?qū)τ嬎愠晒挠绊?,從而盡量防止大數(shù)吃小數(shù)的現(xiàn)象。1)首先用float精度正序相加得到10000項的和;2)接著用float精度逆序相加得到10000項的和;3)然后用double精度正序相加得到10000項的和;4)再用double精度逆序相加得到10000項的和;5)根據(jù)成果,進(jìn)行比較分析問題。{d1=(float)(fabs(1.644d2=(float)(fabs(1.644printf("正向求和成果為%f\n,誤差為%f\nln",sl,d1);printf("反向求和成果為%f\n,誤差為%f\n\n",s2,d2);畫C:\畫C:\ProgranFiles\IicrosoftYisualStudio\IyProjects\ucha\Debug\ruch..,誤差為0.000109,誤差為0.080000正向求和誤差等于負(fù)向求和誤差作二次插值,并求x?=-2,x?=0,x?=2.75時的函數(shù)近似值2牛頓插值作五次插值,并求x?=0.46,x?=0.55,x?=0.60時的函數(shù)近似值.1、拉格朗日插值2、牛頓插值多項式(3)計算函數(shù)值N。(x)=f(x,)+f[x,,x?](x-x?)+...+f[x,floatjisuanmokuai(int,float,float[],float[J);{cout<<"題目:按下列數(shù)據(jù)"<<ecout<<"y:1.01.52.02.01cout<<"作二次插值,求x=-2,x=0,x=2.75時的函數(shù)近似值."<endl;for(intj=0:j<=n;j++){}2.牛頓floatquotient(intk,inti,floatf[][M],floatx[],floaty[D);floatnewton(floatX,intn,floatf[][M],{x[0]=0.30f;y[0]=1.04x[1]=0.42f;y[1]=1.08x[2]=0.50f;y[2]=1.11x[3]=0.58f;y[3]=1.15x[4]=0.66f;y[4]=1.19x[5]=0.72f;y[5]=1.23printf("x:0.300.420.500.580.660.72\n"printf("y:1.044031.084621.118031.156031.198171.23223\n"N[0]=newton(0.46f,5,f,x,y);N[1]=newton(0.55f,5,f,x,y);N[2]=newton(0.60f,5,f,x,y);printf("x=0.46時函數(shù)的近似值為%f\n",N[0]);printf("x=0.55時函數(shù)的近似值為%f\n",N[1]);printf("x=0.60時函數(shù)的近似值為%f\n",N[2]);floatw(floatX,intn,floatx[])floatquotient(intk,inti,floatf[][M],floatx[],floaty[D)f[k][i]=(quotient(k-1,i,f,x,y)-quotient(k-1,i-1,f,x,y)(x[floatnewton(floatX,intn,floatf[][MN=f[0][0];N=N+w(X,i,x)*quotient(i,i,f,x,y);}x:-30y:1.04403,1.084621.118031.156031.1981?1.23y:1.04403,1.084621.118031.156031.1981?1.23試驗(yàn)三斷精度。通過實(shí)際計算來真實(shí)體會復(fù)合梯形公式和復(fù)合辛普森公式兩種數(shù)值求積措施的精確環(huán)節(jié)一:確定函數(shù)的區(qū)間為【a,b】,并確定其節(jié)點(diǎn)的個數(shù),算出每個小區(qū)間的步長h;環(huán)節(jié)二:根據(jù)確定的h,代入復(fù)合梯形公式,算出其對應(yīng)的成果。環(huán)節(jié)一:確定函數(shù)的區(qū)間為【a,b】,并確定其節(jié)點(diǎn)的個數(shù),算出每個步長h;{floatTn,Sn,d1,d2,a=0,b=0floatx[1000],y[1000],z[1000{{y[i]=(float)(sin(x[i])/x[}Tn=(float)(1.0+sin(1.0)/1.0+2*aprintf("復(fù)化梯形輸出:%f\n",Tn);printf("將復(fù)化辛卜生區(qū)間劃分為:"){z[k+1]=float(1.0/m*z[k+1/2]=float(z[k]+z[kw[k]=(float)(sin(z[k])/z[w[k+1/2]=(float)(sin(z[k+1/2])/(z[k]+z[k+1])Sn=(float)(1.0+2*b+4*c+sin(1.{dl=(float)(fabs(0.9460d2=(float)(fabs(0.9460printf("復(fù)化梯形誤差:%f\n",d1);printf("復(fù)化梯形求法精度低于復(fù)化辛卜生求法\n");printf("復(fù)化梯形求法精度等于復(fù)化辛卜生求法\n");;printf("復(fù)化梯形求法精度高于復(fù)化辛卜生求法\n");}C:\ProgranFiles\IicrosoftYisualStudio\IyProjects\3\Debug\3復(fù)化梯形區(qū)間劃分:10復(fù)化梯形輸出:0.945832將復(fù)化辛卜生區(qū)間劃分為:5復(fù)化辛上生輸出:復(fù)化辛上生輸出:0.741290復(fù)化梯形誤差:0.000251復(fù)化辛卜生誤差:0.204293復(fù)化梯形求法精度高于復(fù)化辛卜生求法__用改善歐拉措施解初值問題y?=x+y;y(0)=1。0<x<1,取步長h=0.1計算,并與1)熟悉求解常微分方程初值問題的有關(guān)措施和理論,重要是改善歐拉措施。2)會編制上述措施的計算程序。3)針對實(shí)習(xí)題編制程序,并上機(jī)計算其所需要的成果。4)通過對多種求解措施的計算實(shí)習(xí),體會多種解法的功能、優(yōu)缺陷及合用場所,會選{printf("/**********試驗(yàn)四:\n用改善歐拉措施解初值問題y'=x+y;y(O)=1.0<x<1,取步長h=0.1計算,\n并與精確值y=-x-1-2ex相比較\n\n");printf("\t\txn\t\tyn\t\ty(xn)\n");yn=0.5*(yp(xn,yn,h)+yc(xn+h,yn,hprintf("%20f%20f%20f\n",xn,yn,yxn}doubleyp(doublex,do{doubleyc(doublex,do{{return-x-1.0-2.0*exp(**********實(shí)驗(yàn)四:并與準(zhǔn)確值y=-x-1-2ex相比較搜狗拼音半:分別用下列措施求f(x)=x3-3x-1=0在xo=2附近的根。根的精確值為x*=1.87938524...,規(guī)定精確到四位有效數(shù)字,并對比多種算法的計算量。(1)二分法;(2)簡樸迭代法;(3)牛頓迭代法1、通過對二分法和牛頓迭代法作編程練習(xí)和上機(jī)運(yùn)算,深入體會它們在方程求根2、比較兩者的計算速度和計算精度。二二分計算f(a)在區(qū)間中點(diǎn)(a+b)/2處的值f[(a+b)/2]。環(huán)節(jié)三判斷若替代b,否則替代a。反復(fù)執(zhí)行環(huán)節(jié)二和環(huán)節(jié)三,直到區(qū)間[a,b]的長度不不小于容許誤差,此時的中點(diǎn)即為所求。為顧客輸入的精度),則以x1替代x0繼續(xù)迭代;當(dāng)|x1-x0|≤e時終止計算,取x1作為所求的成果。3、牛頓迭代法給定初值xo,ε為根的容許誤差,η為|f(x)|的容許誤差,N為迭代次數(shù)的容許值。(1)假如f'(x)=0或迭代次數(shù)不小于N,則算法失敗,結(jié)束;否則執(zhí)行(2)。(3)若|x?-x|<ε或|f(x:|<n,則輸出x?,程序結(jié)束;否則執(zhí)行(4)。(4)令x?=x?,轉(zhuǎn)向(1)。{cout<<"請輸入f(x)的有根區(qū)間[a,b]的下限和上限{if(fz==0){{printf("%f\n",(a+b)/if(fz*fl<0)}}}floatjisuan(floatx){}2、簡樸迭代法{cout<<"簡樸迭代法求解近似根為:"<<xl<<endl<<"迭代次數(shù)}3、牛頓迭代法]}cout<<"牛頓迭代法求解近似根為:"<<xl<<endl<<"迭代次數(shù)}五、運(yùn)行成果請輸入f(x>的有根區(qū)間[a,bj的下限和上限:日1第2個分點(diǎn)為:0.750000第3個分點(diǎn)為:0.875000第4個分點(diǎn)為:0.937500C:\ProgranFiles\IicrosoftVisualStudio\IyP請輸入允許誤差:0.0005國國C:\ProgranFiles\Iicrosoft六、對算法的理解與感悟分別用高斯列主元消去法和直接三角分解法(LU分解)求方程組的解系數(shù)矩陣:10787常向量:10精確解為:(-60,102,-27,16)1)熟悉求解線性方程組的有關(guān)理論和措施;2)會編制列主元消去法、LU分解法、雅可比及高斯-塞德爾迭代法的程序;3)通過實(shí)際計算,深入理解多種措施的優(yōu)缺陷,選擇合適的數(shù)值措施。1、列主元高斯消去法算法將方程用增廣矩陣[A|b]=(a)nx(n+1)表達(dá)1)消元過程對k=1,2,…,n-1①選主元,找ik∈{k,k+1,…,n}使得a→ajj=k,---,n+1④消元,對i=k+1,---,n計算lk=a/ak對j=l+1,---,n+1計算b.對i=k+1,k+2,…,n計注:由于計算u的公式與計算y的公式形式上一樣,故可直接對增廣矩陣四、源程序{doublea[4][4]={10,7,8,7,7,5,6,5,8,6,10,9,7,5,9,10};doubleb[5]={10,8,6,7},x[4]={0},m,1[4][4],u[4][4],t=0printf("矩陣為:\n");printf("%.2lf\t",a[i][jprintf("選擇措施(1:高斯列主元消去法2:LU分解法3:結(jié)束):\n""?");while(choice!=3){{}{{}}printf("\n方程解為:");printf("%.2lf",x[i]);}{{}{}printf("%.2lf",x[i]);}printf("\n\n選擇措施(1:高斯列主元消去法2:LU分解法3:結(jié)束):\n""?");}五、運(yùn)行成果

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論