MATLAB(第三讲)
【matlab教学PPT】第3讲 Matlab的图形

ylabel(′y=sin2\pix′);%Y轴标注,可以有汉字 xlabel(′x′);%X轴标注,可以有汉字
第3讲 Matlab的图形 title(′functionploty=sin2\pix′);%图标题 text(0.5,sin(0.5),′\leftarrowsin2\pi0.5′);
第3讲 Matlab的图形 [例3] t=0:pi/20:2*pi; plot(t,sin(2*t),′-mo′,...%线型:实线,洋红色,小圆标记
′LineWidth′,2,...%线宽为2
′MarkerEdgeColor′,′k′,...%标记边缘颜色:黑色 ′MarkerFaceColor′,[.49 1 .63],...%标记面颜色:淡 绿 ′MarkerSize′,12)%标记大小:12 结果如图3所示。
6)坐标颜色控制 set(gca,′Color′,′y′)%坐标面背景颜色设置,本例为:黄 set(gca,′XColor′,′k′)%设置横坐标轴,刻度,字符的颜
色
set(gca,′YColor′,′r′)%设置纵坐标轴,刻度,字符的颜 色
第3讲 Matlab的图形 7)坐标刻度字形的控制 set(gca,′FontSize′,14)%控制字体大小
set(gca,′FontWeight′,′bold′)%设置字体粗细
%有{normal}|bold|light|demi四种 8)坐标位置和方向控制
set(gca,′XAxisLocation′,′top′)% 横 坐 标 轴 位 于 下 方 (bottom默认)
或上方(top)set(gca,′YAxisLocation′,′right′)%纵坐标轴 位于左方(left默认)或右方(right)set(gca,′XDir′,′reverse′)% 横坐标反方向(由右到左为增)set(gca,′YDir′,′reverse′)%纵 坐标反方向(由右到左为增)
第3讲Matlab的变量与矩阵

05:44
22/35
系统仿真
八、逻辑运算
MATLAB提供了3种逻辑运算符:&(与)、|(或)和~(非)
05:44
11/35
系统仿真
三、矩阵的元素提取与拆分
1、用矩阵元素的序号来引用矩阵元素。 矩阵元素的序号就是相应元素在内存中的排
列顺序。在MATLAB中,矩阵元素按列存储,先 第一列,再第二列,依次类推。
例如:A=[1,2,3;4,5,6]; A(3) ans =2
显然,序号(index)与下标(subscript )是一一对 应的,以m×n矩阵A为例,矩阵元素A(i,j)的序号 为(j-1)*m+i。其相互转换关系也可利用sub2ind和 ind2sub函数求得。
布
05:44
14/35
系统仿真
五、特殊矩阵(1)
1、魔术矩阵 魔术矩阵有一个有趣的性质,其每行、每列及两条对角
线上的元素和都相等。对于n阶魔术矩阵,其元素由 1,2,3,…,n×n共n×n个整数组成。MATLAB提供了求魔方 矩阵的函数magic(n),其功能是生成一个n阶魔方阵。 magic(n) n×n的魔术矩阵
一个逻辑运算函数: xor(异或)
逻辑运算的运算法则为:
(1) 在逻辑运算中,确认非零元素为真,用1表示,零元素 为假,用0表示。 (2) 设参与逻辑运算的是两个标量a和b,那么,
a&b a,b全为非零时,运算结果为1,否则为0。 a|b a,b中只要有一个非零,运算结果为1。 ~a 当a是零时,运算结果为1;当a非零时,运算结果 为0。
matlab教程(第3讲-数组)

