




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数值分析matlab实现高斯消元法:function[RA,RB,n,X]=gaus(A,b)B=[Ab];n=length(b);RA=rank(A);RB=rank(B);zhica=RB-RA;ifzhica>0,disp('请注意:因为RA~=RB,所以此方程组无解.')returnendifRA==RBifRA==ndisp('请注意:因为RA=RB=n,所以此方程组有唯一解.')X=zeros(n,1);C=zeros(1,n+1);forp=1:n-1fork=p+1:nm=B(k,p)/B(p,p);B(k,p:n+1)=B(k,p:n+1)-m*B(p,p:n+1);endendb=B(1:n,n+1);A=B(1:n,1:n);X(n)=b(n)/A(n,n);forq=n-1:-1:1X(q)=(b(q)-sum(A(q,q+1:n)*X(q+1:n)))/A(q,q);endelsedisp('请注意:因为RA=RB<n,所以此方程组有无穷多解.')endendX列主元消去法:function[RA,RB,n,X]=liezhu(A,b)B=[Ab];n=length(b);RA=rank(A);RB=rank(B);zhica=RB-RA;ifzhica>0,disp('请注意:因为RA~=RB,所以此方程组无解.')returnendifRA==RBifRA==ndisp('请注意:因为RA=RB=n,所以此方程组有唯一解.')X=zeros(n,1);C=zeros(1,n+1);forp=1:n-1[Y,j]=max(abs(B(p:n,p)));C=B(p,:);B(p,:)=B(j+p-1,:);B(j+p-1,:)=C;fork=p+1:nm=B(k,p)/B(p,p);B(k,p:n+1)=B(k,p:n+1)-m*B(p,p:n+1);endendb=B(1:n,n+1);A=B(1:n,1:n);X(n)=b(n)/A(n,n);forq=n-1:-1:1X(q)=(b(q)-sum(A(q,q+1:n)*X(q+1:n)))/A(q,q);endelsedisp('请注意:因为RA=RB<n,所以此方程组有无穷多解.')endendXJacobi迭代法:例1用jacobi迭代法求解代数线性代数方程组,保留四位有效数字(err=1e-4)其中A=[8-11;210-1;11-5];b=[1;4;3]。解:编写jacobi迭代法的函数文件,保存为jacobi.mfunction[x,k]=jacobi(A,b,x0,eps,N)%求解Ax=b;x0为初始列向量;eps为误差容限;N为最大迭代次数%输出x为近似解;k为迭代次数n=length(A);x=zeros(n,1);fork=1:Nfori=1:n―――――――endifnorm(x-x0,inf)<eps%迭代终止条件%if(max(abs(x-x0)))<epsbreak;endx0=x;end编写主程序如下formatlongclearA=[8-11;210-1;11-5];b=[1;4;3];x0=[0.125;0.4;-0.6];%x0为初始列向量N为最大迭代次数err=1e-4;%err为误差容限N=25;%N为最大迭代次数[x,k]=jacobi(A,b,x0,err,N)得到结果如下x=0.224923156250000.30561995000000-0.49388680000000k=6Gauss-seidel迭代法:例2用Gauss-seidel迭代法求解代数线性代数方程组,保留四位有效数字(err=1e-4)其中A=[8-11;210-1;11-5];b=[1;4;3]。解:编写Gauss-seidel迭代法的函数文件,保存为gaus.mfunction[x,k]=gaus(A,b,x0,eps,N)%求解Ax=b;x0为初始列向量;eps为误差容限;N为最大迭代次数%输出x为近似解;k为迭代次数n=length(A);x=zeros(n,1);fork=1:Nfori=1:n――――――endifnorm(x-x0,inf)<eps%迭代终止条件%if(max(abs(x-x0)))<epsbreak;endx0=x;end编写主程序如下formatlongclearA=[8-11;210-1;11-5];b=[1;4;3];x0=[0.125;0.4;-0.6];%x0为初始列向量N为最大迭代次数err=1e-4;%err为误差容限N=25;%N为最大迭代次数[x,k]=gaus(A,b,x0,err,N)输出结果为x=0.224939378906250.30562326171875-0.49388747187500k=5用matlab做插值计算一维插值函数:Yi=interp1(x,y,xi,’method’)其中yi——xi处的插值结果;x,y——插值节点;xi——被插值点;’method’——插值方法,分为’nearest’—最邻近插值;’linear’—线性插值;’spline’—三次样条插值;’cubic’—立方插值。例如:>>hours=1:12;>>temps=[589152529313022252724];>>h=1:0.1:12;>>t=interp1(hours,temps,h,'linear');>>plot(hours,temps)>>xlabel('Hour'),ylabel('DegreesCelsius')二维插值:1,网格节点数据的插值z=interp2(x0,y0,z0,x,y,’method’)其中,z——被插值点的函数值;x0,y0,z0——插值节点;x,y——被插值点;’method’——插值方法,与一维插值相同。2,散点数据的插值计算cz=griddata(x,y,z,cx,cy,’method’)与网格节点数据相似。Lagrange多项式插值(n次):functionf=Lagrange(x,fx,inx)n=length(x);m=length(inx);fori=1:m;z=inx(i);s=0.0;fork=1:np=1.0;forj=1:nifj~=kp=p*(z-x(j))/(x(k)-x(j));endends=p*fx(k)+s;endf(i)=s;endplot(x,fx,'O',inx,f)例:例:已知数据如下,求1—12之间以0.2为间隔的所有值,并画出图形:xi=123456789101112;fxi=1223434-13425233494523。解:图像如右图。>>x=[1:12];>>fx=[1223434-13425233494523];>>xi=[1:0.2:12];>>Lagrange(x,fx,xi)ans=Columns1through912.0000-60.593718.2765124.9778202.5952234.0000223.3757184.1249131.4738Columns10through1878.425334.00002.9467-13.6885-17.5810-12.0379-1.000011.755623.1624Columns19through2731.161134.773034.000029.605422.833215.11537.80992.0000-1.6307Columns28through36-2.8397-1.79071.04045.00009.402413.664317.403320.483423.0000Columns37through4525.203727.376929.685832.040034.000034.774233.342628.732020.4439Columns46through549.0000-3.4848-12.8605-12.88734.059245.0000112.3788197.1817267.9699Columns55through56254.343923.0000Hermite插值法:functionf=Hermite(x,y,y_1,x0)symst;f=0.0;if(length(x)==length(y))if(length(y)==length(y_1))n=length(x);elsedisp('y和y的导数的维数不相等!');return;endelsedisp('x和y的维数不相等!');return;endfori=1:nh=1.0;a=0.0;forj=1:nif(j~=i)h=h*(t-x(j))^2/((x(i)-x(j))^2);a=a
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农村水泵售卖合同范例
- 卸料小车采购合同范本
- 2025重庆市建筑安全员-C证考试题库
- 代养殖合同范本
- 中职体育教学中如何培养学生兴趣
- 劳务合同范本百科
- 共同购买吊车合同范本
- 亲戚合伙买房合同范本
- 入股私人合同范本
- 农场动物销售合同范本
- 【课件】程式与意蕴-中国传统绘画+课件高中美术人美版(2019)美术鉴赏
- 光纤布拉格光栅(FBG)
- 机电设备及工艺作业指导书
- 能源岗位招聘面试题与参考回答2024年
- 新版《铁道概论》考试复习试题库(含答案)
- 实验室安全自检自查表
- 河西走廊纪录片文化传承历史科普宣传
- 汽车与电动车相撞协议书范文
- 消防救援大队专职消防员政审表
- 2024年新华东师大版七年级上册数学全册教案(新版教材)
- 乘法交换律和结合律(教学设计)-2023-2024学年四年级下册数学人教版
评论
0/150
提交评论