[理学]数值分析课件

上传人:油条 文档编号:34135018 上传时间:2018-02-21 格式:DOC 页数:50 大小:208KB
返回 下载 相关 举报
[理学]数值分析课件_第1页
第1页 / 共50页
[理学]数值分析课件_第2页
第2页 / 共50页
[理学]数值分析课件_第3页
第3页 / 共50页
[理学]数值分析课件_第4页
第4页 / 共50页
[理学]数值分析课件_第5页
第5页 / 共50页
点击查看更多>>
资源描述

《[理学]数值分析课件》由会员分享,可在线阅读,更多相关《[理学]数值分析课件(50页珍藏版)》请在金锄头文库上搜索。

1、0 Matlab 介绍入门知识1. Matlab简介MATLAB的含义是矩阵实验室(MATRIX LABORATORY),主要用于方便矩阵的存取,其基本元素是无须定义维数的矩阵.MATLAB自问世以来,就是以数值计算著称.MATLAB进行数值计算的基本单位是复数数组(或称阵列),这使得MATLAB高度“ 向量化 ”.经过十几年的完善和扩充,现已发展成为线性代数课程的标准工具.由于它不需定义数组的维数,并给出矩阵函数、特殊矩阵专门的库函数,使之在求解诸如信号处理、建模、系统识别、控制、优化等领域的问题时,显得大为简捷、高效、方便,这是其它高级语言所不能比的.MATLAB中包括了被称作工具箱(TO

2、OLBOX)的各类应用问题的求解工具.工具箱实际上是对MATLAB进行扩展应用的一系MATLAB函数(称为M文件),它可用来求解各类学科的问题,包括信号处理、图象处理、控制系统辨识、神经网络等.随着MATLAB版本的不断升级,其所含的工具箱的功能也越来越丰富,因此,应用范围也越来越广泛,MATLAB提供的工具箱已覆盖信号处理、系统控制、统计计算、优化计算、神经网络、小波分析、偏微分方程、模糊逻辑、动态系统模拟、系统辨识和符号运算等领域.当前它的使用范围涵盖了工业、电子、医疗、建筑等各行各业.MATLAB中包括了图形界面编辑GUI,让使用者也可以象VB、VC、VJ、DELPHI等那样进行一般的可

3、视化的程序编辑.在命令窗口(matlab command window)键入simulink,就出现(SIMULINK) 窗口.以往十分困难的系统仿真问题,用SIMULINK只需拖动鼠标即可轻而易举地解决问题,这也是近来受到重视的原因所在.MATLAB 语言由美国 The MathWorks 开发,最早是由C.Moler用Fortran语言编写的,用来方便地调用LINPACK和EISPACK矩阵代数软件包的程序.后来他创立了MATHHWORKS公司,对MATLAB作了大量的、坚持不懈的改进.Cleve B.Moler是The MathWork公司的主席和首席科学家.曾任密西根大学教授.他在两个

4、计算机硬件制造商Intel公司的Hypercube组织和Arden Computers 公司工作了五年.他的主要专业兴趣在于数值分析和科学计算.他是MATLAB软件的创始者,也是著名的矩阵计算软件包LINPACK和EISPACK的创作者之一,已撰写了三本有关数值方法的教材.同时,他在SIAM(美国工业与应用数学学会)历任期刊编辑、委员会成员和副总裁,并从1996年开始担任理事会成员.2. Matlab 入门知识Matlab变量名是以字母开头,后接字母、数字或下划线的字符序列,最多 63个字符.在 MATLAB中,变量名区分字母的大小写.赋值语句:变量=表达式 或 表达式其中表达式是用运算符将有

5、关运算量连接起来的式子,其结果是一个矩阵.clear命令用于删除MATLAB工作空间中的变量.who和whos这两个命令用于显示在MATLAB工作空间中已经驻留的变量名清单.who命令只显示出驻留变量的名称,whos在给出变量名的同时,还给出它们的大小、所占字节数及数据类型等信息.利用MAT文件可以把当前MATLAB工作空间中的一些有用变量长久地保留下来,扩展名是.mat.MAT文件的生成和装入由save和load命令来完成.常用格式为:save 文件名 变量名表 -append-asciiload 文件名 变量名表 -ascii其中,文件名可以带路径,但不需带扩展名.mat,命令隐含一定对.

6、mat文件进行操作.变量名表中的变量个数不限,只要内存或文件中存在即可,变量名之间以空格分隔.当变量名表省略时,保存或装入全部变量.-ascii选项使文件以ASCII格式处理,省略该选项时文件将以二进制格式处理.save命令中的-append选项控制将变量追加到MAT文件中.(1) 向量的创建用步长生成法:数组=初值 :步长( 增量 ):终值 a=1:0.5:3a =1.0000 1.5000 2.0000 2.5000 3.0000用 linspace 生成:数组=linspace(初值 ,终值,等分点数目) b=linspace(1,3,5)b =1.0000 1.5000 2.0000

7、2.5000 3.0000列向量用分号(;)作为分行标记: c=1;2;3;4;c =1234若不想输出结果,在每一条语句后用分号作为结束符,若留空或用逗号结束,则在执行该语句后会把结果输出来. a+b; a+bans = 2 3 4 5 6(2) 矩阵的创建直接输入:最简单的建立矩阵的方法是从键盘直接输入矩阵的元素.具体方法如下:将矩阵的元素用方括号括起来,按矩阵行的顺序输入各元素,同一行的各元素之间用空格或逗号分隔,不同行的元素之间用分号分隔. A=1 2 3;4 5 6;2 3 5A =1 2 34 5 62 3 5利用矩阵函数创建: B=magic(3)%魔方阵B =8 1 63 5