2.1数值表示、变量及表达式 (续)
运算符和表达式
运算
加 减 乘 除 幂
数学表达式
a+b a-b axb a/b或a\b
MATLAB运算符
+ * /或 \ ^
MATLAB表达式
a+b a-b a*b a/b或a\b a^b
第二种方法:使用冒号“:”操作符
〘例2-2〙创建以1~10顺序排列整数为元素的 行向量b。>>b=1:10 b=1 2 3 4 5 6 7 8 9 10
2016/11/22 Application of Matlab Language 10
所有的向量元素必须在操作符“[ ]”之内; 向量元素间用空格或英文的逗点“,”分开。
计算
z
z3
z1=3+4*i, z2=1+2*i, z3=exp(i*pi/6), z=z1*z2/z3 z_real=real(z), z_image=imag(z), z_angle=angle(z), z_length=abs(z),
2016/11/22
Application of Matlab Language
第四种方法:利用函数logspace 列向量的创建
通过实验认识该函数的功能。
使用方括号“[ ]”操作符,使用分号“;”分 割行。
〘例2-5〙键入并执行x= [1; 2; 3] X=1 2 3
使用冒号操作符
〘例2-6〙键入并执行x= (1:3)‟ % “ ‟ ”表示矩阵的转 置
2016/11/22 Application of Matlab Language 13
MATLAB第3讲 MATLAB基本绘图

3.3 基本三维绘图
[X,Y]=meshgrid(-8:0.5:8,-8:0.5,8);
3.3 基本三维绘图
2、格式2:mesh(x,y,z) 功能:x,y,z 为三个矩阵, 以各元素值为三维坐标点绘图, 并连成网格。
3.3 基本三维绘图
例题 7 画一个球体 [xx,yy,zz]=sphere(30);
0
n
3.3 基本三维绘图
形成了33*33网 格矩阵
3.3 基本三维绘图
可以使用meshgrid()函数产生网格坐标:
格式:[X,Y]=meshgrid(x,y) x,y为同维向量,
X的行为x的拷贝,Y的列是y的拷贝,X,Y同维 例如:[xx,yy]=meshgrid([ 1 2 3 4],[1 2 3 4])
3.3 基本三维绘图
3、格式3:plot3(x,y,z,’s’) plot3(x1,y1,z1,’s1’,x2,y2,z2,’s2’) 功能:用于设置绘图颜色和线型 字符串意义同plot。
例如:plot3(x,y,z,’*r’,x,z,y,’:b’)
3.3 基本三维绘图
例题 2
3.3 基本三维绘图
3、hidden on(off) ----隐藏或透视被遮挡的地方
视角变换与三视图
三维图形绘制中的视角定义
z轴
视点
y轴
仰角
方位角
x轴
3.3 基本三维绘图
3. 4 特殊三维绘图 特殊图形库(specgraph)
1、stem3(x,y,z) ----- 三维火柴杆图: 例如:stem3(x,y,z) 2、bar3(z) ------ 三维条形图(同二维) 例如:bar3([1 2 3 2 1]) 3、pie3 (x,p)------ 三维饼图(同二维): 例如:pie3([1 2 3 2 1 1 ],[0 0 1 0 0 0]) 还有其它特殊函数。。。
matlab求解代数方程组解析

