計(jì)算數(shù)值方法試驗(yàn)報(bào)告太原理工大學(xué)_第1頁
計(jì)算數(shù)值方法試驗(yàn)報(bào)告太原理工大學(xué)_第2頁
計(jì)算數(shù)值方法試驗(yàn)報(bào)告太原理工大學(xué)_第3頁
計(jì)算數(shù)值方法試驗(yàn)報(bào)告太原理工大學(xué)_第4頁
計(jì)算數(shù)值方法試驗(yàn)報(bào)告太原理工大學(xué)_第5頁
已閱讀5頁,還剩18頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、計(jì)算數(shù)值方法實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)地點(diǎn)綜合樓六層606室指導(dǎo)教師王崢5號TATYW4 UNIVERSITY OF TECHNOLOGY計(jì)算數(shù)值方法實(shí)驗(yàn)報(bào)告學(xué)院:計(jì)算機(jī)與軟件學(xué)院 專業(yè):計(jì)算機(jī)與科學(xué)技術(shù) 班級:計(jì)算機(jī)學(xué)號:1111111111姓名:某某太原理工大學(xué)學(xué)生實(shí)驗(yàn)報(bào)告學(xué)院名稱計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)班級計(jì)算機(jī)學(xué)號1111111111學(xué)生姓名實(shí)驗(yàn)日期2011-6-13成績課程名稱數(shù)值計(jì)算方法實(shí)驗(yàn)題目實(shí)驗(yàn)一二分法、課題名稱方程求根:熟悉使用、迭代法、牛頓法、割線法等方法對給定的方程進(jìn)行根的求解。選擇上述方法中的兩種方法求方程:二分法f(x)=x3+4x2-10=0在1,2內(nèi)的一個(gè)實(shí)根,且要求滿足精度 |x

2、-xn|<0.5 10-5二、目的和意義(1) 了解非線性方程求根的常見方法,如二分法、牛頓法、割線法。(2) 加深對方程求根方法的認(rèn)識,掌握算法。(3) 會(huì)進(jìn)行誤差分析,并能對不同方法進(jìn)行比較。三、計(jì)算公式f(x)在區(qū)間(x, y)上連續(xù)先找到a、b屆丁區(qū)問(x, y),使f(a) , f(b)異號,說明在區(qū) 間(a,b)內(nèi)一定有零點(diǎn),然后求f(a+b)/2,現(xiàn)在假 設(shè) f(a)<0,f(b)>0,a<b如果f(a+b)/2=0 ,該點(diǎn)就是零點(diǎn),如果f(a+b)/2<0, 則在區(qū)間(a+b)/2 , b)內(nèi)有零點(diǎn),(a+b)/2=>a ,從開始繼 續(xù)使用中

3、點(diǎn)函數(shù)值判斷。如果f(a+b)/2>0,則在區(qū)間(a,(a+b)/2) 內(nèi)有零點(diǎn),(a+b)/2<=b ,從開始繼續(xù)使用中點(diǎn)函數(shù)值判斷。這樣就可以不斷接近零點(diǎn)。通過每次把f(x)的零點(diǎn)所在小區(qū)間收縮一半的方法,使區(qū)間的兩個(gè)端點(diǎn)逐步迫近 函數(shù)的零點(diǎn),以求得零點(diǎn)的近似值四、結(jié)構(gòu)程序設(shè)計(jì)#include <iostream>#include <cmath>using namespace std;double f(double x)return x*x*x + 4*x*x - 10;int main()(double t1 = 1,t2 = 2;double t =

