版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、本科實(shí)驗(yàn)報(bào)告課程名稱(chēng): 計(jì)算機(jī)數(shù)值方法 實(shí)驗(yàn)項(xiàng)目: 方程求根、線(xiàn)性方程組的直接解法、 線(xiàn)性方程組的迭代解法、代數(shù)插值和最小二乘擬合多項(xiàng)式 實(shí)驗(yàn)地點(diǎn): 行 勉 樓 專(zhuān)業(yè)班級(jí): * 學(xué)號(hào): * 學(xué)生姓名: * 指導(dǎo)教師: 李 誌 , 崔 冬 華 2016年 4 月 8 日學(xué)生姓名實(shí)驗(yàn)成績(jī)實(shí)驗(yàn)名稱(chēng) 實(shí)驗(yàn)一 方程求根實(shí)驗(yàn)內(nèi)容和要求 熟悉使用二分法、迭代法、牛頓法、割線(xiàn)法等方法對(duì)給定的方程進(jìn)行根的求解。選擇上述方法中的兩種方法求方程:f(x)=x3+4x2-10=0在1,2內(nèi)的一個(gè)實(shí)根,且要求滿(mǎn)足精度|x*-xn|<0.5×10-5(1)了解非線(xiàn)性方程求根的常見(jiàn)方法,如二分法、牛頓法、割
2、線(xiàn)法。(2)加深對(duì)方程求根方法的認(rèn)識(shí),掌握算法。(3)會(huì)進(jìn)行誤差分析,并能對(duì)不同方法進(jìn)行比較。實(shí)驗(yàn)原理1. 二分法:如果要求已知函數(shù) f(x) = 0 的根 (x 的解),那先要找出一個(gè)區(qū)間 a, b,使得f(a)與f(b)異號(hào)。根據(jù)介值定理,這個(gè)區(qū)間內(nèi)一定包含著方程式的根。求該區(qū)間的中點(diǎn)m=(a+b)/2,并找出 f(m) 的值。若 f(m) 與 f(a) 正負(fù)號(hào)相同,則取 m, b 為新的區(qū)間, 否則取 a, m。重復(fù)第3步和第4步,直到得到理想的精確度為止。2. 割線(xiàn)法是利用牛頓迭代法的思想,在根的某個(gè)領(lǐng)域內(nèi),函數(shù)有直至二階的連續(xù)導(dǎo)數(shù),并且不等于0,則在領(lǐng)域內(nèi)選取初值x0,x1,迭代均收
3、斂。(1) 在區(qū)間m ,n內(nèi)輸入初值x0,x1.(2) 計(jì)算x2。x2=x1-f(x1)*(x1-x0)/(f(x1)-f(x0)(3) x0=x1,x1=x2(4) 判斷是否達(dá)到精度,若是輸出x1,若否 執(zhí)行(2)主要儀器設(shè)備HP計(jì)算機(jī)實(shí)驗(yàn)記錄 1.二分法 / 方程求根(二分法).cpp : 定義控制臺(tái)應(yīng)用程序的入口點(diǎn)。/#include "stdafx.h"#include"iostream"using namespace std;class Textpublic: float x, y, a, b, c, n = 0;void Getab()cou
4、t << "請(qǐng)輸入計(jì)算區(qū)間:(以空格隔開(kāi))" << endl;cin >> a >> b;float GetY(float x)y = x*x*x + 4 * x*x - 10;return y;float Calculate(float a,float b)c = (a + b) / 2;n+;if (GetY(c) = 0 | (b - a) / 2) < 0.000005) cout << c <<"為方程的解"<< endl; return 0;if (Ge
5、tY(a)*GetY(c) < 0)return Calculate(a,c); if (GetY(c)*GetY(b)< 0) return Calculate(c,b);int main()cout << "方程組為:f(x)=x3+4x2-10=0" << endl;float a, b;Text text;text.Getab();a = text.a;b = text.b;text.Calculate(a, b); return 0; 2.割線(xiàn)法:/ 方程求根(割線(xiàn)法).cpp : 定義控制臺(tái)應(yīng)用程序的入口點(diǎn)。/#include
6、 "stdafx.h"#include"iostream"using namespace std;class Apublic:float x0,x1,y;float GetY(float x)y= x*x*x+4*x*x-10;return y;void GetNumber()cout<<"請(qǐng)輸入兩個(gè)初始近似值:(以空格隔開(kāi))" << endl; cin >> x0;cin >> x1;void Calculate(float x0,float x1)float x2;x2 = x1 -
7、 (GetY(x1) / (GetY(x1) - GetY(x0)*(x1 - x0);if (x2=x1)cout <<x2<<"為方程的解" << endl;elsecout << x2 << endl;return Calculate(x1, x2);int main()cout << "方程組為:f(x)=x3+4x2-10=0" << endl;float a, b;A text;text.GetNumber();a = text.x0;b = text.x1;
8、text.Calculate(a,b); return 0;心得體會(huì)使用不同的方法,可以不同程度的求得方程的解,通過(guò)二分法計(jì)算的程序?qū)崿F(xiàn)更加了解二分法的特點(diǎn),二分法過(guò)程簡(jiǎn)單,程序容易實(shí)現(xiàn),但該方法收斂比較慢一般用于求根的初始近似值,不同的方法速度不同。面對(duì)一個(gè)復(fù)雜的問(wèn)題,要學(xué)會(huì)簡(jiǎn)化處理步驟,分步驟一點(diǎn)一點(diǎn)的循序處理,只有這樣,才能高效的解決一個(gè)復(fù)雜問(wèn)題。實(shí)驗(yàn)名稱(chēng) 實(shí)驗(yàn)二 線(xiàn)性方程組的直接求解實(shí)驗(yàn)內(nèi)容和要求合理選擇利用Gauss消元法、主元素消元法、LU分解法、追趕法求解下列方程組:(1)了解線(xiàn)性方程組常見(jiàn)的直接解法,如Guass消元法、LU分解法、追趕法。(2)加深對(duì)線(xiàn)性方程組求解方法的認(rèn)識(shí),
9、掌握算法。(3)會(huì)進(jìn)行誤差分析,并能對(duì)不同方法進(jìn)行比較。實(shí)驗(yàn)原理1. 高斯分解法: 將原方程組化為三角形方陣的方程組:lik=aik/akk aij= aij- lik* akj k=1,2,n-1 i=k+1,k+2, ,n j=k+1,k+2, ,n+1由回代過(guò)程求得原方程組的解: xn= ann+1/ ann xk=( akn+1-akj xj)/ akk (k=n-1,n-2, ,2,1)2. LU分解法:將系數(shù)矩陣A轉(zhuǎn)化為A=L*U, L為單位下三角矩陣,U為普通上三角矩陣,然后通過(guò)解方程組l*y=b,u*x=y,來(lái)求解x.主要儀器設(shè)備HP計(jì)算機(jī)實(shí)驗(yàn)記錄1.高斯消元法:#includ
10、e "stdio.h"#include "math.h"#include <stdio.h>double a56,a056;double l5,tmp;void Exchange(int i) int j,l,k; double max=a0ii,temp; j=i; for(k=i;k<=3;k+) if(a0ki>max) max=a0ki; j=k; for(l=i;l<=4;l+) temp=a0il; a0il=a0jl; a0jl=temp; for(i=1;i<=3;i+)for(j=1;j<=4;
11、j+)aij=a0ij; void displayA() int i,j;printf("n");for(j=1;j<=3;j+)for(i=1;i<=4;i+)printf("%lf ",aji);printf("n");void main()int i,j,k; for(i=1;i<=3;i+)for(j=1;j<=4;j+) scanf("%lf",&aij);a0ij=aij;displayA(); printf("列主元素消元法如下");/消元過(guò)程k=1
12、;doExchange(k); displayA(); for(i=k+1;i<=3;i+)li=a0ik/a0kk;printf("l%i%i=%lf",i,k,li);for(j=k;j<=4;j+)aij=a0ij-li*a0kj;displayA();k+;if(k=3) break;for(j=1;j<=3;j+)for(i=1;i<=4;i+) a0ji=aji;while(1);/回代過(guò)程l3=a34/a33;for(k=3;k>=1;k-) tmp=0;for(j=k+1;j<=3;j+)tmp+=akj*lj;lk=(a
13、k4-tmp)/akk;for(i=1;i<=3;i+)printf("x%i=%lfn",i,li); 2.LU分解法:#include<stdio.h>#include<math.h> int i,j,k,r; double m=0,p=0; double a33; void lu(double a33) for(i=1;i<=2;i+) if(a00!=0) ai0=ai0/a00; for(k=1;k<=2;k+) for(j=k;j<=2;j+) for(r=0;r<=k-1;r+) m=m+akr*arj;
14、akj=akj-m; m=0; for(i=k+1;i<=2;i+) for(r=0;r<=k-1;r+) p=p+air*ark; aik=(aik-p)/akk; p=0; void main() static double a33=1,2,3,0,1,2,2,4,1; static double b3=14,8,13; double c3; double d3; double f33; double m=0; double n=0; int r; int i,j; lu(a); printf("輸出U的矩陣為n"); for(i=0;i<=2;i+)
15、 for(j=i;j<=2;j+) fij=aij; printf(" %f",fij); printf("n"); printf("輸出L的矩陣為n"); for(i=0;i<=2;i+) for(j=0;j<=i;j+) if(i=j) aij=1; printf(" %f",aij); elseprintf(" %f",aij); printf("n"); c0=b0; for(i=1;i<=2;i+) for(r=0;r<=i-1;r=r
16、+1) m=m+air*cr; ci=bi-m; m=0; d2=c2/f22; for(i=1;i>=0;i=i-1) for(r=2;r>i;r=r-1) n=n+fir*dr; di=(ci-n)/fii; n=0; printf("所求方程組解為x1=%f, x2=%f, x3=%f",d0,d1,d2); /*根據(jù)LU分解所得兩個(gè)矩陣及求解步驟計(jì)算所求X一組解*/ 心得體會(huì) 對(duì)于求解線(xiàn)性方程組的各種直接方法來(lái)說(shuō)各有優(yōu)缺點(diǎn),在所有的求解方法中都應(yīng)該注意其解的精度。注意不同求解方法的不同誤差求法。編寫(xiě)程序的時(shí)候需要一步一步慢慢來(lái),逐步增加自己的算法知識(shí)水平
17、和解決問(wèn)題的能力。實(shí)驗(yàn)名稱(chēng) 實(shí)驗(yàn)三 線(xiàn)性方程組的迭代求解實(shí)驗(yàn)內(nèi)容和要求使用雅可比迭代法或高斯-賽德?tīng)柕▽?duì)下列方程組進(jìn)行求解。實(shí)驗(yàn)原理雅可比迭代法:設(shè)線(xiàn)性方程組Ax=b的系數(shù)矩陣A可逆且主對(duì)角元素a11,a22,ann均不為零,令D=diag(a11,a22,ann)并將A分解成A=(A-D)+D從而線(xiàn)性方程組可寫(xiě)成Dx=(D-A)x+b則有迭代公式x(k+1)=B1x(k)+f1其中,B1=I-D-1A,f1=D-1b。主要儀器設(shè)備HP計(jì)算機(jī)實(shí)驗(yàn)記錄#include <stdio.h>#include<math.h>int main() int i; double
18、x120,x220,x320; double x10,x20,x30; printf("please input x1,x2,x3:n"); scanf("%lf%lf%lf",&x10,&x20,&x30); printf(" n x1n x2n x3nn"); for(i=0;i<18;i+) x10=x10; x20=x20; x30=x30; x1i+1=0.1*x2i+0.2*x3i+0.72; x2i+1=0.1*x1i+0.2*x3i+0.83; x3i+1=0.2*x1i+0.2*x2i+
19、0.84; printf("%5d %5lf %5lf %5lfn",i,x1i,x2i,x3i); return 0;心得體會(huì) 在編寫(xiě)算法是不熟悉,查閱了很多資料,經(jīng)過(guò)反復(fù)研究和試驗(yàn)后實(shí)現(xiàn)了題目的要求,使用雅克比迭代法和高斯-賽德?tīng)柖伎梢缘玫椒匠痰慕?,但相比之下,高?賽德?tīng)柕牡螖?shù)要比雅克比的迭代次數(shù)少,能夠更快的達(dá)到所求的解的精度。實(shí)驗(yàn)名稱(chēng) 實(shí)驗(yàn)四 代數(shù)插值和最小二乘法擬合實(shí)驗(yàn)內(nèi)容和要求1.學(xué)習(xí)使用拉格朗日插值法或牛頓插值法求解方法。2.了解最小二乘法的多項(xiàng)式擬合的具體計(jì)算方法并且注意克服正規(guī)方程組的病態(tài)。給定數(shù)據(jù)點(diǎn)(xi ,yi)如下:xi00.50.60.70.
20、80.91.0yi11.751.962.192.442.713.00(1) 使用拉格朗日插值法或牛頓插值法, 求f(0.856)的近似值.(2) 用最小二乘法擬合數(shù)據(jù)的(n次)多項(xiàng)式,求f(0.856)的近似值. (3) 對(duì)比、分析上兩結(jié)果實(shí)驗(yàn)原理設(shè)函數(shù)在區(qū)間a,b上n+1互異節(jié)點(diǎn)x0,x1,xn上的函數(shù)值分別為y0,y1,yn,求n次插值多項(xiàng)式Pn(x),滿(mǎn)足條件Pn(xj)=yj, j=0,1,n令Ln(x)=y0l0(x)+y1l1(x)+ynln(x)= yili(x)其中l(wèi)0(x),l1(x), ln(x) 為以x0,x1,xn為節(jié)點(diǎn)的n次插值基函數(shù),則Ln(x)是一次數(shù)不超過(guò)n的多
21、項(xiàng)式,且滿(mǎn)足Ln(xj)=yj, L=0,1,n再由插值多項(xiàng)式的唯一性,得Pn(x)Ln(x)主要儀器設(shè)備HP計(jì)算機(jī)實(shí)驗(yàn)記錄(寫(xiě)出實(shí)驗(yàn)內(nèi)容中的程序代碼和運(yùn)行結(jié)果)(可分欄或加頁(yè))拉格朗日插值法:#include "stdio.h"int main()double m=1.0,a=0.856,l=0;int i,j;double x6=0.50,0.60,0.70,0.80,0.90,1.00;double y6=1.75,1.96,2.19,2.44,2.71,3.00;for(i=0;i<=5;i+) for(j=0;j<=5;j+)if(i=j) continue;m=m*(a-xj)/(xi-xj);l+=yi*m;m=1;printf("結(jié)果為%lf",l);return 0;最小二乘法:#include "stdio.h"#include "math.h"int main()double
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年龍崗區(qū)稅務(wù)局飲用水安全風(fēng)險(xiǎn)評(píng)估與整改服務(wù)協(xié)議4篇
- 2025版鋁材行業(yè)培訓(xùn)與咨詢(xún)服務(wù)合同范本
- 2025年度高新技術(shù)企業(yè)研發(fā)項(xiàng)目成果轉(zhuǎn)化與技術(shù)支持協(xié)議下載2篇
- 2025年度內(nèi)部控制合同管理內(nèi)部控制手冊(cè)3篇
- 二零二五版羅絲與吳磊的離婚協(xié)議及子女撫養(yǎng)權(quán)轉(zhuǎn)讓協(xié)議4篇
- 二零二五年度廚師技能競(jìng)賽與評(píng)選活動(dòng)合同4篇
- 二零二五版特色小鎮(zhèn)物業(yè)合同財(cái)務(wù)管理與文化旅游融合協(xié)議3篇
- 二零二五版汽車(chē)維修店面使用權(quán)轉(zhuǎn)讓合同模板3篇
- 2025年度新能源產(chǎn)業(yè)合作推廣戰(zhàn)略框架協(xié)議書(shū)
- 二零二五年度LED燈具音響設(shè)備研發(fā)生產(chǎn)合作協(xié)議4篇
- 華為HCIA-Storage H13-629考試練習(xí)題
- Q∕GDW 516-2010 500kV~1000kV 輸電線(xiàn)路劣化懸式絕緣子檢測(cè)規(guī)程
- 遼寧省撫順五十中學(xué)2024屆中考化學(xué)全真模擬試卷含解析
- 2024年湖南汽車(chē)工程職業(yè)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)及答案解析
- 家長(zhǎng)心理健康教育知識(shí)講座
- GB/T 292-2023滾動(dòng)軸承角接觸球軸承外形尺寸
- 軍人結(jié)婚函調(diào)報(bào)告表
- 民用無(wú)人駕駛航空器實(shí)名制登記管理規(guī)定
- 北京地鐵6號(hào)線(xiàn)
- 航空油料計(jì)量統(tǒng)計(jì)員(初級(jí))理論考試復(fù)習(xí)題庫(kù)大全-上(單選題匯總)
評(píng)論
0/150
提交評(píng)論