8、74 9 2 C=hilb(3)%3 阶 Hilbert 矩阵C =1.0000 0.5000 0.33330.5000 0.3333 0.2500 0.3333 0.2500 0.2000Matlab 中用%引导注释其它创建矩阵函数还有:eye(m,n):生成 m 行 n 列单位矩阵.zeros(m,n):生成 m 行 n 列全零矩阵.ones(m,n):生成全 1 矩阵.rand(m,n):生成随机矩阵 .rand:生成一个随机数.diag(A):取 A 的对角线元素.tril(A):取 A 的下三角元素.triu(A):取 A 的上三角元素.hilb(n):生成 n 维 Hilbert

9、矩阵.randn(n):产生均值为 0,方差为 1的标准正态分布随机矩阵.vander(V):生成以向量 V为基础向量的范得蒙德矩阵.invhilb(n): 求n阶的希尔伯特矩阵的逆矩阵.toeplitz(x,y): 生成一个以x为第一列,y为第一行的托普利兹矩阵compan(p): 生成伴随矩阵, p是一个多项式的系数向量,高次幂系数排在前,低次幂排在后.pascal(n): 生成一个n阶帕斯卡矩阵.compan: 生成伴随矩阵(3) 矩阵运算MATLAB的基本算术运算有:(加)、(减)、*(乘)、/(右除)、(左除)、(乘方).加法: A+Bans =9 3 97 10 136 12 7减

10、法: B-Aans =7 -1 3-1 0 12 6 -3乘法: A*Bans =26 38 2671 83 7145 62 43除法: magic(3)/hilb(3)ans =1.0e+003 *0.2160 -1.1760 1.14000.0570 -0.4080 0.4500-0.2280 1.2240 -1.1400在MATLAB中,有一种特殊的运算,因为其运算符是在有关算术运算符前面加点,所以叫点运算.点运算符有.*、./、.和.两矩阵进行点运算是指它们的对应元素进行相关运算,要求两矩阵的维参数相同. A.*Bans =8 2 1812 25 428 27 10MATLAB提供了6

11、种关系运算符:(大于)、=(大于或等于)、=(等于)、=(不等于). ABans =0 1 01 0 00 0 1MATLAB提供了3种逻辑运算符:&(与)、|(或)和(非).在逻辑运算中,确认非零元素为真,用1表示,零元素为假,用0表示.设参与逻辑运算的是两个标量a和b,那么,a&b a,b全为非零时,运算结果为1,否则为0.a|b a,b中只要有一个非零,运算结果为1.a 当a是零时,运算结果为1;当a非零时,运算结果为0.3. 矩阵操作和矩阵函数矩阵通过下标引用矩阵的元素,矩阵元素的序号就是相应元素在内存中的排列顺序.在MATLAB中,矩阵元素按列存储,先第一列,再第二列,依次类推.(1

12、) 矩阵拆分利用冒号表达式获得子矩阵.A(:,j)表示取A矩阵的第j列全部元素;A(i,:)表示A矩阵第i行的全部元素;A(i,j)表示取A矩阵第i行、第j列的元素.A(i:i+m,:)表示取A矩阵第ii+m行的全部元素;A(:,k:k+m)表示取A矩阵第kk+m列的全部元素,A(i:i+m,k:k+m)表示取A矩阵第ii+m行内,并在第kk+m列中的所有元素.此外,还可利用一般向量和end运算符来表示矩阵下标,从而获得子矩阵.end表示某一维的末尾元素下标.(2) 利用空矩阵删除矩阵的元素在MATLAB中,定义为空矩阵.给变量X赋空矩阵的语句为X=.(3) 矩阵的转置转置运算符是单撇号().

13、(4) 矩阵的旋转利用函数rot90(A,k)将矩阵A旋转90o的k倍,当k为1时可省略.(5) 矩阵的左右翻转对矩阵实施左右翻转是将原矩阵的第一列和最后一列调换,第二列和倒数第二列调换,依次类推.MATLAB对矩阵A实施左右翻转的函数是fliplr(A).(6) 矩阵的上下翻转MATLAB对矩阵 A实施上下翻转的函数是 flipud(A).(7) 方阵 A的逆矩阵 inv(A) A=magic(3)A =8 1 63 5 74 9 2 B=inv(A)B =0.1472 -0.1444 0.0639 -0.0611 0.0222 0.1056-0.0194 0.1889 -0.1028 A*

14、Bans =1.0000 0 -0.0000-0.0000 1.0000 00.0000 0 1.0000(8) 方阵的行列式 det(A)ans =-360(9) 矩阵的迹 C=trace(A)C =15(10) 一些常用的基本初等三角函数三角函数:sin(x),cos(x),tan(x)反三角函数:asin(x),acos(x),atan(x)指数函数:exp(x)自然对数:log(x)常用对数:log10(x)以 2 为底的对数:log2(x)开平方:sqrt(x)绝对值:abs(x)计算一般函数值:eval(f)求虚部函数: imag(x)求实部函数: real(x)角相位函数:ang

15、le(x)共轭复数函数:conj(x)沿零方向取整 :fix (x)舍入取整:round(x)沿负无穷大方向取整:floor (x)沿正无穷大方向取整:ceil(x)求除法的余数: rem 符号函数:sign(x)最大公约数:gcd()4. 图形可视化(1) 二维绘图指令 plotplot 函数的基本调用格式为:plot(x,y,)其中 x 和 y 为长度相同的向量,分别用于存储 x 坐标和 y 坐标数据.plot(x)plot 函数最简单的调用格式.当 x 是实向量时,以该向量元素的下标为横坐标,元素值为纵坐标画出一条连续曲线.实际上是绘制折线图.plot(x1,y1,x2,y2,xn,yn)当输入参数都为向量时,x1 和 y1,x2 和 y2,xn和 yn 分别组成一组向

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号