




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《数值分析》课程实验指导书课程名称:数值分析英文名称:NumericalAnalysis一、实验的性质、目的和任务本实验是与本专业基础课《数值分析》相配套的,旨在巩固专业课内容和学生编程的能力。通过实验加强对数值方法的理解和掌握,编制出适用的程序。同时,在理论教学的基础上,注意方法处理的技巧及其与计算机的结合,要重视误差分析、收敛性的理论;其次要通过例子,学习使用各种数值方法解决实际计算问题。要求学生应用高级计算机语言编程完成实验。二、实验基本要求要求熟悉高级计算机语言,以及相关上机操作说明;上机时要遵守实验室的规章制度,爱护实验设备;记录调试过程及结果,记录并比较与手工运算结果的异同;程序调试完后,须由实验辅导教师在机器上检查运行结果;给出每次实验的实验报告。三、实验原理应用高级计算机语言实现数值计算方法课程中的各种算法。四、设备及器材配置主机:微机操作系统:WINDOWS98以上软件:高级计算机语言五、考核与报告每个实验完成后交一份实验报告。本课程的评分方法作为平时成绩占学期期末总成绩的20%,全部独立完成实验且表现良好得平时成绩的满分20分。六、适用对象信息与计算科学专业七、主要参考书《数值计算引论》白峰杉高等教育出版社2004.7第一版《数值计算方法》林成森科学出版社1998《数值分析》李庆扬王能超易大义清华大学出版社2001《MATLAB6.0与科学计算》王沫然电子工业出版社2001《C程序设计》谭浩强..北京:清华大学出版社。1991.7第一版八、《数值计算方法》课程实验项目名称和实验目的、实验内容及实验步骤实验1线性方程组求解的数值方法(6学时)实验目的:1、掌握解线性方程组的几种基本常用的直接法,并能比较它们各自的优缺点;2、能熟练地对方阵A进行三角分解;3、掌握用迭代法求解线性方程组的基本思想和计算步骤;4、能熟练地写出Jacobi迭代法、Gauss-Seidel迭代法、SOR迭代法的迭代格式的分量形式,并能比较它们各自的特点及误差估计。实验内容:编写Gauss列主元消去法,LU分解,Jacobi,Gauss-Seidel,SOR迭代法的通用程序。实验步骤:1.进入C或其他高级语言开发环境;2.根据实验内容和要求编写程序;3.调试程序;4.运行程序;5.生成报告实验2函数的数值逼近(4学时)实验目的:1、掌握多项式插值的概念、存在唯一性;2、能熟练地应用几种常用方法,如Lagrange插值、Newton插值及三次样条插值;3、掌握最小二乘原理,会求拟合函数及超定方程组的最小二乘解实验内容:编写Lagrange插值,三次样条插值,最小二乘拟合的通用程序实验步骤:1.进入C或其他高级语言开发环境;2.根据实验内容和要求编写程序;3.调试程序;4.运行程序;5.生成报告实验3数值积分(4学时)实验目的:1、熟练掌握复化梯形公式、复化Simpson公式及其截断误差的分析2、了解Monte-Carlo方法;实验内容:编写复化梯形,复化Simpson,Monte-Carlo方法的通用程序实验步骤:1.进入C或其他高级语言开发环境;2.根据实验内容和要求编写程序;3.调试程序;4.运行程序;5.生成报告实验4常微分方程初值问题初步(2学时)实验目的:解常微分方程初值问题数值解法的一些基本概念;掌握经典Runge-kutta方法,培养综合处理问题的能力实验内容:编写四阶经典Runge-kutta方法的通用程序。实验步骤:1.进入C或其他高级语言开发环境;2.根据实验内容和要求编写程序;3.调试程序;4.运行程序;5.生成报告实验5非线性方程(4学时)实验目的:1、掌握计算机上常用的一些求非线性方程的近似根的数值方法(二分法、牛顿法、割线法),并能比较各种方法的异同点;2、正确应用所学方法求出给定的非线性方程满足一定精度要求的数值解。实验内容:编写二分法,牛顿法,割线法的通用程序,自己选择实例验证。实验步骤:1.进入C或其他高级语言开发环境;2.根据实验内容和要求编写程序;3.调试程序;4.运行程序;5.生成报告实验6矩阵特征值计算(4学时)实验目的:1.掌握求矩阵主特征值及相应特征向量的幂法;2.掌握求一般矩阵全部特征值的QR方法。实验内容:编写幂法,QR方法的通用程序,自己选择实例验证。实验步骤:1.进入C或其他高级语言开发环境;2.根据实验内容和要求编写程序;3.调试程序;4.运行程序;5.生成报告九、样例实验1实验目的:能熟练地写出Jacobi迭代法的迭代格式的分量形式实验内容:编写Jacobi迭代法的通用程序Jacobi方法:functionx=myJacobi(A,ep)ifnargin<2ep=1.0e-5;end[n,m]=size(A);x=zeros(n,1);y=zeros(n,1);k=0;while1fori=1:1:ns=0.0;forj=1:1:nifj~=is=s+A(i,j)*x(j);endy(i)=(A(i,n+1)-s)/A(i,i);endendxmx=0.0;fori=1:1:nxmx=max(xmx,abs(x(i)-y(i)));endifxmx<=epfori=1:1:nx(i)=y(i);endreturn;endfori=1:1:nx(i)=y(i);y(i)=0.0;endk=k+1;ifk>30error('failure');return;endend实验2实验目的:能熟练地应用构造Lagrange插值实验内容:编写Lagrange插值法的通用程序Lagrange插值:function[X,Y]=myLagrange(A,B,C)symsxl=length(A);m=length(B);n=length(C);ifl~=m'error'endfork=1:nfori=1:mL(i)=1;M(i)=sym('1');forj=1:mifj~=iL(i)=L(i)*(C(k)-A(j))/(A(i)-A(j));M(i)=M(i)*(x-A(j))/(A(i)-A(j));endendendY(k)=sum(B.*L);X=simple(sum(B.*M));end 实验3实验目的:熟练掌握Romberg公式及Romberg积分法实验内容:编写Romberg积分法的通用程序,自己选择实例验证Romberg积分法:function[s,n]=rbg1e(a,b,esp)
ifnargin<3,esp=1e-6;ends=10;s0=0;k=2;t(1,1)=(b-a)*(f(a)+f(b))/2;while(abs(s-s0)>eps)h=(b-a)/2^(k-1);w=0;if(h~=0)forI=1:(2^(k-1)-1)w=w+f(a+I*h);endt(k,1)=h*(f(a)/2+f(b)/2);forI=1:(k-1+1)t(i,1)=(4^(1-1)*t(I+1,I-1)-t(I,1-1))/(4^(1-1)-1);endends=t(1,k);s0=(t(1,k-1));k=k+1;n=k;elses=s0;n=-kendendfunctionf=f(x);f=x.^3;rbg(0,2)ans=4实验4实验目的:掌握常微分方程初值问题的Euler方法实验内容:编写Euler方法的通用程序Euler方法:functionEulersingleclc%Eulersinglestepmethod:y'=f(t,y),a<=t<=b,y(a)=muprompt={'a=','b=','N=','h=','mu='};dlg_title='SetforEulersingle.';num_lines=1;def2={'1','2','0','0.1','0'};inM1=inputdlg(prompt,dlg_title,num_lines,def2);a=str2num(cell2mat(inM1(1)));b=str2num(cell2mat(inM1(2)));N=str2num(cell2mat(inM1(3)));h=str2num(cell2mat(inM1(4)));mu=str2num(cell2mat(inM1(5)));symsty%dy=f(t,y)seedy.mifN~=0h=(b-a)/N;elseN=(b-a)/h;endt=a;y=mu;[t,y]fori=1:Ny=y+h*dy(t,y);t=a+i*h;[t,y]end实验5实验目的:练习动手构造二分法的能力,加深理解二分的真谛。实验内容:编写二分法的通用程序二分法:functiony=erfen(fun,a,b,esp)
ifnargin<4
esp=1e-4;
end
iffeval(fun,a)*feval(fun,b)<0
n=1;
c=(a+b)/2;
whilec>esp
iffeval(fun,a)*feval(fun,c)<0
b=c;
c=(a+b)/2;
elseiffeval(fun,c)*feval(fun,b)<0
a=c;
c=(a+b)/2;
else
y=c;
esp=10000;
end
n=n+1;
end
y=c;
elseiffeval(fun,a)==0
y=a;
elseiffeval(fun,b)==0
y=b;
elsedisp('these,maynotbearootintheintercal.');
end
nfunctiony=fc(x)
y=x^2-x-1>>erfen(‘fc’,0,10,0.05)n=56ans=1.6180实验6实验目的:1、掌握求矩阵主特征值及相应特征向量的幂法实验内容:编写幂法的通用程序乘幂法:#defineN3#defineM10floatfanshu3(floatf[N]){inti;floatf3=0.0;for(i=0;i<N;i++) {if(f[i]<0)f[i]=-f[i]; if(f3<f[i])f3=f[i];}returnf3;}main(){inti,j,k;floata[N][N]={2,3,2,10,3,4,3,6,1};floatv[N],w[N],u[N];floatu0[N]={0,0,1};floatb,t,tol=0.001,err;k=1;for(i=0;i<N;i++)u[i]=u0[i];while(k<=M){for(i=0;i<N;i++){t=0.0;for(j=0;j<N;j++)t+=a[i][j]*u[j];v[i]=t;}b=fanshu3(v);if(b==0){printf("eigenvecter",u);break;}elsefor(i=0;i<N;i++){w[i]=v[i]/b;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 年产5550吨医用造口袋项目可行性研究报告
- 核能制氢项目可行性研究报告
- 网络技术公司合同付款管理办法
- 公司餐饮员工聘用合同4篇
- 装修合同一页简单8篇
- 工厂生产线职工聘用合同书5篇
- 数字化转型中的文化资本积累-洞察及研究
- 阀门自组网通信技术-洞察及研究
- 部门负责人安全培训课程课件
- 部门安全知识培训总结课件
- 供暖工程资料管理制度
- DBJ51T214-2022四川省蒸压加气混凝土隔墙板应用技术标准
- 托业考试模拟试题及答案
- DB32/T 3390-2018一体化智能泵站应用技术规范
- 2025年北京市丰台区九年级初三二模英语试卷(含答案)
- 朋友名义贷款车协议书
- 社交媒体使用与青少年心理健康的关系研究
- 《四川天府新区直管区国土空间总体规划(2021-2035年)》
- 2025年下半年福建漳州片仔癀药业股份限公司招聘96人易考易错模拟试题(共500题)试卷后附参考答案
- 律师证考试试题及答案
- 2025-2030中国红景天苷行业市场发展趋势与前景展望战略研究报告
评论
0/150
提交评论