4、 (t1+t2)/2;while (fabs(f(t) >= 1.0/2/1000)(if(f(t1)*f(t)<=0)(t2=t;t=(t1+t2)/2;else if(f(t)*f(t2)<=0)(t1=t;t=(t1+t2)/2;cout<<t<<endl;return 1;結(jié)果:五、結(jié)果討論和分析在編寫這個(gè)程序的時(shí)候我感覺到了在編寫的過程中的不易,在編寫的過程中我改變初 值然后運(yùn)行,發(fā)現(xiàn)在初值的改變對運(yùn)行時(shí)間的影響不大,結(jié)果沒有影響。ocuBeiitsdiyi ti. exe*在調(diào)試的過程中發(fā)現(xiàn)自己還是很粗心,容易犯很簡單的錯(cuò)誤。在今后的學(xué)習(xí)中

5、應(yīng)該做編寫 程序。中氣 : VDorweuts and Set tingsAdBini str at or My1.36523Process returned 1 <0x1 > execution tiirie : 7.188 s Press any key to continue.123X114012 x28241X3130.359.1431X159.175.2916.13012 X246 .7811 .2952X311211 X424215X1287210x274836X371261120x4321X17121X25+ +a- -(n=5,10,100121 Xn 1512Xn

6、5學(xué)院名稱計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)班級計(jì)算機(jī)學(xué)號 1111111111學(xué)生姓名某某課程名稱數(shù)值計(jì)算方法、課題名稱線性方程組的直接解法實(shí)驗(yàn)日期2011-6-13成績實(shí)驗(yàn)題目實(shí)驗(yàn)二線性方程組的直接解法合理利用Gauss消元法、LU分解法、追趕法求解下列方程組:二、目的和意義(1) 了解線性方程組常見的直接解法,如 Guass消元法、LU分解法、追趕法。(2) 加深對線性方程組求解方法的認(rèn)識,掌握算法。(3) 會(huì)進(jìn)行誤差分析,并能對不同方法進(jìn)行比較。四、計(jì)算公式高斯分解法:將原方程組化為三角形方陣的方程組:l ik =aik /a kka ij = aij - l ik* a kj k=1,2,n-1i

7、=k+1,k+2,- ,n j=k+1,k+2,- ,n+1由回代過程求得原方程組的解:X n= a nn+1/ a nn計(jì)算數(shù)值方法實(shí)驗(yàn)報(bào)告x k=( a kn+i- Eakj x j)/ a kk (k=n-l,n-2,,2,1)五、結(jié)構(gòu)程序設(shè)計(jì)#include "stdio.h"double a1515,a01515;double b15,b015,l15;int n;void displayA()printf("n");for(int j=1;j<=n;j+)for(int i=1;i<=n;i+)printf("a%d%d

8、=%f ",j,i,aji);printf("b%d=%fn",j,bj);for(int m=1;m<=n;m+)printf("l%d=%f ",m,lm);printf("n");int main()FILE *f;int i,j,k;f=fopen("Gaussdata2.txt","r");fscanf(f,"%d",&n);for(i=1;i<=n;i+)for(j=1;j<=n;j+)fscanf(f,"%lf&qu

9、ot;,&aij);a0ij=aij;fscanf(f,"%lf',&bi);b0i=bi;displayA();fclose(f);k=1;dofor(i=1;i<=n;i+)(if(i=k) continue;li=a0ik/a0kk;for (j=k+1;j<=n;j+) akj=a0kj/a0kk;bk=b0k/a0kk;for(i=1;i<=n;i+)(if(i=k) continue;for(j=k+1;j<=n;j+)aij=a0ij-li*a0kj;bi=b0i-li*b0k;displayA();for(i=1;i&l

10、t;=n;i+)(for(j=k+1;j<=n;j+)a0ij=aij;b0i=bi;if(k=n) break;k+;while(1);for(i=1;i<=n;i+)printf("b%2d=%lfn",i,bi);getchar();#計(jì)算數(shù)值方法實(shí)驗(yàn)報(bào)告六、結(jié)果討論和分析 第一題答案:9exe1 J1J=1-000600Li21 11=0.000000L3111-2>000060allC2J=2-0B00B0 aE2r21=1.000000 a E3H21=4.000000 a 11E31 =3.090000 2C3=2.000000 aL33J-

11、1.800e0O bLi 1=14-000000 bE21=8.000000 b31-13.CB060011 0.000000 1(2 >0.000003 lt3 J-0.皿皿hil 1 =1 .G0QQ&Q k 21 11-0.000080 Li31-2.00Q00玖1 2 1=2.0 明麗 0 a21C21=1,000000 a(3L21-0-000Q00all J3J=3.BBnnp)n a23=2.600000 a3135.Q00Q00briJ=14.e0QB8BhT21=8.000000b 3IS. 00000011J=0.Q0060Q 1L2=0.006900 1E3

12、J=2.Q00B001 !-!. 000000Li21-0.000000Li 3 Jtl J =2.08000BMlW曲明施 aE2J21-1.060009 a(3H2 1=0.000000a 1) 3 J =-1.000000 a213-2.000000a3133-5.0800B0b11=2.000000bL2=8,000090bE3J=-15-088000111=2.0000801E2=0.000000=0.B0O000Lil !-!. 000000 2JtlJ=0.000000 Li 3 11=2.000000a(1J23-2.000000 aL2 H2J=1.0B00B0aE3 E2

13、1=0.000003aLiicaii.wmna a2133=2.000000aL331=-5.900000bU-1.000000 b2=2.000000b3=3,000Q0011=0.200000 lf2=-0,400000 13-0.00000011-1.009000b 2=2.000800b 3】=3皿施典M "<:Documents and SettingstAdminktrator.SSit&J5計(jì)算作業(yè)l第二篇GS第二慝kgwZexE"al Hl =0,000000 aLl J 2 1=1971333333333333 .b000 00 aLl 3

14、J=-0.142281 aU4=0. 335412 hri=6.995879aC2Hl-5,291Aflfi 戒2 】【2】=-W4303M666666674.nn朋麗 a23 )=0,050727 a(24 A .03B5?4 b2=l,9B7087a3 H1=11.2000S0 at3 H21=-22078933333333324.G000fi0 a31E3 3=6.029663 a3J41 = -027083 b3 =-1?.418?70a4HM,B00000 a4 )12 1=1971333333333331.500000 aU3E3 .039482 "4】t4= 01350

15、2 bL4=10-425999111-0.023597 12=0-008413 13=2.11&B02 lf4J=0.172395a Cl Hl 1=0.000000 al J 21=197133333333333 3.500000 atl 3 =-0.142281 ad 4=0. 335412 hri=3.545464a2JLl=-5,291Ofl0 "2 】【2 J-TM43 目 324666666674 一 M 朋麗 a(23 )=0.05072? a(2J4-B .03B574 bt21=1,590275a3 H1=11.2000S0 at3 H21=-2207893

16、3333333324.G000M0 af313 3=6.029663 a3J4 = -0.427083 b3=-15-055327a 4J 13=1,000000 a4 L2 =-19?1333333333331.500000 aU 3 J =1.039482 a14=l, 013502 b141=10-287103113=0.330943 1(2=Q.038O6Q 13l=-0.421393 114=0-172395bl 11-3.545464bL 21=1.5?02?5 b 3 =-15.055327 bt U=ia.2B7103c、卜tADocu m enti dhd SettihgAA

17、d m inistrdtQ rvtS 佐業(yè)'第二黝 G51第三 £gs .exeM11E1 J.00fM03125OQ0靜21】=8,麗購麗a2L21-3.Q0600Batl31=3.250008a23=B.n00000a211=0.000000hl J0.b21=-l.«3H3-3.80S000b3-0.5bi (4 H1 >12.00090 ,圓曲跚 1(1=0.1290 12J=0.0Q0O0 13-2.O0E000 14=4,030800a412-0.060000aI43=8.00000044>1,000000b411all Hl J =4.00

18、0009 06000kL2Cl-ft.Q0B0M 0BQ0Q0aLJJtll=4.6S0803alL2JO.S00003a13=9.2S0000aisnsi-i.QMoeaa3K2J=b.H06003a3H3 =2 _B0B000a3n41=3.SQOB0QaL4J11=12.600030 .6O0S091±J-1.1250001C21-0.0O0QB013 3-fl.56088014 J-4_90S80Bhi 13=1.eQGQQQ b 2J=-1.0000Q b 3J=i.皿國麗 hf 4J=-l.B0m0a42=0.a60B00a4L3 J=8.0000fiQaC41t4=l.

19、QeB800fatal=-i.bt+J=-l在編寫這個(gè)程序的時(shí)候我感覺到了在編寫的過程中的不易,在編寫的過程中我改變初值然 后運(yùn)行,發(fā)現(xiàn)在初值的改變對運(yùn)行時(shí)間的影響不大,結(jié)果沒有影響。在調(diào)試的過程中發(fā)現(xiàn)自己還是很粗心,容易犯很簡單的錯(cuò)誤。在今后的學(xué)習(xí)中應(yīng)該做編寫 程序。學(xué)院名稱計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)班級計(jì)算機(jī)學(xué)號 1111111111學(xué)生姓名某某課程名稱數(shù)值計(jì)算方法實(shí)驗(yàn)日期實(shí)驗(yàn)題目2011-6-13成績實(shí)驗(yàn)三線性方程組的迭代解法課題名稱線性方程組的迭代解法使用雅可比迭代法或高斯-賽德爾迭代法對下列方程組進(jìn)行求解。”10x1 x2 2x3 =7.2一x1 +10 x2 2x3 =8.3-x1 x2

20、 +5x3 =4.2-賽德爾迭代法二、目的和意義學(xué)習(xí)使用雅可比迭代法或高斯三、計(jì)算公式雅克比迭代法:設(shè)線性方程組Ax=b的系數(shù)矩陣A可逆且主對角元素311,3 22,ann均不為零,令D=diag( 311,3 22,,a nn)并將A分解成A=(A-D)+D從而線性方程組可寫成Dx=(D-A)x+b則有迭代公式x(k+1)=Bx(k)+f1其中 B=I-D-1A,f 1=D1b四、結(jié)構(gòu)程序設(shè)計(jì)/雅可比#include<iostream>#include<cmath>#include<iomanip>using namespace std;#define M

21、 100/*最大允許的迭代次數(shù)*/double fanshu(double *p,int n)/*求向量無窮范數(shù)的函數(shù) */計(jì)算數(shù)值方法實(shí)驗(yàn)報(bào)告double n1;int i;n1=fabs(p0);for(i=1;i<n;i+)(if(fabs(pi)>n1)n1=fabs(pi);return(n1);void jac(double *s,double *g,int size,double eps)/*雅可比迭代函數(shù) */(int i,j,k;double *b,*x0,*x1,*x1_x0,n2,t;/*b用來表示迭代矩陣,x1_x0表示迭代前后向量x0與x1的差向量*/b=

22、new double*size;/* 動(dòng)態(tài)分配二維數(shù)組 */for(i=0;i<size;i+)bi=new doublesize;for(i=0;i<size;i+)for(j=0;j<size;j+)bij=0;x0=new doublesize;/*動(dòng)態(tài)分配一維數(shù)組 */x1=new doublesize;x1_x0=new doublesize;for(i=0;i<size;i+)(gi=gi/sii;for(j=0;j<size;j+)(if(i=j)continue;bij=-sij/sii;for(i=0;i<size;i+)/*選擇初始向量及

23、構(gòu)造迭代條件*/(x0i=0;x1i=1;x1_x0i=x1i-x0i;k=0;n2=fanshu(x1 x0,size);/味差向量的無窮范數(shù) */while(n2>=eps)&&(k<M)/* 迭代計(jì)算 */(for(i=0;i<size;i+)x0i=x1i;for(i=0;i<size;i+)(t=0;for(j=0;j<size;j+)t=t+bij*x0j;x1i=t+gi;x1_x0i=x1i-x0i;n2=fanshu(x1_x0,size); /*求差向量的無窮范數(shù)*/k+;/*k用丁記錄累加的次數(shù)*/for(i=0;i<s

24、ize;i+)cout<<setprecision(7)<<"x"<<i<<"="<<x1i<<endl;cout<<"迭代了 "<<k<<"次"<<endl;int main()(double *s,*a,eps;int size,m,l;cout<<”輸入精度:"<<endl;cin>>eps;cout<<”輸入方程解數(shù):"&

25、lt;<endl;cin>>size;a=new doublesize;/*動(dòng)態(tài)分配二維數(shù)組 */s=new double*size;for(l=0;l<size;l+)sl=new doublesize;cout<<”輸入要矩陣"<<endl;for(l=0;l<size;l+)for(m=0;m<size;m+)cin>>slm;cout<<”輸入系數(shù)矩陣"<<endl;for(l=0;l<size;l+)cin>>al;cout<<"

26、diao yong ya ke bi han shu "<<endl;jac(s,a,size,eps);return 0;學(xué)院名稱計(jì)算機(jī)科學(xué)與技 術(shù)專業(yè)班級計(jì)算機(jī)學(xué)號1111111111學(xué)生姓名某某實(shí)驗(yàn)日期2011-6-20成績課程名稱數(shù)值計(jì)算方法實(shí)驗(yàn)題目實(shí)驗(yàn)四最小二乘法擬合多項(xiàng)式一、課題名稱(1) 了解矩陣特征值與特征向量問題解法,掌握籍法。(2) 加深對矩陣特征值與特征向量問題求解方法的認(rèn)識,掌握算法。(3) 會(huì)進(jìn)行誤差分析。二、目的和意義學(xué)習(xí)使用最小二乘法擬合多項(xiàng)式三、計(jì)算公式籍法:由已知的非零向量x0和矩陣A的乘籍構(gòu)造向量序歹U xn以計(jì)算矩陣 A的按模最大特征

27、值及其特征向量的方法,稱為籍法。迭代公式:A x k _i=m ax ( y k ), k1, 2,.xk結(jié)果可取四、結(jié)構(gòu)程序設(shè)計(jì)#include <iostream>#include <cmath>const int N(3);using namespace std;void matrixx(double ANN,double xN,double yN) / 求y的值for(int i=0;i<N;i+)yi=0;for(int j=0;j<N;j+)yi+=Aij*xj;double m(double yN)( / 求m的值,即y的最大值double m

28、ax;for(int i=0;i<N-1;i+) max=yi>yi+1?yi:yi+1;return max;void main()(cout<<"矩陣:"<<endl<<"|2 -1 0|"<<endl;cout<<"|-1 2 -1|"<<endl;cout<<"|0 -1 2|"<<endl;double AN=2,-1,0,-1,2,-1,0,-1,2; /矩陣 A (3*3)double xN=1

29、,1,1;/已知非零向量 x0double yN=0,0,0,uN=0,0,0,pN=0,0,0;double e=1e-2,delta=1;int k=0; / 計(jì)數(shù)器while(delta>=e)for(int q=0;q<N;q+) pq=yq;matrixx(A,x,y);for(int i=0;i<N;i+) ui=yi/(m(y);delta=fabs(m(y)-m(p);k+;for(int l=0;l<N;l+) xl=ul;cout<<"迭代次數(shù)是:"<<k<<endl;cout<<&

30、quot;特征值為:"<<m(y)<<endl;cout<<" 特征向量為:"<<"("cout<<u0<<","<<u1<<","<<u2;cout << ")" << endl;23五、結(jié)果討論和分析分析:籍法是一種求任意矩陣A的按模最大特征值及其對應(yīng)特征向量的迭代 算法。該方法的最大優(yōu)點(diǎn)是計(jì)算簡單,容易在計(jì)算機(jī)上實(shí)現(xiàn),對稀疏矩陣較為 適合,但有時(shí)收斂

31、速度很慢。實(shí)驗(yàn)地點(diǎn)綜合樓六層606室指導(dǎo)教師王崢學(xué)院名稱計(jì)算機(jī)科學(xué)與技 術(shù)專業(yè)班級計(jì)算機(jī)學(xué)號1111111111學(xué)生姓名某某實(shí)驗(yàn)日期2011-6-20成績課程名稱數(shù)值計(jì)算方法實(shí)驗(yàn)題目實(shí)驗(yàn)五代數(shù)插值一、課題名稱使用拉格朗日插值法或牛頓插值法求解:已知f(x)在6個(gè)點(diǎn)的函數(shù)值如下表所示,運(yùn)用插值方法,求f(0.596)的近似值。x0.400.550.650.800.901.05f(x)0.410750.578150.696750.888111.026521.25386目的和意義學(xué)習(xí)使用拉格朗日插值法或牛頓插值法求解計(jì)算公式設(shè)函數(shù)在區(qū)間a,b上n+1互異節(jié)點(diǎn)Xo,Xi,Xn上的函數(shù)值分別為y0,y

32、1,,y n,求n次插值多項(xiàng)式Pn(x),滿足條件Pn(Xj)=yj, j=0,1,門令Ln(x)=y ol o(x)+y il i(x)+ +ynl n(x)= 12 yil i(x)其中l(wèi)o(x),l l(x), ,l n(x)為以xo,x 1,,x n為節(jié)點(diǎn)的n次插值基函數(shù),則Ln(x)是一次數(shù)不超過n的多項(xiàng)式,且滿足Ln(x j)=y j, L=0,1,,n再由插值多項(xiàng)式的唯一性,得Pn(x)三 Ln(x)四、結(jié)構(gòu)程序設(shè)計(jì)變量x和函數(shù)值y的結(jié)構(gòu) 最多二十組數(shù)據(jù)牛頓插值法,用以返回插商#include<stdio.h> #include<stdlib.h> #in

33、clude<iostream.h> typedef struct data ( float x; float y;Data;/Data d20;/float f(int s,int t)/(if(t=s+1)return (dt.y-ds.y)/(dt.x-ds.x); elsereturn (f(s+1,t)-f(s,t-1)/(dt.x-ds.x);float Newton(float x,int count)(int n;while(1)(cout<<" 請輸入n值(即n次插值):"/獲得插值次數(shù) cin>>n;if(n<=c

34、ount-1)/插值次數(shù)不得大丁 count 1次break;else system("cls");float t=1.0;float y=d0.y;float yt=0.0;for(int j=1;j<=n;j+)(t=(x-dj-1.x)*t;yt=f(0,j)*t;y=y+yt;return y;float lagrange(float x,int count)(float y=0.0;for(int k=0;k<count;k+)/這兒默認(rèn)為 count 1 次插值(float p=1.0;/ 初始化 pfor(int j=0;j<count;j+

35、)(/計(jì)算p的值if(k=j)continue;/判定是否為同一個(gè)數(shù)p=p*(x-dj.x)/(dk.x-dj.x);y=y+p*dk.y;/ 求和return y;/ 返回y的值void main()(float x,y;int count;while(1)(cout<<"請輸入xi,yi的組數(shù),不得超過20組:”;/要求用戶輸入數(shù)據(jù)組數(shù)cin>>count;if(count<=20)break;/ 檢查輸入的是否合法system("cls");/獲得各組數(shù)據(jù)for(int i=0;i<count;i+)(cout<&l

36、t;"請輸入第"<<i+1<<"組x的值:"cin>>di.x;cout<<"請輸入第"<<i+1<<"組y的值:"cin>>di.y;system("cls");cout<<"請輸入x的值:”;/獲得變量x的值cin>>x;while(1)(int choice=3;cout<<"請您選擇使用哪種插值法計(jì)算:"<<endl;cout&

37、lt;<" (0):退出"<<endl;cout<<"(1):Lagrange"<<endl;cout<<”(2):Newton"<<endl;cout<<"輸入你的選擇:"cin>>choice;/ 取得用戶的選擇項(xiàng)if(choice=2)(cout<<"你選擇了牛頓插值計(jì)算方法,其結(jié)果為:"y=Newton(x,count);break;/調(diào)用相應(yīng)的處理函數(shù)if(choice=1)(cout<&

38、lt;"你選擇了拉格朗日插值計(jì)算方法,其結(jié)果為:y=lagrange(x,count);break;/調(diào)用相應(yīng)的處理函數(shù)if(choice=0)break;system("cls");cout<<"輸入錯(cuò)誤!!"<<endl;cout<<x<<" ,"<<y<<endl;/輸出最終結(jié)果五、結(jié)果討論和分析分析:拉格朗日插值的優(yōu)點(diǎn)是插值多項(xiàng)式特別容易建立,缺點(diǎn)是增加節(jié)點(diǎn)是原有多項(xiàng) 式不能利用,必須重新建立,即所有基函數(shù)都要重新計(jì)算,這就造成計(jì)算量的 浪費(fèi)。實(shí)

39、驗(yàn)地點(diǎn)綜合樓六層606室指導(dǎo)教師王崢學(xué)院名稱計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)班級計(jì)算機(jī)學(xué)號 1111111111學(xué)生姓名某某課程名稱數(shù)值計(jì)算方法、課題名稱實(shí)驗(yàn)日期2011-6-20實(shí)驗(yàn)題目實(shí)驗(yàn)六成績最小二乘法擬合多項(xiàng)式給定數(shù)據(jù)點(diǎn)(Xi y),用最小二乘法擬合數(shù)據(jù)的多項(xiàng)式,并求平方誤差。Xi00.50.60.70.80.91.0yi11.751.962.192.442.713.00、目的和意義1. 熟練運(yùn)用已學(xué)計(jì)算方法求解方程組2. 加深對計(jì)算方法技巧,選擇正確的計(jì)算方法來求解各種方程組3. 培養(yǎng)使用電子計(jì)算機(jī)進(jìn)行科學(xué)計(jì)算和解決問題的能力 二、計(jì)算公式建立正規(guī)方程組:習(xí)(習(xí) x/+k) ak=EXijyi

40、, j=0,1, -,n平方誤差:I =習(xí)(習(xí) akXi k-y i)2四、結(jié)構(gòu)程序設(shè)計(jì)#include<iostream.h>#include<fstream.h>#define N 15double power(double &a,int n)double b=1;for(int i=0;i<n;i+)b*=a;return b;void Gauss();double XN,YN,sumXN,sumYN,aNN,bN,lNN,xN;void main()ofstream outdata;ifstream double s;int i,j,k,n,ind

41、ex;cout<<"請輸入已知點(diǎn)的個(gè)數(shù)n="cin>>n;cout<<endl;cout<<"請輸入X和Y:"<<endl; /輸入給定數(shù)據(jù)for(i=0;i<n;i+)cout<<"X"<<i<<”=”;cin>>Xi;sumX1+=Xi;cout<<"Y"<<i<<"="cin>>Yi;sumY1+=Yi;cout<<endl;cout<<"sumX1="<<sumX1<<"t"<<"sumY1="<<sumY1<<endl;cout<<"請輸入擬合次數(shù)index="cin>>index;cout<<endl;i=n;sumX0=i;for(i=2;i<=2*index;i+)sumXi=0;for(j=0;j<n;j+)s

溫馨提示

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

評論

0/150

提交評論