数值分析预备知识Matlab

上传人:ji****72 文档编号:51926360 上传时间:2018-08-17 格式:PPT 页数:60 大小:629KB
返回 下载 相关 举报
数值分析预备知识Matlab_第1页
第1页 / 共60页
数值分析预备知识Matlab_第2页
第2页 / 共60页
数值分析预备知识Matlab_第3页
第3页 / 共60页
数值分析预备知识Matlab_第4页
第4页 / 共60页
数值分析预备知识Matlab_第5页
第5页 / 共60页
点击查看更多>>
资源描述

《数值分析预备知识Matlab》由会员分享,可在线阅读,更多相关《数值分析预备知识Matlab(60页珍藏版)》请在金锄头文库上搜索。

1、Matlab 基础MATLAB主程序 MATLAB语言、工作环境、句柄图形、数学 函数库和应用程序接口MATLAB的功能性工具箱如: Simulink:动态系统仿真 MATLAB的学科性工具箱如:signal processing toolbox 信号处理工具 箱创建矩阵的方法 直接输入法 规则: 矩阵元素必须用 括住 矩阵元素必须用逗号或空格分隔 在 内矩阵的行与行之间必须 用分号分隔一、MATLAB数值运算数据类型示例1双精度型(Double)5, 6, 2+3i, 7.892字符型(char)hello,3+4i3单元型 (cell)1,good,3,2,14结构型(struct)A.N

2、ame;A.id5整型(int8,uint8,int32, uint32,etc.)5,6,76稀疏型(sparse)sparse(4)1 常用数据类型常用算符说明1+,-1. 相加、减的两矩阵必须有相同的行和列两矩阵对应元素相加减。2. 允许参与运算的两矩阵之一是标量。标量与矩阵的所有元素分别进行加减操作。 2*, (.*)1. A矩阵的列数必须等于B矩阵的行数2. 标量可与任何矩阵相乘 3, /(./,.)矩阵左除:AB, 定义:X=AB AX=B矩阵右除:B/A , 定义为:X=B/A XA=B 4,转置2 矩阵运算常用算符说明5,(.)乘方,定义:a p a 自乘p次幂当p为正整数时,

3、表示方阵自乘p次;当p为负整数时,表示方阵自乘p次后的逆;当p为零时,为方阵同维的单位阵。2 矩阵运算a=1 2 3;4 5 6;7 8 9; b=2 4 6;1 3 5;7 9 10; a.*b ans =2 8 18 4 15 30 49 72 90 a*b ans =25 37 46 55 85 109 85 133 172 算符说明关系 算符、=、= =(等于)、=(不等于)1.两个变量都是标量,则结果为真(1)或假 (0)。2.两个变量都是数组,则必须大小相同, 结果也是同样大小的数组,数组的元素 为0或1。3.一个数组和一个标量,则把数组的每个 元素分别与标量比较,结果为与数组大