第三讲 Matlab 求解代数方程组理论介绍:直接法+迭代法,简单介绍相关知识和应用条件及注意事项 软件求解:各种求解程序讨论如下表示含有n 个未知数、由n 个方程构成的线性方程组:11112211211222221122n n n n n n nn n na x a x a xb a x a x a x b a x a x a x b +++=⎧⎪+++=⎪⎨⎪⎪+++=⎩ (1)一、直接法 1.高斯消元法:高斯消元法的基本原理: 在(1)中设110,a ≠将第一行乘以111,k a a -加到第(2,3,,),k k n = 得: (1)(1)(1)(1)11112211(2)(1)(2)22112(2)(2)(2)22n n n n n nn n n a x a x a x b a x a x b a x a x b ⎧+++=⎪++=⎪⎨⎪⎪++=⎩(2)其中(1)(1)1111,.k k aa b b ==再设(2)220,a ≠将(2)式的第二行乘以(2)2(2)22,(3,,)k a k n a -= 加到第k 行,如此进行下去最终得到:(1)(1)(1)(1)11112211(2)(1)(2)22112(1)(1)(1)1,111,1()()n n n n n n n n n n n n n n n n nn n n a x a x a x b a x a x b a x a x b a x b --------⎧+++=⎪++=⎪⎪⎨⎪+=⎪⎪=⎩(3) 从(3)式最后一个方程解出n x ,代入它上面的一个方程解出1n x -,并如此进行下去,即可依次将121,,,,n n x x x x - 全部解出,这样在()0(1,2,,)k kk a k n ≠= 的假设下,由上而下的消元由下而上的回代,构成了方程组的高斯消元法. 高斯消元法的矩阵表示:若记11(),(,,),(,,)T T ij n n n n A a x x x b b b ⨯=== ,则(1)式可表为.Ax b =于是高斯消元法的过程可用矩阵表示为:121121.n n M M M Ax M M M b --=其中:(1)21(1)111(1)1(1)11111n a a M a a ⎛⎫ ⎪ ⎪- ⎪=⎪ ⎪ ⎪ ⎪- ⎪⎝⎭ (2)32(2)222(2)2(2)221111n a a M a a ⎛⎫⎪⎪ ⎪-⎪=⎪ ⎪ ⎪⎪- ⎪⎝⎭高斯消元法的Matlab 程序: %顺序gauss 消去法,gauss 函数 function[A,u]=gauss(a,n) for k=1:n-1%消去过程 for i=k+1:n for j=k+1:n+1%如果a(k,k)=0,则不能削去 if abs(a(k,k))>1e-6 %计算第k 步的增广矩阵 a(i,j)=a(i,j)-a(i,k)/a(k,k)*a(k,j); else%a(k,k)=0,顺序gauss 消去失败 disp (‘顺序gauss 消去失败‘); pause; exit; end end end end%回代过程 x(n)=a(n,n+1)/a(n,n); for i=n-1:-1:1 s=0; for j=i+1:n s=s+a(i,j)*x(j); endx(i)=(a(i,n+1)-s)/a(i,i); end%返回gauss 消去后的增广矩阵 A=triu(a); %返回方程组的解 u=x ;练习和分析与思考: 用高斯消元法解方程组:12345124512345124512452471523814476192536x x x x x x x x x x x x x x x x x x x x x x ++++=⎧⎪+++=⎪⎪++++=⎨⎪+++=⎪+++=⎪⎩2.列主元素消元法在高斯消元法中进行到第k 步时,不论()k ik a 是否为0,都按列选择()||(,,)k ik a i k n = 中最大的一个,称为列主元,将列主元所在行与第k 行交换再按高斯消元法进行下去称为列主元素消元法。
matlab第三讲

sinh(x) asinh(x) sind(x) asind(x)
练 习
(1) (2) (3) (4) (5) (6)
sin(2x), x=3π cos(x), x的范围 [0,2π],步长为0.2π x的范围 [0,2π],步长为0.2π arcsin(1) arccos(x),x的范围[ 1,1],步长为0.2 arccos(x),x的范围[-1,1],步长为0.2 求450角的余弦值 求0.5的反正弦值,注意区分结果为角度还是弧 0.5的反正弦值,注意区分结果为角度还是弧 度。
Matlab中的函数 Matlab中的函数
MATLAB中的许多内置函数由三部分组成:名称、 MATLAB中的许多内置函数由三部分组成:名称、 输入和输出。输入也称为自变量,自变量既可以 是标量也可以是矩阵。 函数的嵌套 eg: a=sqrt(sin(x)) 函数嵌套会导致MATLAB编码变得复杂化,为了 函数嵌套会导致MATLAB编码变得复杂化,为了 简化,往往把函数嵌套分解成两个赋值语句: a=sin(x) b=sqrt(a)
Sort(x,’ descend’ Sort(x,’ descend’) 各列按降序排列。 Sortrows(x) Sortrows(x,n)
数据分析函数-规模函数 数据分析函数-
size(x) 求矩阵x的行数和列数。若x 求矩阵x的行数和列数。若x为多维数组, 则size用来求数组的维数和长度。 size用来求数组的维数和长度。
练
习
(1)求322的因数 )求322的因数 (2)找出322和6的最大公约数 )找出322和 (3)检验322是否为素数 )检验322是否为素数 (4)计算从0到322之间素数的个数 )计算从0 322之间素数的个数 (5)用分数近似表示π )用分数近似表示π (6)求10的阶乘10! )求10的阶乘10!
MATLAB编程

