大学生科技创新论文

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

大学生科技创新论文

题目:MATLAB与计算方法关于数值计算问题姓名:张欣(1008300062)杜昕阳(1008300061)

班级:10级信息班

专业:信息与计算科学

内蒙古包头师范学院

二零一二年十一月一日

一、题目:

MATLAB与计算方法关于数值计算问题

二、摘要:

MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。[1] MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连matlab开发工作界面

接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++,JA V A的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。

《计算方法》比较全面地介绍了科学与工程计算中常用的计算方法,具体介绍了这些计算方法的基本理论与实际应用,同时对这些数值计算方法的计算效果、稳定性、收敛效果、适用范围以及优劣性与特点也作了简要的分析。全书共9章,内容包括引论、线性代数方程组求解方法、非线性方程求根、函数插值、函数逼近、矩阵特征值与特征向量的数值算法、数值积分与数值微分、常微分方程初值问题的数值解法、自治微分方程稳定区域的计算等。《计算方法》概念清晰,语言叙述通俗易懂,理论分析严谨,结构编排由浅入深,在分析问题时注重启发性,例题选择具有针对性且注重实际应用。前8章附有一定数量的习题,供读者学习时进行练习。《计算方法》可作为高等院校数学与应用数学、信息与计算科学、应用物理学、计算机科学等专业的高年级本科生和工科硕士研究生使用,也可供从事科学与工程计算的科技工作者参考。

三、引言:

计算方法又称“数值分析”。是为各种数学问题的数值解答研究提供最有效的算法。主要内容为函数逼近论,数值微分,数值积分,误差分析等。常用方法有迭代法、差分法、插值法、有限元素法等。现代的计算方法还要求适应电子计算机的特点。数值分析即“计算方法”.

四、 正文:

插值与拟合 已知()101x f x e x =+-

a) 求函数在0,0.2,0.4,0.6,0.8,1x =处的函数值;(先编函数,再求值保存到

向量中)

b) 对上述数据进行多项式插值,作出多项式5()y P x =的图像,与原函数图

象比较;

(先列出差分表,再用牛顿插值公式编写出多项式函数) c) 对上述数据做线性拟合,作出多项式1()y P x =的图像;

(先定义内积函数,再列出法方程,然后求解,最后编出多项式函数)

d) 构造()f x 在[0,1]区间内的5次切比雪夫多项式5()T x ,并作出图像。

(先生成切比雪夫点,再列出差分表,再插值)

(1)函数代码为 %function y=P(x)y=exp(x)+10*x-1;函数文件 %x=[0:0.2:1];y=P(x)相应点的函数值

结果为 y = 0 2.2214 4.4918 6.8221 9.2255 11.7183

(2)差分表代码为 %function A=ff(x,y)n=length(x);A=zeros(n,n+1);A(:,1)=x';

A(:,2)=y';for j=3:n for i=j-1:n

A(i,j)=A(i,j-1)-A(i-1,j-1); end end 差分表代码 x=[0:0.2:1];

y=P(x);A=ff(x,y)

结果为 A =

0 0 0 0 0 0 0 0.2000 2.2214 2.2214 0 0 0 0

0.4000 4.4918 2.2704 0.0490 0 0 0 0.6000 6.8221 2.3303 0.0599 0.0109 0 0 0.8000 9.2255 2.4034 0.0731 0.0133 0.0024 0 1.0000 11.7183 2.4927 0.0893 0.0162 0.0029 0

牛顿插值公式代码为 %x=0:0.2:1;y=P(x);C=newpoly(x,y);

xx=0:0.1:1;

yy=polyval(C,xx);yyy=poly2str(C,'x')plot(x,y,'ro',xx,yy)

牛顿插值及相应图像

%function c=newpoly(x,y)n=length(x);d=zeros(n,n);d(:,1)=y';

for j=2:n for k=j:n

d(k,j)=(d(k,j-1)-d(k-1,j-1))/(x(k)-x(k-j+1)); end end

c=d(n,n);

for k=(n-1):-1:1

c=conv(c,poly(x(k))); m 牛顿插值法程序

=length(c);

c(m)=c(m)+d(k,k);end

结果为 54320.0138540.0348660.170410.4990711.0001yyy x x x x x =++++

相关文档
最新文档