4、小相同的数组,数组的元素为0或1。 4.、=,仅对参加比较变量的 实部进行比较, 5.= = 和 = ,则同时对实部和虚部进行比 较。3 关系与逻辑算符算符说明 逻辑 算符rho(1,:)=2*sin(5* theta).2; polar(theta,rho(1,:) %极坐标绘图函数定义行 文件的第一行,定义函数名,输入输出参数的数量 和名称。 H1行(可选) 帮助信息的第一行,紧跟定义行之后。 函数说明(可选) H1行以后,函数主体以前的帮助信息。 函数主体 函数中进行真正计算和输出赋值等工作的代码。 注释 函数体中用引导的对程序的注释。 函数文件格式函数文件格式function k=ra

5、nk(x) %RANKNumber of linearly independent rows or columns. %K = RANK(X) is the number of singular values of X %that are larger than MAX(SIZE(X) * NORM(X) * EPS. %K = RANK(X,tol) is the number of singular values of X that %are larger than tol. %Copyright (c) 1984-94 by The MathWorks, Inc.s = svd(x);

6、if (nargin = 1)tol = max(size(x) * max(s) * eps; end r = sum(s tol);例2. 变量和表达式变量命名规则变量名和函数名对字母的大小写敏感; 变量名的第一个字符必须是一个英文字母,最多可 包括31个字符; 变量名可由英文字母、数字和下划线混合组成 ;变量名中不得包含空格和标点,但可以有下连字符局部变量: 具有函数内部作用范围 全局变量: 可在几个函数和基本工作空间之间共享,具有全局作 用域全局变量的声明:global 变量名1 变量名2 变量名间用空格分离。全局变量在使用前必须在MATLAB工作空间中申明, 而在某个具体的MATLA

7、B函数中如果想用到该全局变 量时,也必须在函数中申明。局部变量和全局变量永久变量又称预定义变量(Predefined Variable)ans; eps; realmax; realmin; pi; i,j; inf; NaN; compter; flops; version; 注:禁止对永久变量重新赋值,以免产生混淆表达式变量 = 表达式MATLAB书写表达式的规则与“手写算式”几乎相同。例:20.3+3.9*sin(x);y=sin(x)+cos(x);x, y ,z=peaks3. 3. 程序结构程序结构 顺序结构 循环结构 分支结构顺序结构依照顺序执行程序的各条语句。语句在 程序文件中

8、的位置反映了程序的执行顺序。循环结构for-end循环while-end循环while循环将循环体中的语句循环执行不定次数。 语法:语法: while while 表达式表达式 循环体语句循环体语句 endend 语法:语法: for x =arrayfor x =array 可执行语句可执行语句 end end 例:利用for循环求1!+2!+3!+ +5!的值sum=0;for i=1:5pdr=1;for k=1:ipdr=pdr*k;endsum=sum+pdr;end例:用while循环求1100间整数的和sum=0;i=1;while i=1y=2*x.2;plot(x,y)els

9、eif -1 x= 0:0.01:10;l y=tan(x);l plot(x,y)ld. 极坐标图形的绘制 lMATLAB提供了polar函数 来在极坐标下绘制图形 :l x= 0:0.01:10;l y1=sin(x);l y2 = cos(x-2.5);l polar(y1,y2,-r+)le. 多个图形的绘制方法 lsubplot函数 可以实现 多个图形的绘制:l x = 0:.1:20;l subplot(2,2,1)l plot(x,sin(x);l x = 0:.1:20; subplot(2,2,2) plot(x,cos(x); 2. 图形注释 l图题的标注 l坐标轴的标签

10、l文本标注和交互式文本标注 l图例的添加 l 坐标网格的添加 l使用矩形或是椭圆在图形中圈出重要部分 (1) 图题的标注l在MATLAB中,通常可以使用3种方式给图 形添加图题:l使用Insert 菜单中的Title命令;l使用属性编辑器(Property Editor);l使用title函数。l x = 0:.1:2;ly1=sin(x);ly2 = sin(x-0.25); ly3 = sin(x-0.5);l plot(x,y1,-.b, x,y2,- r*, x,y3,-.gh)l title(There three lines)l(2) 坐标轴的标签 l在MATLAB 7中,可以使用

11、如下3种方式给 图形的坐标轴添加标签:l使用Insert菜单下的Label选项;l使用属性编辑器(Property Editor); l使用MATLAB 7的添加标签命令;坐标轴的标签添加举例l 使用属性编辑器(Property Editor)添加坐标轴标签l 打开Tools菜单,选择Edit Plot命令,激活图形编辑状态。l在图形框内双击空白区域,调出属性编辑器;也可以采取在图形 框内右击,从弹出的菜单中选择Properties 项的方式调出属性编辑 器;或者是在View菜单中选择Property Editor项。此处添加(3)文本标注和交互式文本标注l用户可以在MATLAB 7图形窗口的

12、任意地方添加 文本注释,从而更好地解释图形窗口的数据。 MATLAB 7提供了text函数和gtext函数来进行文本 标注。其中gtext函数的使用形式更为灵活,可以 实现交互式文本标注。 文本标注举例l x=linspace(- 3,5,100);l y=cos(x);l z=sin(x);l plot(x,y,x,z)l title(一条正弦曲线和 一条余弦曲线)l xlabel(x的取值范围)l ylabel(Y和Z的值)l(4)图例的添加l为了更好地区分所绘制的多条曲线,可以使用图 例加以说明,对它们表示的数据进行更准确的区 分。可以使用如下3种方法生成图例:l打开Insert 菜单中

13、并选择Legend命令;l单击工具栏中的legend图标;l使用legend函数。图例的添加 例(5)坐标网格的添加 l在图形绘制过程中,为了精确地知道图形上某点 的坐标,需要绘制坐标网格来定位,MATLAB 7 语言中提供了grid函数来实现这一功能:lgrid off命令关闭坐标网格; lgrid on命令打开坐标网格 lgrid mirror命令使用更细化的网格; lgrid(AX,)命令使用AX坐标系代替当前坐标系。 坐标网格的添加举例l x=linspace(-5,5,100);l y=x.4+22*x.2- 6*x+10;l plot(x,y)l grid onl(6) 使用矩形或

14、是椭圆形中圈出重要部分 l用户可以使用矩形或是椭圆在图形中圈出特别的 区域,从而使得该区域能引起特别的注意。当其 中的一个矩形或是椭圆被选中时,用户可以移动 并改变它的大小,或是右击它,在弹出的快捷菜 单中用户可以选择改变它的属性和外观。应用举例l当右击矩形或是椭圆时,将弹出一个菜单 3. 三维图形的绘制 lMATLAB语言提供了三维图形的处理功能。 与二维图形相似,绘制三维图形时可以使用 MATLAB语言提供的相关函数:l三维线图指令plot3 l三维网线图和曲面图 l三维网线图l三维曲面图(1)三维线图指令plot3 l % 该程序用于绘制三维的螺旋曲线图l t = 0:pi/50:20*

15、pi;l plot3(sin(t),cos(2*t),sin(t)+cos(t)(2) 三维网线图三维绘图可分为三个过程:l 生成平面网格点l 生成和绘制三维网格点l 处理三维表面。 使用mesh函数来绘制 三维网格图形: z=peaks(50); mesh(z); 三维网线图(3)三维曲面图 l可使用surf函数来绘制 三维表面图形 :l X,Y=meshgrid(- 4:0.2:4);l Z=exp(-0.5*(X.2 Y.2);l surf(X,Y,Z)u 熟练使用MATLAB帮助 u 熟悉MATLAB的工作环境 u 创建和修改矩阵 u 矩阵及数组运算 u 简单算法程序的编制 u 掌握简单作图指令要求

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


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

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