高
关系 数组 逻辑 先决 逻辑
低
MATLAB编程与应用基础
赋值语句=优先级最低
第五章
MATLAB编程
操作符优先级举例
• • • • • >>x=3,b=(x>=1:5) >>x=3,b=x>=1:5 >>x=3,b=1:x>=5 >>x=3,x*1:5>=x.*0.5 >>x=3,b=3;x&b>2
a=28;b=11 a=28;b=11 28 c=**(a,b) a→11100 b→01011
a数位非
数位异或
Hale Waihona Puke MATLAB编程与应用基础
第五章
MATLAB编程
级别
操作符
类别
1 2 3 4 5 6 7 8 9 10 11
括号() 括号() 转置. ,共轭转置‘ 点幂.^ 转置.’,共轭转置‘,幂^,点幂.^ 代数正+ 代数负- 逻辑非~ 代数正+,代数负-,逻辑非~ 点乘.* 点除./. .*, ./.\ 乘*,除\/,点乘.*,点除./.\ 加+,减冒号运算: 冒号运算: 关系运算:>,<,= 关系运算:>,<,= =,>=,<=,~= 数组& 数组| 先决&& 先决或|| 数组 运算
>>a = 3 >>b = 2;
MATLAB编程与应用基础
第五章
MATLAB编程
3.1 M文件编程基础
3.1.2 M文件编写和运行
点击MATLAB桌面上 图标,弹出M文件编辑器。 将指令写入M文件编辑调试器的空白框中(通常在空白框第一行 写入包含文件名的注释)。 点击M文件编辑器的 图标,并在保存对话框中填写目录和文件 名,再按【保存】键,脚本文件即存于指定的目录上。
(完整版)matlab第三讲教案

