数值计算方法实验报告new_第1页
数值计算方法实验报告new_第2页
数值计算方法实验报告new_第3页
数值计算方法实验报告new_第4页
数值计算方法实验报告new_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGEPAGE7数值计算方法实验报告 实验类别:数值计算方法 专业: 班级: 学号: 姓名:XX大学XX学院实验一、高斯列主元消去法【实验类型】设计性【实验学时】2学时【实验内容】1.掌握列主元消去法的基本思路和迭代步骤2.并能够利用列主元的高斯消去法解任意阶数的线性方程组;【实验前的预备知识】1.计算机基础知识;2.熟悉编程基本思想;3.熟悉常见数学函数;【实验方法或步骤】列主元消去法基本思路设有线性方程组,设是可逆矩阵。列主元消去法的基本思想就是通过列主元的选取将初等行变换作用于方程组的增广矩阵,将其中的变换成一个上三角矩阵,然后求解这个三角形方程组。列主元高斯消去法算法描述将方程组用增广矩阵表示。步骤1:消元过程,对选主元,找使得如果,则矩阵奇异,程序结束;否则执行(3);如果,则交换第行与第行对应元素位置,,;消元,对,计算对,计算步骤2:回代过程:若则矩阵奇异,程序结束;否则执行(2);对,计算[实验内容]在课后习题中选择一个求解线性方程组的题编程计算。(例3.2.3课本P40页)(1)[实验程序]使用matlab编程求解列主元消去法列主元函数程序: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,所以此方程组有无穷多解.')endendcommandwindow主程序:>>clear;A=[12-33;-183-1;111];b=[15;-15;6;];>>[RA,RB,n,X]=liezhu(A,b)[实验结果]运行结果请注意:因为RA=RB=n,所以此方程组有唯一解.RA=3RB=3n=3X=1.00002.00003.0000:实验二最小二乘法【实验类型】设计性【实验学时】2学时【实验内容】1.曲线拟合的最小二乘法的基本思路和拟合步骤2.能根据给定的函数值表构造出次数不相同的拟合多项式。【实验前的预备知识】1.计算机基础知识;2.熟悉编程基本思想;3.熟悉常见数学函数;【实验方法或步骤】最小二乘法的基本思路已知数据对,求多项式使得为最小,这就是一个最小二乘问题。最小二乘法算法描述:用线性函数为例,拟合给定数据。步骤1:输入值,及;步骤2:建立正规方程组步骤3:解法方程组,求出系数;步骤4:输出。[实验内容]有如下数据,试用二项式逼近这组数据(P133页课后习题5.17)13456789102781011111098[实验程序]使用matlab进行作图然后进行拟合程序:x=[1345678910];

y=[2781011111098];h=polyfit(x,y,2);

xt=linspace(min(x),max(x));

yt=polyval(h,xt);

figure;holdon;boxon;

plot(xt,yt,'k-');

plot(x,y,'ro');

str=sprintf('y=%.6fx^2+%.6fx+%.6f',...

h(1),h(2),h(3));

title(str,'FontWeight','Bold');

disp(str)[实验结果]matlab拟合的二次曲线图像及二次多项式:故得二次多项式的表达式为:y=-0.267571x^2+3.605309x+-1.459664实验三龙贝格方法【实验类型】设计性【实验学时】2学时【实验内容】1.理解龙贝格方法的基本思路2.用龙贝格方法设计算法,编程求解一个数值积分的问题。【实验前的预备知识】1.计算机基础知识;2.熟悉编程基本思想;3.熟悉常见数学函数;【实验方法或步骤】[实验方法]龙贝格方法的基本思路龙贝格方法是在积分区间逐次二分的过程中,通过对梯形之值进行加速处理,从而获得高精度的积分值。龙贝格方法的算法步骤1准备初值和,用梯形计算公式计算出积分近似值步骤2按区间逐次分半计算梯形公式的积分近似值令,计算,步骤3按下面的公式积分(为便于编程,写下列形式)梯形公式:辛普生公式:龙贝格公式:步骤4精度控制当,(为精度)时,终止计算,并取为近似值,否则,将步长折半,转步骤2。[实验内容]用龙贝格方法计算积分J=的近似值。(P170页课后习题6.10)[实验程序]Matlab中的龙贝格主函数程序:functionRomberg(a,b,eps)%a,b为区间,eps为精度Rd=0;R=(b-a)/2*(f(a)+f(b));N=0;whileabs(Rd-R)>epsRd=R;N=N+1;fork=1:2ifk==1n=N*2;else;n=N;endh=(b-a)/n;fori=1:n+1x(i)=a+(i-1)*h;endC=0;fori=1:nC1=7*f(x(i))+32*f(x(i)+1/4*h)+12*f(x(i)+2/4*h)+32*f(x(i)+3/4*h)+7*f(x(i+1));C=C+C1*h/90;endifk==1R=C*64/63;elseR=R-C/63;endend

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论