列主元高斯消去法、LU三角分解法、龙贝格(Romberg)算法、最小二乘法的Matlab程序及运行结果
《列主元高斯消去法、LU三角分解法、龙贝格(Romberg)算法、最小二乘法的Matlab程序及运行结果》由会员分享,可在线阅读,更多相关《列主元高斯消去法、LU三角分解法、龙贝格(Romberg)算法、最小二乘法的Matlab程序及运行结果(8页珍藏版)》请在装配图网上搜索。
1、1列主元高斯消去法M文件functionx=gauss(a,b)n=length(a);x=zeros(n,1);a=ab;fork=1:n-1max=k;fori=k+1:nifa(i,k)a(max,k)max=i;endendtemp=a(k,k:n+1);a(k,k:n+1)=a(max,k:n+1);a(max,k:n+1)=temp;fori=k+1:na(i,k)=-a(i,k)/a(k,k);a(i,k+1:n+1)=a(i,k+1:n+1)+a(i,k)*a(k,k+1:n+1);endendx(n,1)=a(n,n+1)/a(n,n);fori=n-1:-1:1sum=0;
2、forj=i+1:nsum=sum+x(j,1)*a(i,j);endx(i,1)=(a(i,n+1)-sum)/a(i,i);endMatlab运行结果CommandWindowa=034;1-11;212a=0341-11212b=l;2;3b-123gaussb)ans=1.1667-0.3333.50002.LU三角分解法M文件functiony=LU(A,B);n=length(A);A=AB;fork=1:n-1;fori=k:n;if(abs(A(i,k)=max(abs(A(k:n,k)P(k)=i;temp=A(k,:);A(k,:)=A(i,:);A(i,:)=temp;e
3、ndendforj=k+1:n;A(j,k)=A(j,k)/A(k,k);A(j,k+1:n+1)=A(j,k+1:n+1)-A(j,k)*A(k,k+1:n+1);endendP(n)=n;L(1,1)=1;L(2:n,1)=A(2:n,1);L(1,2:n)=0;U(1,1)=A(1,1);U(2:n,1)=0;U(1,2:n)=A(1,2:n);fori=2:n;L(i,1:i-1)=A(i,1:i-1);L(i,i)=1;L(i,i+1:n)=0;U(i,1:i-1)=0;U(i,i:n)=A(i,i:n);endx(n)=A(n,n+1)/U(n,n);fork=n-1:-1:1x(
4、k)=A(k,n+1);forp=n:-1:k+1;x(k)=x(k)-U(k,p)*x(p);endx(k)=x(k)/U(k,k);endxLUPEndMatlab运行结果a=EO34;1-11;212a.341-11212b=Ll;2;3b=123LU(a,b)x-1.1667-0.33330.5000L=1.00000n1.0000.5000-0.50001.00003.龙贝格(Romberg)算法M文件functiont=romberg(f,a,b,e)t=zeros(15,4);t(1,1)=(b-a)/2*(f(a)+f(b);fork=2:4sum=0;fori=l:2人(k-
5、2)sum=sum+f(a+(2*i-l)*(b-a)/2人(k-1);endt(k,1)=0.5*t(k-1,1)+(b-a)/2人(k-1)*sum;fori=2:kt(k,i)=(4A(i-1)*t(k,i-1)-t(k-1,i-1)/(4A(i-1)-1);endendfork=5:15sum=0;fori=1:2A(k-2)sum=sum+f(a+(2*i-1)*(b-a)/2A(k-1);endt(k,1)=0.5*t(k-1,1)+(b-a)/2A(k-1)*sum;fori=2:4t(k,i)=(4A(i-1)*t(k,i-1)-t(k-1,i-1)/(4A(i-1)-1);e
6、ndifk6ifabs(t(k,4)-t(k-1,4)=15disp(溢出);endMatlab运行结果CommaHdWindowf=inlinesin(s)/KJj3kj)=Inlinefunct1on:f(k)二sin(K)/zrombergff,10-100,1,5*10n(-?)普案0.94608ans=0.92070000.93930.946100.54450.?4610.94100.94570.9461a.94610.94610.94600.9461a.94610.94610.94610.9461a.94610.94610.94610.9461a.94610.9461nn0nn00
7、0c000000000nn0nn000004最小二乘法M文件functiona,max,det=zuixiaoerchengfa(x,y,r)n=length(x);c=ones(n,r+1);fori=2:r+1forj=1:nc(j,i)=x(j)人(i-1);endendA=c*c;b=c*y;a=inv(A)*b;det=0;max=0;fori=1:nsum=a(1);forj=2:r+1sum=sum+a(j)*x(i)人(j-1);endcc=abs(y(i)-sum);ifccmaxmax=cc;enddet=det+ccA2;enddet=sqrt(det);Matlab运行结果CommandWindowA=2468A二2468B=L2112S40B=2112840zuisiaoerchengfa(AjBj2)ans=-S.75004.5750.1875zuisiaoerchengfa(AjBj1)arts=-12.50006.5500
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。