西南科技大学本科生课程备课教案计算机技术在安全工程中的应用——Matlab入门及应用授课教师:徐中慧班级:专业:安全技术及工程第三章课型:新授课教具:多媒体教学设备,matlab教学软件一、目标与要求掌握matlab中内置的初等数学函数、三角函数、数据分析函数等函数的运用。
二、教学重点与难点本堂课教学的重点在于引导学生在命令窗口进行一些简单的计算,对matlab初等的数学函数能够熟练运用,并能写一些matlab的简单程序解决实际问题。
三、教学方法本课程主要通过讲授法、演示法、练习法等相结合的方法来引导学生掌控本堂课的学习内容。
四、教学内容一、课程内容回顾上节课主要学习了数据显示格式、复数的运算、算术运算等。
(1)短数据格式和长数据格式之间的显示切换(2)15+16i,求该复数的模和辐角,实部与虚部(3)[1:3;2:4;3:5],求矩阵的转置初等数学函数包括对数函数、指数函数、绝对值函数、四舍五入函数和离散数学中的函数。
我们今天课程的任务就是掌握这些函数的运用。
二、常用的数学函数练 习创建矢量x,在-9到12之间,步长为3 (1)求x 除以2的商 (2)求x 除以2的余数 (3)e x(4)求x 的自然对数ln(x) (5)求x 的常用对数lg(x)(6) 用函数sign 确定矢量x 中哪些元素为正 (7)将显示格式变为rat ,显示x 除以2的结果 Eg: x=-9:3:12;(1) x/2;(2) rem(x,2);(3)exp(x);(4)log(x );(5)log10(x);(6)sign(x);(7)format rat;x/2三、取整函数Matlab 中有几种不同的取整函数。
其中最常用的是四舍五入。
然而取上近似还是取下近似要根据实际情况而定。
例如,在杂货店买水果,苹果0.52美元一个,5美元能买几个?5.009.61540.52/=苹果苹果但是在现实生活中,显然不能买半个苹果,而且也不能四舍五入到10.所以,只能向下取近似值9.四、离散数学中的函数离散数学就是有关数的数学,也就是中学代数里的因式分解、求最大公因数和最小公倍数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
surf 作图举例
>> >> >> >> [X,Y]=meshgrid(-8:0.5:8); r=sqrt(X.^2+Y.^2)+eps; Z=sin(r)./r; surf(X,Y,Z)
mesh 与 surf 的比 较
sphere (球面)作图
在曲线旁边标出各曲线的函数;给出图像的标题,x轴与y轴的 坐标说明。
空间三维曲线
三维曲线 : plot3
设三维曲线的参数方程为:x=x(t),y=y(t),z=z(t), 则其图形可由下面的命令绘出:
plot3(x,y,z,’s’)
例:三维螺旋线 t=[0:0.1:10*pi]; x=2*t; y=sin(t); z=cos(t); plot3(x,y,z); t=[0:0.1:10*pi]; x=t.*sin(t); y=t.*cos(t); z=t; plot3(x,y,z,’r*-.’);
Matlab 图形绘制功能
二维图形
同时绘制多个函数图像
plot(x1,y1,s1,x2,y2,s2, ... ,xn,yn,sn) 等价于: hold on plot(x1,y1,s1) plot(x2,y2,s2) ... plot(xn,yn,sn) 属性选项 可以省略
对数坐标图形
Matlab 的特点与功能
Matlab 是一个交互式软件系统
输入一条命令,立即就可以得出该命令的结果
Matlab 具有很强的数值计算功能
Matlab 以矩阵作为数据操作的基本单位,但无需预先指定 矩阵维数(动态定维)
按照 IEEE 的数值计算标准进行计算 提供十分丰富的数值计算函数,方便计算,提高效率 Matlab 命令与数学中的符号、公式非常接近,可读性强, 容易掌握
plot3的用法与 plot 类似
Matlab 空间曲线绘图举例 例:三维 x=t, y=sin(t), z=cos(t), 0 < t < 20 螺线
先画点,后连线
1) 给出空间离散点的坐标 (x,y,z) 2) 将这些点按顺序连接即可
空间曲线作图举例
>> >> >> >> t=[0:0.5:20]; x=t; y=sin(t); z=cos(t);
坐标控制
axis函数的调用格式为:
axis([xmin xmax ymin ymax( zmin zmax)])
axis函数功能丰富,常用的格式还有: axis equal:纵、横坐标轴采用等长刻度。 axis square:产生正方形坐标系(缺省为矩形)。 axis auto:使用缺省设置(默认)。 axis off:取消坐标轴。 axis on:显示坐标轴
图形的属性
划分绘图区域 subplot(m,n,p) 将一个绘图窗口分割成 m*n 个子区域,并 按行 从左至 右 依次编号 。p 表示第 p 个绘图子区域。
例:>> x=-pi:pi/10:pi;
>> >> >> >> subplot(2,2,1);plot(x,sin(x)); subplot(2,2,2);plot(x,cos(x)); subplot(2,2,3);plot(x,x.^2); subplot(2,2,4);plot(x,exp(x));
如果没有给出 n 的值, 则系统默认为 n=20
meshz 调用方式与 mesh 相同,在 mesh 基础上屏蔽边界面
空间曲面作图举例
例:“墨西哥帽子”
由函数 z sin( r ) / r, 其中 r x 2 y 2 确定的曲面
( –a < x < a, -a < y <a )
a=8 时的曲 空间曲面作图举例
[X,Y]=meshgrid([8:0.5:8]); x=[-8:0.5:8]; x=[-8:0.1:8]; y=[-8:0.5:8]; y=[-8:0.1:8]; [X,Y]=meshgrid(x,y); Z=x‘*sin(y); mesh(x,y,Z); r=sqrt(X.^2+Y.^2)+e [X,Y]=meshgrid(x,y); ps; r=sqrt(X.^2+Y.^2)... +eps; Z=sin(r)./r; Z=sin(r)./r; 1) x 与 y 可以取不同的步长 mesh(X,Y,Z) mesh(X,Y,Z)
二维统计分析图
饼图
pie(y) 向量y的每一个元素占一个扇形, 矩阵y的每一个元素占一个扇形,按列方向排列
例:
y=[30 48 36 20 12]; pie(y); x=magic(3),pie(x) xx=[0.02 0.036 .45 .09] pie(xx)
二维统计分析图
离散数据图
stem(y) 或 stem(x,y,’fill’,’ห้องสมุดไป่ตู้string’) fill 填充数据点处的小圆点
空间曲面
空间曲面其它作图函数
surf(X,Y,Z) 绘制由矩阵 X,Y,Z 所确定的曲面图,参数含义同 mesh mesh 绘制网格图,surf 绘制着色的三维表面图 sphere(n) 专用于绘制单位球面
[X,Y,Z]=sphere(n) X,Y,Z是返回的(n+1)×(n+1)单位矩阵点列
MATLAB
Matlab 简介
Matlab是一种广泛应用于工程计算及 数值分析领域的新型高级语言,自 1984 年推向市场以来,历经二十多年的发展 与竞争,现已成为国际公认的最优秀的 工程应用开发环境。 在欧美各高等院校,Matlab 已经成为线性代数、数值分 析、数理统计、自动控制理论、数字信号处理、时间序列分 析、动态系统仿真、图像处理等课程的基本教学工具,已成 为大学生必须掌握的基本技能之一。Matlab 功能强大、简 单易学、编程效率高,深受广大科技工作者的欢迎。
2) 注意这里采用的数组运算 最后一个命令能否改为 mesh(Z)?
面图形
空间曲面作图举例
例:绘制等高线 meshc [X,Y]=meshgrid(-8:0.5:8); r=sqrt(X.^2+Y.^2)+eps; Z=sin(r)./r; meshc(X,Y,Z)
空间曲面作图举例
例:绘制边界面屏蔽 meshz [X,Y]=meshgrid(-8:0.5:8); r=sqrt(X.^2+Y.^2)+eps; Z=sin(r)./r; meshz(X,Y,Z)
空间三维曲面
空间曲面 : peaks(n)
空间三维作图
绘制由函数 z=z(x,y) 确定的曲面时,首先需产生一个网格 矩阵,然后计算函数在各网格点上的值。 网格生成函数:meshgrid [X,Y]= meshgrid(x,y) x, y 为给定的向量,X, Y 是网格划分后得到的网格矩阵 若 x = y, 则可简写为 [X,Y]= meshgrid(x)
x1 n x2 n xmn
z11 z 21 Z zm 1
z12 z22 zm 2
z1n z2 n zmn
线: 分别沿 x 方向和 y 方向
连接这些点即可得到
空间曲面作图举例
例:画出下列函数的图像
空间曲面作图
先画点 (x,y,z),后连线,构成曲面网格图
点: ( xij , yij , zij )
x11 x X 21 xm 1 x12 x22 xm 2
i 1,, m, j 1,, n
y11 y Y 21 ym1 y12 y22 ym 2 y1n y2 n ymn
对函数自适应采样的绘 图函数
fplot函数的调用格式为:
fplot(fname,lims,tol,选项)
例:
其中fname为函数名,以字符串形式出现, lims为x,y的坐标轴取值范围,tol为相 对允许误差,其系统默认值为2e-3。
x=-1:0.1:1 y=cos(1./x);plot(x,y);figure fplot(‘cos(1./x)’,[-1,1])
二维统计分析图
条形图 bar(x,y) 或 bar(x,y,’style’) style的可选项有二:group 和 stack
例:
y=rand(6,4)*8; subplot(2,2,1);bar(y) subplot(2,2,2);bar(y,‘stack’) subplot(2,2,3);barh(y,‘stack’)
例: x=[-8:0.5:8], y=[-8:0.5:8] plot(x,y,'d') figure [X,Y]=meshgrid(x,y) plot(X,Y,'*')
空间三维曲面
空间曲面 mesh, meshc, meshz
mesh(X,Y,Z,C) 绘制由矩阵 X,Y,Z 所确定的曲面网格图, 矩阵 C 用于确定网格颜色,省略时 C=Z。 mesh(Z) 以Z的元素为Z坐标,行列下标分别为X,Y坐标。 mesh(x,y,Z) x, y 是向量时,length(x)=n,length(y)=m,[m,n]=size(Z) meshc 调用方式与 mesh 相同,在 mesh 基础上增加等高线
MATLAB提供了绘制对数和半对数坐标 曲线的函数,调用格式为:
semilogx (x1,y1,选项1,x2,y2,选项2,…) semilogy (x1,y1,选项1,x2,y2,选项2,…) loglog (x1,y1,选项1,x2,y2,选项2,…)