第4章MATLAB课件

合集下载

《Matlab编程》PPT课件

《Matlab编程》PPT课件

• switch S(i).Marks
• case 100
• S(i).Rank='满分';
• case a
• S(i).Rank=' 优秀';
• case b
• S(i).Rank=' 良好';
• case c
• S(i).Rank=' 及格';
• otherwise • S(i).Rank='不及格'; • end • end •% • disp(['学生姓名 ',' 得分 ',' 等级']);disp(' ') • for i=1:5; • disp([S(i).Name,blanks(6),num2str(S(i).Marks),blanks(6),S(i).R
例4-4
• if c>='A' & c<='Z'
• disp(setstr(abs(c)+abs(‘a’)-abs(‘A’))); % char代替setstr
• elseif c>='a'& c<='z'

disp(setstr(abs(c)- abs('a')+abs('A')));
• elseif c>='0'& c<='9'
if m==m1*m1*m1+m2*m2*m2+m3*m3*m3

disp(m)

end
• end
• 例4-9 已知

matlab编程基础与工程应用第四章PPT课件

matlab编程基础与工程应用第四章PPT课件

clear;clc;
%直接赋值法一:生成元胞数组
a(1,1)={[1 3 6;4 7 9;2 5 8]};
a(1,2)={'Hello'};
a(2,1)={(0:0.2:pi)};
a(2,2)={52};
a
2021/3/9
授课:XXX
4
%直接赋值法二:生成元胞数组
b={randn(2,3),'Carrot'; 1+2i,1:20}
在命令行窗口输入下列命令
>> A=cell(2)
%建立22空元胞数组
A=
[] []
[] []
>> B=cell(3,4)
%建立34空元胞数组
B=
[] [] [] []
[] [] [] []
[] [] [] []
>> C=cell(2,3,4)
%建立多维空元胞数组
C(:,:,1) =
[] [] []
[] [] []
2021/3/9
授课:XXX
10
“元胞标识”:以二维元胞数组a为例,a(2,1)是指中的第 2行第1列的元胞元素;
cell函数的语法为: c = cell(n);建立nn的空元胞数组。 c = cell(m, n)或c = cell([m, n]);建立mn的空元胞数组。 c = cell(size(A));建立与A数组同样尺寸的空元胞数组
2021/3/9
授课:XXX
8
【例4.1-3】用cell函数建立元胞数组
%直接赋值法三:生成元胞数组
c=[{randn(2,3)},{'Carrot'};{1+2i},{1:20}]

精品课件-信号、系统分析与控制(MATLAB版)-第4章 连续信号的频域分析

精品课件-信号、系统分析与控制(MATLAB版)-第4章 连续信号的频域分析

(1)在调用函数fourier()及ifourier()函数之前,要用syms命令对 所有需要用到的变量(如t,u,v,w)等进行说明,即要将这些变量 说明成符号变量。对fourier( )中的f及ifourier( )中的F也要用 符号定义符sym将其说明为符号表达式。
(2)采用fourier()及fourier( )得到的返回函数,仍然为符号表达
• 1. 线性
F[ax(t) by(t)] aF[x(t)] bF[ y(t)] aX () bY()
• 设a、b为常数,则 (4.2.3)
• 利用傅氏变换的线性特性,可以将待求信号分解为若F[ 干x(t 基t0 )本] e信 jt0号X (之) 和。
• 2. 时移(时延)
• 时延(移)性说明波形在时间轴上的F时1[X延(。 设0 )] etj00t x为(t) 实常数,则
称为复数频谱。周期信号复数频谱图的特点如下: n (1)用指数函数展开的周期信号,为双边频谱图,
n
即频谱线左右对称于0频率(即直流分量),
出现在频率的正负半轴。其双边频谱图,如图4-1-3和图4-1-7所示。
(2)引入了负频率变量X-n,它没有物理意义,只是数学推导,负半 轴频上率2的。π 谱只线有是把复正数、共负轭频部率分项,成与对正地半合轴并对起应来的,谱才线是B 共实2同际π 合的成频实谱际函的数。 每个分 量的幅度一分为二,在正、负频率相对应的位置上各为一半, 即每个分量的幅度是正、负频率之和。

第4页
2. 连续周期三角波信号
• 周期三角波1信x(t)号如图4-1-C4所n 示,(傅n4里)j2叶sin级( n数2展) 开得:n 0
-2 -1 0 1 2 -1
t
0

MATLAB-第4章

MATLAB-第4章

v
i 1
n
2 i


max { vi } 。
1 ≤i ≤n
设 A 是一个 m ×n 的矩阵,矩阵的 3 种常用范数如下。 1-范数: A 1 max { aij } 。
1 ≤ j ≤n i 1 m
2-范数: A 2 1 ,其中 λ 1 为 A'A 最大特征值。 ∞-范数: A max { aij } 。
【例4.6】先建立5 × 5矩阵A,然后将A的第一行元素乘以1, 第二行乘以2,…,第五行乘以5。 用一个对角矩阵左乘一个矩阵时,相当于用对角阵的第一个 元素乘以该矩阵的第一行,用对角阵的第二个元素乘以该 矩阵的第二行……依此类推,因此,只需按要求构造一个 对角矩阵D,并用D左乘A即可。命令如下: A=[1:5;2:6;3:7;4:8;5:9] D=diag(1:5); D*A %用D左乘A,对A的每行乘以一个指定常数
(2)构造对角矩阵 设V为具有m个元素的向量,diag(V,k)的功能是产生一个 n × n(n = m + k|)对角阵,其第k条对角线的元素即为 向量V的元素。 例如: diag(1:3,-1) ans = 0 0 0 0 1 0 0 0 0 2 0 0 0 0 3 0 省略k时,相当于k为0,其主对角线元素即为向量V的元素。
2.矩阵的秩与迹 (1)矩阵的秩 rank(A) (2)矩阵的迹 矩阵的迹即矩阵的对角线元素之和。 trace(A)。
3.向量和矩阵的范数
设向量 V = (v1 ,v2 ,…,vn ),向量的 3 种常用范数如下。 1-范数: V 2-范数: V ? -范数: V
1
vi 。
i 1
n
2

3.矩阵的转置 所谓转置,即把源矩阵的第一行变成目标矩阵第一列,第二 行变成第二列……依此类推。显然,一个m行n列的矩阵 经过转置运算后,变成一个n行m列的矩阵。MATLAB中, 转置运算符是单撇号(')。

MATLAB课件第3_4章

MATLAB课件第3_4章
2
>> a=[1 2 3;4 5 6;7 8 9] a= 1 2 3 4 5 6 7 8 9 >> b=[1 sin(pi/6) sqrt(9) 3+5 6 0] b= 1.0000 0.5000 3.0000 8.0000 6.0000 0
3
3.1.2 利用内部函数产生矩阵
利用内部函数可以很容易生成一些常见的特殊矩阵, 利用内部函数可以很容易生成一些常见的特殊矩阵, 常用函数如下: 常用函数如下:
>> eye(3,4) ans = 1 0 0 0 1 0 0 0 1 >> ones(3,4) ans = 1 1 1 1 1 1 1 1 1 >> diag(a) ans = 8 5 2
0 0 0
1 1 1
5
3.1.3 数组的构建
中数组可以看作行向量, 在MATLAB中数组可以看作行向量,即只有一行 中数组可以看作行向量 的矩阵, 创建数组可用以下特殊命令: 的矩阵,MATLAB创建数组可用以下特殊命令: 创建数组可用以下特殊命令 1. 冒号生成法(初值:步长:终值) 冒号生成法(初值:步长:终值) >> 0:0.4:2 ans = 0 0.4000 0.8000 1.2000 1.6000 2.0000 初值=0,终值=2,步长=0.4,步长若省略,默认间隔 初值 ,终值 ,步长 ,步长若省略,默认间隔1 >> a=1:4;b=1:2:7; >> c=[a b] c= 1 2 3 4 1 3 5 7 >> d=[a 9 10] d= 6 1 2 3 4 9 10
>> a(1:2,:) ans = 17 24 1 8 15 23 5 7 14 16 >> a(end,1:2) ans = 11 18 >> a([1 3;4 5]) ans = 17 4 10 11

MATLAB讲稿——第四章.ppt

MATLAB讲稿——第四章.ppt

P [an an1 a1 a0 ]
二、 多项式行向量的生成方法 1、直接输入法
将多项式的各项系数依降幂次序排放在行 向量的元素位置上。
缺项系数输为0。
2、利用指令生成法 指令 P=poly(AR)
说明:(1)若AR是方阵,则多项式P就是该方阵的 特征多项式;
(2)若AR是行向量,即
AR [ar1 ar2
再例:
>> R=[-0.5 -0.3+0.4i -0.3-0.4i] %根向量
R=
-0.5000
-0.3000 + 0.4000i -0.3000 - 0.4000i
>> P=poly(R) % R的特征多项式
P=
1.0000 1.1000 0.5500 0.1250
>> PPR=poly2str(P,'x') %用习惯的方式显示多项式
例:
>> A=[1 4 7;3 11 6;5 32 68]; >> PA=poly(A) %A的特征多项式
PA =
1.0000 -80.0000 588.0000 -147.0000 >> PPA=poly2str(PA,'s') %用习惯的方式显示多项式
PPA =
s^3 - 80 s^2 + 588 s - 147
PPR =
x^3 + 1.1 x^2 + 0.55 x + 0.125
4.2 多项式运算函数及调用格式
举例
(s2 2)(s 4)(s 1)
例:求
s3 s 1
的“商”和“余”多项式。
>> p1=conv([1 0 2],conv([1 4],[1 1])); %计算分子多

MATLAB 培训 第4章 MATLAB文件操作ppt课件

MATLAB 培训 第4章  MATLAB文件操作ppt课件
COUNT=fwrite (fid, A, precision) 其中COUNT前往所写的数据元素个数,fid为文 件句柄,A用来存放写入文件的数据,precision 用于控制所写数据的类型,其方式与fread函数一 样。
例4-1 建立一数据文件magic5.dat,用于存放5 阶魔方阵。 程序如下: fid=fopen('magic5.dat','w'); cnt=fwrite(fid,magic(5),'int32'); fclose(fid);
fid=fopen('magic5.dat', 'r'); [B,cnt]=fread(fid,[5,inf], 'int32'); fclose(fid);
4.2.2 文本文件的读写操作 1.读文本文件 fscanf 函数的调用格式为:
[A,COUNT]= fscanf (fid, format, size) 其中A用以存放读取的数据,COUNT前往所读取 的数据元素个数。fid为文件句柄。format用以控 制读取的数据格式,由%加上格式符组成,常见 的格式符有d,f,c,s。 size为可选项,决议矩阵A中数据的陈列方式。
fid用于存储文件句柄值,句柄值用来标识该数据
文件,其他函数可以利用它对该数据文件进展操 作。
文件数据格式有两种方式,一是二进制文件,二是 文本文件。在翻开文件时需求进一步指定文件格 式类型,即指定是二进制文件还是文本文件。
4.1.2 文件的封锁 文件在进展完读、写等操作后,应及时封锁。封 锁文件用fclose函数,调用格式为: sta=fclose(fid) 该函数封锁fid所表示的文件。sta表示封锁文件操 作的前往代码,假设封锁胜利,前往0,否那么前 往–1。

matlab第四章PPT.ppt.ppt

matlab第四章PPT.ppt.ppt

25
3.矩阵逆 如果n×n矩阵A和B,满足AB=In×m,那么B称作A的逆, 并采用符号A-1记述之。
MATLAB提供一个求矩阵逆的指令如下:
A_1=inv(A) 求非奇异方阵A的逆,使A*A_1=I
26
4.2.4 一般代数方程的解
[x, favl]=fzero(fun,x0) [x, fval]=fsolve(fun,x0) 求一元函数零点指令的最简格式 解非线性方程组的最简单格式
2 0 . 1 t
例 4 . 2 9 求 f ( t ) s i n te 0 . 5 | t | 的 零 点 。
27
(2) 数值法求解 (A)使用内联对象表示被处理函数。 (B)作图法观察函数零点分布
28
(C)利用zoom和ginput指令获得零点的初始近似值。 >>zoom on >>[tt,yy]=ginput(5);zoom off
一、近代交通业发展的原因、特点及影响 1.原因 (1)先进的中国人为救国救民,积极兴办近代交通业,促
进中国社会发展。
(2)列强侵华的需要。为扩大在华利益,加强控制、镇压
中国人民的反抗,控制和操纵中国交通建设。
(3)工业革命的成果传入中国,为近代交通业的发展提供 了物质条件。
2.特点 (1)近代中国交通业逐渐开始近代化的进程,铁路、水运和
23
1 5 9 13 2 6 10 14 x 的解。 例4.2 8求方程 3 7 11 15 4 8 12 16 如何确定解得性状(唯一与否,准确与否); 如何求特解和齐次解; 如何检查解得正确性。
24
(3) 求特解和通解,并对由它们 (1)创建待解方程的A和b (2)检查b是否在A的值空间中 构成的全解进行验算 (确定解:不唯一,准确解)
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
a=?:23 b=?:-6 c=?:51 x1=0.13043+1.4834i
x2=0.13043-1.4834i x=[(-b+sqrt(d))/(2*a), (-b-sqrt(d))/(2*a)]; disp(['x1=',num2str(x(1)),' ', 'x2=',num2str(x(2))]); 假设保存为SX2.m 假设保存为
第四章
MATLAB编程基础 MATLAB编程基础
本章详细讲解利用M语言进行编程的方法 本章详细讲解利用M 讲述的主要内容: 讲述的主要内容: 脚本文件 流程控制 函数文件 子函数 M文件的调试
MATLAB编程基础( MATLAB编程基础(续) 编程基础
4.1 概述 4.2 脚本文件 4.3 流程控制 4.4 函数文件 M文件调试 4.5 M文件调试 M文件性能分析 4.6 M文件性能分析 4.7 小结
num2str见第三章 见第三章129 见第三章
顺序结构( 顺序结构(续)
程序的暂停:当程序运行时, 程序的暂停:当程序运行时,为了查看程序的中间结果或 者观看输出的图形,有时需要暂停程序的执行, 者观看输出的图形,有时需要暂停程序的执行,可以使用 pause函数。 函数。 函数 调用格式:pause(延迟秒数 调用格式: 延迟秒数) 延迟秒数 如果省略延迟时间,直接使用 如果省略延迟时间,直接使用pause,则将暂停程序,直 ,则将暂停程序, 到用户按任意键后程序继续执行
顺序结构( 顺序结构(续)
的值, 例:输入X,Y的值,并将它们的值互换后输出 输入 , 的值 程序如下: 程序如下:
X=input('Input X please:'); Y=input('Input Y please:'); Z=X; X=Y; Y=Z; disp(X); disp(Y); X Y 12 3 43 6 3 4 4 -54
2 例:求一元二次方程 ax + bx + c = 0 的根
b=?:78 c=?:54 x1=-0.7188 x2=-18.7812
程序如下: 程序如下:
a=input('a=?:'); b=input('b=?:'); c=input('c=?:'); d=b*b-4*a*c;
再一次运行程序输出为: 再一次运行程序输出为:
命令行中运行该脚本文件: 在MATLAB命令行中运行该脚本文件: 命令行中运行该脚本文件 >> script_example 程序运行结束! 程序运行结束 在脚本文件script_example 在脚本文件 中运用pause、keyboard、 中运用 、 、 return指令。 指令。 指令
MATLAB编程基础( MATLAB编程基础(续) 编程基础
4.1 概述
MATLAB的工作模式 的工作模式 指令驱动模式 通常MATLAB以指令驱动模式工作,即在 以指令驱动模式工作, 通常 以指令驱动模式工作 MATLAB命令行窗口下用户输入单行指令时, 命令行窗口下用户输入单行指令时, 命令行窗口下用户输入单行指令时 MATLAB立即处理这条指令,这就是 立即处理这条指令, 立即处理这条指令 这就是MATLAB 命令行方式。 命令行方式。 命令行方式程序可读性差,而且不能存储, 命令行方式程序可读性差,而且不能存储,当 处理复杂问题和大量数据时很不方便。 处理复杂问题和大量数据时很不方便。 M文件模式 将MATLAB语句构成的程序存储成以 为扩展 语句构成的程序存储成以m为扩展 语句构成的程序存储成以 名的文件,然后再执行该程序文件,这种工作 名的文件,然后再执行该程序文件, 模式称为程序文件模式。 模式称为程序文件模式。 程序文件不能在指令窗口下建立, 程序文件不能在指令窗口下建立,因为指令窗 口只允许一次执行一行上的一个或几个语句。 口只允许一次执行一行上的一个或几个语句。
4.3.1 顺序结构
顺序结构是指按照程序中语句的排列顺序依次执行, 顺序结构是指按照程序中语句的排列顺序依次执行,直到程序 的最后一个语句。 的最后一个语句。 涉及到数据的输入、数据的计算或处理、数据的输出等内容。 涉及到数据的输入、数据的计算或处理、数据的输出等内容。
数据的输入:从键盘输入信息,则可使用input函数进行 数据的输入:从键盘输入信息,则可使用 函数进行 数据的输出:主要函数有disp函数 数据的输出:主要函数有 函数 调用格式: 输出项) 调用格式:disp(输出项 输出项 输出项既可以是字符串, 输出项既可以是字符串,也可以是矩阵 >>B=[1,2,3;4,5,6]; 例:>>A=‘Hello,TOM!’; >>disp(A) >>disp(B) Hello,TOM! 1 2 3 4 5 6 函数进行显示时将不显示名字, 用disp函数进行显示时将不显示名字,而且其输出格式更紧凑,且 函数进行显示时将不显示名字 而且其输出格式更紧凑, 不留任何没有意义的空行
直接单击 MATLAB用户界面工具栏上的新建按钮 用户界面工具栏上的新建按钮 来启动meditor编辑器 来启动 编辑器
概述( 概述(续)
M文件有两类 文件有两类 独立的M文件 脚本( 独立的 文件 —— 脚本(Scripts) ) 可调用M文件 函数( 可调用 文件 —— 函数(Functions) ) 内建函数 利用高级语言开发的函数文件
MATLAB语言的程序结构与其它高级语言是一致的, MATLAB语言的程序结构与其它高级语言是一致的,分 语言的程序结构与其它高级语言是一致的 为顺序结构、选择结构、 为顺序结构、选择结构、循环结构
流程控制( 流程控制(续)
4.3.1 顺序结构 4.3.2 选择结构 4.3.3 循环结构 4.3.4 break语句和 语句和continue语句 语句和 语句 4.3.5 提高运算性能
4.1 概述 4.2 脚本文件 4.3 流程控制 4.4 函数文件 M文件调试 4.5 M文件调试 M文件性能分析 4.6 M文件性能分析 4.7 小结
4.3 流程控制
程序流程控制包含控制程序的基本结构和语法 结构化的程序主要有三种基本的程序结构
顺序结构 指所有组成程序源代码的语句按照由上至下的次序依次执行, 指所有组成程序源代码的语句按照由上至下的次序依次执行, 直到程序的最后一个语句。 直到程序的最后一个语句。 选择结构 依照不同的判断条件进行判断, 依照不同的判断条件进行判断,然后根据判断的结果选择某 一种方法来解决某一个问题。 一种方法来解决某一个问题。 循环结构 就是在程序中某一条语句或多条语句重复多次的运行。 就是在程序中某一条语句或多条语句重复多次的运行。
脚本文件( 脚本文件(续)
在脚本文件中, 在脚本文件中,主要由注释行和代码行组成 M文件的注释行需要使用 定义符 文件的注释行需要使用%定义符 文件的注释行需要使用 注释定义符仅能影响一行代码 M文件的代码行是一些简单的 文件的代码行是一些简单的MATLAB指令或命令 文件的代码行是一些简单的 指令或命令 命令可以完成相应的计算处理数据、 命令可以完成相应的计算处理数据、绘制图形结 果的操作 可以在脚本文件中调用其他的函数完成复杂的数 学运算
4.3.2 选择结构
当需要判断某一条件是否满足, 当需要判断某一条件是否满足,根据判断的结果来选择 不同的解决方法时, 不同的解决方法时,则使用选择结构 MATLAB的条件判断可以使用 语句或者 的条件判断可以使用if语句或者 的条件判断可以使用 语句或者switch语句 语句
return
[例子 例子4-1] 脚本文件示例。 脚本文件示例。 例子 001 % 注释行 002 % M脚本文件示例 脚本文件示例 003 % "flower petal" 保存为 004 % 以下为代码行 script_example 005 % 计算 006 theta = -pi:0.01:pi; 007 rho(1,:) = 2*sin(5*theta).^2; 008 rho(2,:) = cos(10*theta).^3; 009 rho(3,:) = sin(theta).^2; 010 rho(4,:) = 5*cos(3.5*theta).^3; 011for k = 1:4 012 % 图形输出 013 subplot(2,2,k) 014 polar(theta,rho(k,:)) 015 end 016 disp('程序运行结束 程序运行结束!') 程序运行结束
MATLAB编程基础( MATLAB编程基础(续) 编程基础
4.1 概述 4.2 脚本文件 4.3 流程控制 4.4 函数文件 M文件调试 4.5 M文件调试 M文件性能分析 4.6 M文件性能分析 4.7 小结
4.2 脚本文件
包含MATLAB语言代码的文件称为 M文件, 语言代码的文件称为 文件 文件, 包含 其扩展名为.m。 其扩展名为 。 脚本文件就是由一系列的MATLAB指令和命 指令和命 脚本文件就是由一系列的 令组成的纯文本格式的M文件。 令组成的纯文本格式的 文件。 文件 脚本文件没有输入参数,也没有输出参数。 脚本文件没有输入参数,也没有输出参数。 执行脚本文件时, 执行脚本文件时,文件中的指令或者命令按 照出现在脚本文件中的顺序依次执行。 照出现在脚本文件中的顺序依次执行。
脚本文件的特点:所产生的变量均保留在基本工作空间中。 脚本文件的特点:所产生的变量均保留在基本工作空间中。
脚本文件( 脚本文件(续)
脚本文件中常用的MATLAB指令 指令 脚本文件中常用的
指令 pause input keyboard 说明 暂停当前M文件的运行 文件的运行, 暂停当前 文件的运行,按任意键继续 等待用户输入 暂停当前M文件的运行 文件的运行, 暂停当前 文件的运行,并将程序控制权交 还给MATLAB命令行,这时可以正常使用 命令行, 还给 命令行 命令行,直到键入“ 并按回车键后, 命令行,直到键入“return”并按回车键后, 并按回车键后 M文件才继续执行 文件才继续执行 返回当前的函数或者命令行
相关文档
最新文档