数值分析学习报告

  • 格式:doc
  • 大小:32.00 KB
  • 文档页数:5

数值分析学习心得报告
班级:11级软工一班
姓名: * * *
学号: 20117610***
指导老师:* * *

学习数值分析的心得体会
无意中的一次选择,让我接触了数值分析。
作为这学期的选修课,我从内心深处来讲,数值分析真的有点难。感觉它是
在高等数学和线性代数的基础上,又加深了探讨。虽然这节课很难,我学的不是
很好,但我依然对它比较感兴趣。下面就具体说说我的学习体会,让那些感兴趣
的同学有个参考。
学习数值分析,我们首先得知道一个软件——MATLAB。MATrix LABoratory,
即矩阵实验室,是Math work公司推出的一套高效率的数值计算和可视化软件。
它是当今科学界最具影响力、也是最具活力的软件,它起源于矩阵运算,并高速
发展成计算机语言。它的优点是强大的科学运算、灵活的程序设计流程、高质量
的图形可视化与界面、便捷的与其他程序和语言接口。
根据上网搜集到的资料,你就会发现MATLAB有许多优点:
首先,编程简单使用方便。到目前为止,我已经学过C语言,机器语言,JAVA
语言,这三个语言相比,我感觉C语言还是很简单的一种编程语言。只要入门
就很好掌握,但是想学精一门语言可不是那么容易的。惭愧的说,到目前为止,
我依然处于入门阶段,只会编写小的简单的程序,但是班里依然还是有学习好的。
C语言是简单且容易掌握的,但是,MATLAB的矩阵和向量操作功能是其他语
言无法比拟的。在MATLAB环境下,数组的操作与数的操作一样简单,基本数
据单元是不需要指定维数的,不需要说明数据类型的矩阵,而其数学表达式和运
算规则与通常的习惯相同。
其次,函数库可任意扩充。众所周知,C语音有着丰富的函数库,我们可以
随时调用,大大方便了程序员的操作。可是作为IT人士的你知道吗,由于
MATLAB语言库函数与用户文件的形式相同,用户文件可以像库函数一样随意
调用,所以用户可任意扩充库函数。这是不是很方便呢?
接着,语言简单内涵丰富。数值分析所用的语言中,最重要的成分是函数,
其一般形式为:Function[a,b,c„„]=fun(d,e,f„„),你也发现了吧,这样的语音是
不是很容易掌握呢!Fun是自定义的函数名,只要不与库函数想重,并且符合字
符串书写规则即可。
然后是丰富的工具箱。由于MATLAB 的开放性,许多领域的专家都为
MATLAB 编写了各种程序工具箱。这些工具箱提供了用户在特别应用领域所需
的许多函数,这使得用户不必花大量的时间编写程序就可以直接调用这些函数,
达到事半功倍的效果。不过你得提前知道这些工具箱,并且会使用。
最后,我们来说一下MATLAB的运算。利用matlab可以做向量与矩阵的运
算,与普通加减运算几乎相似。
矩阵乘法用 “ * ” 符号表示,当A矩阵列数与B矩阵的行数相等时,二
者可以进行乘法运算,否则是错误的。如果A或B是标量,则A*B返回标量A
(或B)乘上矩阵B(或A)的每一个元素所得的矩阵。
对n×m阶矩阵A和p×q阶矩阵B,A和B的Kronecher乘法运算可定
义为:
Kronecker乘法的Matlab命令为C=kron(A,B):例如,在matlab中输入:
A=[1 2; 3 4]; B=[1 3 2; 2 4 6]; C=kron(A,B) 则程序会给出相应
的答案

C =
1 3 2 2 6 4
2 4 6 4 8 12
3 9 6 4 12 8
6 12 18 8 16 24
这就充分的考验了我们的实际动手能力,当然运用一般的计算方法能算出结
果,但相对来说没有用它来运算节省时间,其他算法又很不方便。
上面介绍了Matlab的特点与使用方法,接着我们要说它的程序设计,其实
跟c语言相比,它们的程序设计都差不多。
大家都知道,Matlab与其它计算机语言一样,也有控制流语句。而控制流语
句本身,可使原本简单地在命令行中运行的一系列命令或函数,组合成为一个整
体—程序,从而提高效率。以下是具体的几个例子,看过之后,你会发现,Matlab
的控制流语句跟其他计算机真的很相似:
(1)for 循环for循环的通用形式为:for v=expressionstatementsend其中
expression 表达式是一个矩阵,因为Matlab中都是矩阵,矩阵的列被一个接一个
的赋值到变量v,然后statements语句运行。
(2)while 循环while循环的通用形式为:while v=expressionstatementsend当
expression的所有运算为非零值时,statements 语句组将被执行。如果判断条件是
向量或矩阵的话,可能需要all 或any函数作为判断条件。
(3)if和break语句通用形式为:if 条件1,命令组1;elesif条件2,命令组
2;„„;else命令组k;endbreak%中断执行,用在循环语句内表示跳出循环。
对于数值分析这节课,我的理解是:只要学习并掌握好MATLAB,你就已
经成功了。因此说,MATLAB是数学分析的基础。另外,自我感觉这是一个很
好的软件,其语言简便,实用性强。但是作为一个做新手,想要学习好这门语言,
还是比较困难的。在平常的上机课中,虽然我没有问过老师,但是我向那些学习
不错的学生还是交流了许多,比如说,张**,贾**,还有那个皮肤白白的女生。
跟他们交流,我确实学到不少有用的东西。但是,毕竟没有他们学得好,总之,
在我接触这门语言的这些天,除了会画几个简单的三维图形,其他的还是有待提
高。在这个软件中,虽然有help,但大家不要以为有了这个就万事大吉了,反而,
从另一个方面也对我们大学生提出了两个要求——充实的课外基础和良好的英
语基础。在现代,几乎所有好的软件都是来自国外,假如你不会外语,想学好是
非常难的,即使高考中的英语比重降低了,但我们依旧得学好。这样我们才能走
得更远。
其实想要学习好一们语言,不能只靠老师,靠朋友,关键是自己。每个人内
心深处都是有抵触意识的,不可能把老师的所有都学到。其实,我发现学习数值
分析这门课,不光是学习一种语言,一些知识,更重要的是学习一种方法,一种
学习软件的方法,还有学习的态度。
在最后,我想说的是,谢谢郭老师的辛勤付出,我们每个学生都会看在眼里
记在心里的,谢谢您。