导图社区 MATLAB
这是一篇关于基于MATLAB的控制系统仿真及应用的思维导图,其内容主要包括MATLAB应用基础,基于MATLAB的控制系统数学模型,基于MATLAB的控制系统运动响应分析等六章知识
编辑于2022-06-05 13:36:06MATLAB
第3章 基于MATLAB的控制系统运动响应分析
3.1 零输入/脉冲输入/阶跃输入响应分析
3.1.1 零输入响应分析
求线性连续时间系统状态空间模型:函数initial( )
initial(sys1....,sysN,x0) %同一个图形窗口内绘制多个系统sys1 , -,sysN在初始条件x0作用下的零输入响应。
initial(sys1....,sysN,x0,T) %指定响应时间T。
Initial(sys1,'PlotStyle1',..,sysN,’PlotStyleN',x0) %在同一个图形窗口绘制多个连续系统的零输入响应曲线,并指定曲线的属性PlotStyle。
[y,t,x]=initial(sys,x0) %不绘制曲线,得到输出向量﹑时间和状态变量响应的数据值。
(1)线性定常连续系统sys必须是状态空间模型。 (2)x0为初始条件。 (3)T为终止时间点,由t=0开始,至T秒结束。可省略,默认时由系统自动确定。 (4)y为输出向量;t为状态向量,可省略;x为时间向量,可省略。
求线性离散时间系统状态空间模型:函数dinitial( )
dinitial(a,b,c,d,x0,N) %绘制系统(a,b,c,d)在初始条件x0作用下的响应曲线。
[y,x,N]=dinitial(a,b,c,x0) %不绘制曲线,返回输出向量﹑状态向量和相应点数的数据值。
(1)系统的数学模型只能以离散时间状态空间模型的形式给出。 (2)a 、 b 、 c、d分别对应系统系统矩阵﹑输入矩阵﹑输出矩阵和前馈矩阵。 (3)y为输出向量; t为时间向量,可省略; x为状态向量,可省略。
3.1.2 脉冲输入响应分析
求连续系统的单位脉冲响应函数:impulse( )
impulse(sys1,...,sysN) %在同一个图形窗口中绘制N个系统sys1 ,…… , sysN的单位脉冲响应曲线。
impulse(sys1,...,sysN,T) %指定响应时间T。
impulse(sys1,'PlotStyle1',...sysN,'PlotStyleN')%指定曲线属性PlotStyle
[y,t,x]= impulse(sys) %得到输出向量﹑状态向量以及相应的时间向量。
(1)线性系统sys可以是传递函数模型﹑状态空间模型、零极点增益模型等形式。 (2)为终止时间点,由t=O开始,至T秒结束。可省略,缺省时由系统自动确定。 (3) y为输出向量;t为时间向量,可省略; x为状态向量
求离散系统的单位脉冲响应函数:dimpulse( )
dimpulse(num,den,N) %绘制SISO系统的单位脉冲响应曲线,且响应点数Ⅳ由用户定义。
dimpulse(a,b,c,d,iu,N) %绘制MIMO系统第iu个输入信号作用下的单位脉冲响应曲线,且响应点数N由用户定义。
ly,x]= dimpulse(num,den) %得到SISO系统的单位脉冲响应数据值0
ly,x]= dimpulse(a,b,c,d) %得到MIMO系统的单位脉冲响应数据 值
(1)a . b 、c、d分别对应系统系统矩阵﹑输入矩阵﹑输出矩阵和前馈矩阵。 (2)响应点数N可缺省,缺省时由系统自动确定。 (3) y为输出向量;x为状态向量,可省略。
3.1.3 阶跃输入响应分析
求线性定常连续系统的单位阶跃响应函数:step( )
step(sys1,...,sysN) %在同一个图形窗口中绘制N个系统sys1 ,… , sysN的单位阶跃响应。
step(sys1,...,sysN,T) %指定终止时间T。
step(sys1,'PlotStyle1',...,sysN,'PlotStyleN') %定义曲线属性PlotStyle 。
[y,x,t]=step(sys) %得到输出向量﹑状态向量以及相应的时间向量。
(1)线性定常连续系统sys1 ,…, sysN可以是连续时间传递函数﹑零极点增益及状态空间等模型形式。 (2)系统为状态空间模型时,只求其零状态响应。 (3)T为终止时间点,由t=0开始,至干秒结束。可省略,缺省时由系统自动确定。 (4)y为输出向量;t为时间向量,可省略;为状态向量,可省略。
求线性定常离散系统的单位阶跃响应函数:dstep( )
dstep(num,den,N) %绘制SIso系统的单位阶跃响应曲线,且响应点数N由用户指定。
dstep(a,b,c,d,iu,N) %绘制MIMO系统第iu个输入信号作用下的单位阶跃响应曲线,且响应点数N由用户指定。
[y,x]=dstep(num,den) %绘制MIMO系统第iu个输入信号作用下的单位阶跃响应曲线,且响应点数N由用户指定。
[y,x]= dstep(a,b,c,d) %求MIMO系统的单位阶跃响应数据值。
(1)a 、b、c、d分别对应系统系统矩阵﹑输入矩阵﹑输出矩阵和前馈矩阵。 (2)响应点数N可缺省,缺省时由系统自动确定。 (3) y为输出向量;x为状态向量,可省略。
3.2 高阶系统和任意输入响应分析
3.2.1 高阶系统响应分析
极点对消是指:当开环系统传递函数分子分母中包含有公因子,则相应的开环零点和开环极点将出现对消,在这种情况下会出现系统内部不稳定,内部稳定的情况。
3.2.2 任意输入响应分析
连续系统和离散系统对任意输入信号的响应用函数:lsim( )和dlsim( )
(1)函数gensig( ):产生用于函数lsim()的试验输入信号。
[u,t]= gensig(type,tau) %产生以tau(单位:秒)为周期并由type确定形式的标量信号u , t为采样周期组成的矢量
[u,t]=gensig(type,tau,Tf,Ts) %Tf,为信号的持续时间,Ts为采样周期t之间的时间间隔。
(1)type定义的信号形式包括: (a) 'sin',正弦波;(b)'square’,方波;(c) 'pulse',周期性脉冲。 (2)返回值为数据,并不绘制图形。 (3)函数lsim( ):求线性定常系统在任意输入信号作用下的时间响应。
(2)函数lsim( ):求线性定常系统在任意输入信号作用下的时间响应。
lsim(sys,u,t,x0) %绘制系统在给定输入信号和初始条件x0同时作用下的响应曲线
lsim(sys,u,t,x0,'method') %指定采样点之间的差值方法为'method'
lsim(sys1,...,sysN,u,t,x0) %绘制N个系统在给定输入信号和初始条件x0同时作用下的响应曲线
lsim(sys1,'PlotStyle1',...,sysN,'PlotStyleN') %定义曲线属性PlotStyle
[y,t,x]= lsim(sys,u,t,x0) %不绘制曲线,得到输出向量﹑时间和状态变量响应的数据值。
(1) u为输入序列,每一列对应一个输入; t为时间点。u的行数和t相对应。u、t可以由函数gensig()产生。 (2)字符串'method’可以指定: (a) 'zoh',零阶保持器;(b) 'foh'一阶保持器。 (3)字符串'method'默认时,函数lsim( )根据输入信号u的平滑度自动选择采样点之间的差值方法。 (4) y为输出向量; t为时间向量,可省略; x为状态向量,可省略。
(3)函数dlsim( ):求线性定常离散系统在在意输入下的响应。
dlsim(a,b,c,d,u) %绘制系统(a,b,c,d)在输入序列u作用下的响应曲线。
dlsim(num,den,u) %绘制系统在输入序列u作用下的响应曲线。
[y,x]=dlsim(a,b,c,d,u)
[y,x]=dlsim(num,den,u)
(1 ) a 、 b、c、d分别对应系统系统矩阵﹑输入矩阵﹑输出矩阵和前馈矩阵。 (2 ) y为输出向量;x为状态向量,可省略。
3.3控制系统的频率特性
3.3.1 Bode 图
(1)计算并绘制线性定常连续系统 的对数频率特性曲线函数:bode( )
bode(sys1,...,sysN) %在同一个图形窗口中绘制N个系统sys1 ,… ,sysN的Bode图。
bode(sys1,...,sysN,w) %指定频率范围w 。
bode(sys1,'PlotStyle1',...,sysN,'PlotStyleN') %定义曲线属性PlotStyle 。
[mag,phase,w]=bode(sys) %不绘制曲线,得到幅值向量﹑相位向量和频率向量。
(1)频率范围w可缺省,缺省情况下由MATLAB根据数学模型自动确定;用户指定w用法为w={wmin,wmax} (2)系统sys即可为SISO系统,也可以是MIMO系统;其形式可以是传递函数模型﹑状态空间模型或零极点
(2)绘制线性定常离散系统的对数频率特性曲线函数:dbode( )
dbode(a,b,c,d,Ts,iu,w) %绘制系统(a,b,c,d)第iu个输入信号至全部输出的Bode图,T为采样周期,频率范围由w指定。
dbode(num,den,Ts,w) %绘制传递函数的 Bode图,频率范围由w指定。
[mag,phase,w]= dbode(a,b,c,d,Ts) %计算幅值向量﹑相位向量和频率向量。
[mag,phase,w]=dbode(num,den,Ts) %计算幅值向量﹑相位向量和频率向量。
频率范围w可默认,在默认情况下由MATLAB根据数学模型自动确定;用户指定w用法为w={wmin,wmax}。
(3)绘制SISO线性定常连续系统的对数幅频特性渐近线
bodeasym(sys) %绘制系统sys的对数幅频特性渐近线
bodeasym(sys,PlotStr) %定义曲线属性PlotStr
(1)每次只能绘制一个系统的对数幅频特性渐近线 (2)字符串‘PlotStr’可定义的曲线属性详见函数plot()
3.3.2 Nyquist曲线
计算并绘制线性定常系统的幅相频率特性曲线函数: nyquist( )
nyquist(sys1....,sysN) %在同一个图形窗口中同时绘制N个系统sys1 , ... , sysN的Nyquist曲线。
nyquist(sys1..,sysN,w) %指定频率范围w 。
nyquist(sys1,'PlotStyle1',….,sysN,'PlotStyleN') %定义曲线属性PlotStyle 。
[re,im,w]=nyquist(sys) %计算系统sys的幅相频率特性数据值。
[re,im]=nyquist(sys,w) %指定频率范围,计算系统sys的幅相频率特性数据值。
(1)频率范围w可默认,在默认情况下由MATLAB根据数学模型自动确定;用户指定w用法w={wmin,wmax}。 (2)此函数可用于SISO系统和MIMO系统。 (3) re表示幅相频率特性的实部向量, im表示虚部向量, w表示频率向量。
第4章 基于MATLAB的控制系统运动性能分析
4.1 控制系统的稳定性分析
概念
对控制系统的基本要求:系统的稳定性,响应的快速性,响应的准确性。
稳定性是控制系统的重要性能,也是系统能够正常运行的首要条件。
时域分析
绘制系统的零极点图使用函数:pzmap( )
pzmap(sys1,...,sysN) %在一张零极点图中同时绘制N个线性定常系统sys1 ,..., sysN的零极点图。
[p,z]=pzmap(sys) %得到线性定常系统的极点和零点数值,并不绘制零极点图。
(1)sys描述的系统可以是连续系统,也可以是离散系统; (2)零极点图中,极点以“x”表示,零点以“○”表示。
直接求出系统传递函数的极点函数:pole( )
p=pole(sys) %求系统sys传递函数的极点。
求其特征根函数:roots( )
p=roots(s) %求多项式s的特征根。
频域分析
计算SISO开环系统所对应的闭环系统频域指标函数:margin( )
margin(sys) %绘制Bode图,并将稳定裕度及相应的频率标示在图上。
[Gm,Pm,Wcg,Wcp]=margin(sys) %不绘制曲线,得到稳定裕度数据值。
[Gm,Pm,Wcg,Wcp]=margin(mag,phase,w) %w为频率范围。
(1)该系统适用于线性定常连续系统和离散系统。 (2)在绘制的Bode图中,稳定裕度所在的位置将用垂直线标示出来。 (3)每次只计算或绘制一个系统的稳定裕度。 (4)返回值中, Gm表示幅值裕度; Pm表示相位裕度(单位:度); Wcg表示截止频率; Wcp表示穿越频率。
计算系统的稳定裕度及截止频率函数:allmargin( )
S= allmargin(sys) %提供SISO开环系统的信息。
(1)返回变量s包括: GMFrequency :穿越频率(单位:radls ) GainMargin :幅值裕度(单位:度) PMFrequency :截止频率(单位: radls ) PhaseMargin :相位裕度(单位:度) DelayMargin :延迟裕度(单位: s)及临界频率(单位: rad/s ) Stable :相应闭环系统稳定(含临界稳定)时值为1,否则为0 (2)系统sys不能为频率响应数据模型。 (3)输出为无穷大时,用Inf表示·
4.2 控制系统的稳定性能分析
定义
稳态过程又称稳态响应,是指系统在典型输入信号作用下,当时间趋向于无穷大时系统输出量的表现方式。它表征系统输出量最终复现输入量的程度,提供系统有关稳态误差的信息。
稳态性能是控制系统控制准确度的一种度量,也称稳态误差。计算稳态误差通常多采用静态误差系数法,其问题的实质就是求极限问题。
求极限的函数:limit( )
limit(F) %求极限
limit(F,x,a) %求极限
limit(F,x,a,'right') %求单边有极限
limit(F,x,a,'left') %求单边左极限
(1)符号表达式说明详见8.2节。 (2)极限不存在,则显示NaN。
4.2 控制系统的动态性能分析
定义
动态性能指标指:在单位阶跃函数作用下,稳定系统的动悉过程随时间变化的指标。
动态性能指标
上升时间( RiseTime )
峰值时间_(Peak Time )
超调量( Overshoot )
调节时间( Settling Time )
第5章 基于MATLAB/Simulink的控制系统建模与仿真
5.1 Simulink模块库
常用模块组( Commonly Used Blocks)
连续模块组( Continuous )
非连续模块组(Discontinuities )
离散模块组(Discrete)
数学运算模块组( Math Operations )
信源模块组( Sources )
信宿模块组( Sinks)
5.2 Simulink建模与仿真
Simulink提供了友好的图形用户界面,模型又模块组成的框图表示,用户通过单击和拖动鼠标的动作即可完成系统的建模,如同使用笔来画图一样简单。
Simulink支持线性和非线性系统﹑连续和离散时间系统以及混合系统的建模与仿真。
离散系统包括离散时间系统和连续-离散系统混合系统。离散时间系统既可以用差分方程描述,也可以用脉冲传递丽数描述。而连续-离散系统混合系统则可用微分-差分方程,或传递函数-脉冲传递函数描述。
。 非线性系狁旳Simulink建模万法很灵沽°应用Simulink构建非线性连续时间系统的仿真模型时,根据非线性元件参数的取值,既可以使用典型非线性模块直接实现,也可通过对典型非线性模块进行适当组合实现。
第六章 PID控制器、超前校正与滞后校正
6.1 定义
控制系统的设计,就是在系统中引入适当的环节,用以对原有系统的某些性能进行校正,使之达到理想的效果,故又称为系统的校正。
6.2 PID控制器
利用Simuliank中的Subsystems模块构建PID子系统。
函数:
Kp :比例函数 Ti :积分时间常数 Td :微分时间常数
6.3 超前校正
超前校正即在前向通道上串联传递函数
其中a、T可以调节,且a>1
6.4 滞后校正
滞后校正的系统结构图与超前校正相同,其校正装置的传递函数表达式形式也和超前校正装置的传递函数相似,不同的是系数a<1。函数:
其中a、T可以调节,且a<1
6.5 SISO 设计工具
SISO设计工具(SISO Design Tool)是MATLAB提供的能够分析及调整单输入/单输出反馈控制系统的图形用户界面。使用SISO设计工具可以设计4种类型的反馈系统,
C(s)为校正装置的数学模型
G(s)为被控对象的数学模型
H(s)为传感器(反馈环节)的数学模型
F(s)为滤波器的数学模型
SISO设计工具的应用包括:
应用根轨迹法改善闭环系统的动态特性。
改变开环系统Bode图的形状。
添加校正装置的零点和极点。
添加及调整超前/滞后网络和滤波器。
检验闭环系统响应
调整相位及幅度裕度
实现连续时间模型和离散时间模型之间的转换
第2章 基于MATLAB的控制系统数学模型
2.1 数学模型的建立
2.1.1 传递函数模型(TF)
sys=tf(num,den) %生成传递函数模型sys
sys=tf(num,den,Ts) %生成离散时间系统的脉冲传递函数模型sys
sys=tf('s') %指定传递函数模型以拉氏变换算子s为自变量
sys=tf('z',Ts) %指定脉冲传递函数模型以Z变换算子z为自变量,以Ts为采样周期
tfsys=tf(sys) %将任意线性定常系统sys转换为传递函数模型tfsys
(1)对于SISO系统,num和den分别为传递函数的分子向量和分母向量;对于MIMO系统,num和 den为行向量的元胞数组,其行数与输出向量的维数相同,列数与输入向量的维数相同。 (2)Ts为采样周期,若系统的采样周期未定义,则设置Ts=-1或Ts=[ ]。 (3)默认情况下,生成连续时间系统的传递函数模型,以拉普拉斯变换算子s为自变量。
2.1.2 状态空间模型(ss)
sys=ss(a,b,c,d) %生成线性定常连续系统的状态空间模型sys
sys=ss(a,b,c,d,Ts) %生成离散系统的状态空间模型
sys_ss=ss(sys) %将任意线性定常系统sys转换为状态空间模型
(1)a、b、c、d分别对应系统的系统矩阵、输入矩阵、输出矩阵和前馈矩阵 (2)Ts为采样周期。若采样周期未定义,则指定T=-1或Ts=[ ] (3)若前馈矩阵 d=0,则在建立状态空间模型时,必须根据输入变量和输出变量的维数确定零矩阵d的维数。
2.1.3 零极点增益模型(zpk)
sys=zpk(z,p,k) %建立连续系统的零极点增益模型模型sy
sys=zpk(z,p,k,Ts) %建立离散系统的零极点增益模型模型sys
sys=zpk('s') %指定零极点增益模型以拉氏变换算子s为自变量
sys=zpk('z') %指定零极点增益模型以z变换算子为自变量
zsys=zpk(sys) %将任意线性定常系统模型sys转换为零极点增益模型
(1)z、p、k分别对应系统的零点向量、极点向量和增益。 (2)若系统不包含零点(或极点),则取z=[ ](或p=[ ])。 (3)Ts为采样周期。若采样周期未定义,则指定Ts=-1或Ts=[ ]。
2.1.4 频率响应数据模型(FRD)
sys=frd(response,frequency) %建立频率响应数据模型sys 。
sys=frd(response,frequency,Ts) ; %建立离散系统频率响应数据模型sys 。
sysfrd=frd(sys,frequency,'Units',units) ; %将其他数学模型sys转换为频率响应数据模型,并指定frequency的单位( ‘Units’) 为uni
(1)response为存储频率响应数据模型的多维元胞;frequency为频率向量,默认时单位为rad/s。 (2)频率响应数据模型可以由其他三种模型转换得到,但是不能将频率响应数据模型转换为其他类型的数学模型。 (3)Ts为采样周期。若采样周期未定义,则指定Ts=-1或 Ts=[ ]。
2.2 数学模型的相互转换
2.2.1 传递函数模型和状态空间
[a,b,c,d]=tf2ss(num,den) sys=ss(a,b,c,d) %将分子向量为num和分母向量为den的传递函数模型转换为状态空间模型(a,b,c,d)
[num,den]=ss2tf(a,b,c,d,iu) sys=tf(num,den) %将状态空间模型(a,b,c,d)转换为分子向量为num,分母向量为den的传递函数模型,并得到第iu个输入向量至全部输出之间的传递函数参数。
注意:分子矩阵中必须保持每行元素的元素个数相等,不等的必须添加0。
2.2.2 传递函数模型和零极点增益模型
[z.p,k]=tf2zp(num,den) sys=zp(z,p,k) %将分子向量为num和分母向量为den的传递函数模型转换为零点向量为z,极点向量为p,增益为k的零极点增益模型
[num,den]=zp2tf(z,p,k) sys=tf(num,den) %将零点向量为z,极点向量为p,增益为k的零极点增益模型转换为分子向量为num、分母向量为den的传递函数模型。
注意:Z和P为列向量!
2.2.3 状态空间和零极点增益模型
[z,p,k]=ss2zp(a,b,c,d, iu) sys=zp(z,p,k) %将状态空间模型(a,b,c,d)转换为零点向量为z﹑极点向量为p﹑增益为k的零极点增益模型,并得到第iu个输入向量至全部输出之间的零极点增益模型的参数。
[a,b,c,d]=zp2ss(z,p,k) sys=ss(a,b,c,d) %将零点向量为z﹑极点向量为p﹑增益为k的零极点增益模型转换为状态空间模型(a,b,c,d)。
2.2.4连续时间模型和离散时间模型的相互转换
函数 c2d( )将连续时间模型转换为离散时间模型。 其格式如下: sysd=c2d(sys,Ts) %以采样周期Ts将线性定常连续系统sys离散化 sysd=c2d(sys,Ts,method) %以字符串“method”指定的离散化方法将线性定常连续系统离散化
函数 d2c( )将离散时间模型转换为连续时间模型。 其格式如下: sysc=d2c(sysd) %将线性定常离散模型sysd转换为连续时间模型sys sysc=d2c(sysd,method) %用字符串 method指定的方法将线性定常离散模型sysd转换为连续时间模型sysc
(1) method字符串包括: 'zoh',零阶保持器; 'foh',一阶保持器;'tustin',图斯汀变换; 'matched',零极点匹配法未指定离散方法时,采用零阶保持器离散方法。 (2)零极点匹配法仅支持SISO系统,其他方法既可支持SISO系统,也可支持 MIMO系统。
2.2.5 离散时间系统的重新采样
sys2=d2d(sys1,Ts) %将离散时间模型sys1按照新的采样周期Ts重新采样得到离散时间模型sys2 。
采样的频率和混频问题; 连续信号的最高频率是Fmax,采样频率F s>2Fmax,采样信号可以唯一地恢复出原连续信号,否则当采样频率Fs≤2Fmax 时;会造成采样信号中的频谱混淆(混频)现象,不能无失真地恢复原连续信号
2.3 数学模型的连接
2.3.1 串联连接
使用函数series( )实现模型的串联连接 格式:sys=series(sys1,sys2) %将系统sys1和 sys2进行串联连接;sys=sys1*sys2
(1)此串联方式相当于sys=sys1×syS2。 (2)sys1和sys2为不同形式的数学模型时,按优先原则确定。
2.3.2 并联连接
使用函数parallel( )实现模型的并联连接 格式:sys=parallel(sys1,sys2)%将系统sys1和 sys2进行并联连接;sys=sys1+sys2
此并联连接方式相当于sys=sys1+sys2。 sys1和sys2为不同形式的数学模型时,按优先原则确定。
2.3.3 反馈连接
使用函数feedback()实现模型的反馈连接 格式:sys=feedback(sys1,sys2) %按字符串“sign”指定的反馈方式将系统sys1和 sys2进行反馈连接
字符串 sign用来指定反馈的极性,sign =+1为正反馈,sign=-1为负反馈, 字符串 sign可默认,默认时为负反馈连接。 系统sys的输入和输出向量维数分别与系统sys1相同。 系统sys1和 sys2为不同形式的数学模型时,遵循优先原则。
2.3.4 数学模型连接优先原则:频率响应数据模型>状态空间模型>零极点增益模型>传递函数模型
第1章 MATLAB应用基础
1.1 概述
1.1.1 Matlab ,全称Matrix Laboratory(矩阵实验室),是由美国The MathWorks 公司于1984年推出的一种科学与工程计算语言
1.1.2 优势和特点
简单易用的程序语言
功能丰富,可扩展性强
代码短小高效
出色的图形处理能力
强大的系统仿真功能
1.2基本要素
变量
数值
复数
字符串
标点符
运算符
1.3 应用基础
1.3.1 矩阵
1.3.2 特殊矩阵生成
1.空矩阵
空矩阵用方括号“[ ]”表示
空矩阵大小为零,但变量名却保存在工作空间中。
2. 单位矩阵
eye(n) %生成n维的方阵
eye(n,m) %生成n*m维矩阵
3. 零矩阵
zeros( ) %格式与函数eye( )相同
4. 对角矩阵
diag(V) %生成元素在主对角线上的对角阵
diag(V,K) %生成对角阵
a ) V为向量,即对角阵元素值。 b ) K为数值,表示向量V偏离主对角线的列数,K<0时,V在主对角线下方;K>0 ,V在主对角线上方;K=0 ,V在主对角线上。
5. 全部元素为1的矩阵
ones( ) %调用格式和函数eye( )相同
1.3.3 数值运算
1. 向量运算
dot(a,b) %计算向量a和b的点积
cross(a,b) %计算向量a和b的叉积
2. 数组计算
(1)数组与实数间的四则运算
加 "+"
减 "-"
乘“*”
除 “/”
(2)数组之间的四则运算
加 "+"
减 "-"
乘“.*”
点左除“. \”
点右除“./”
注意:数组的左除和右除含义是不同的!!
(3) 数组的乘方运算
乘方“.^”
1.3.4 多项式运算
1.3.5 符号运算
1. 创建和使用
S=sym(A) %将数值A转换为符号对象S。A可以是数字或数值矩阵或数值表达式
S=sym(x) %将字符串x转换为符号对象S
syms al a2.... %aN=sym('aN')的简洁形式。变量名之间只能用空格隔开
2. 关键词:符号对象
3. 基本运算和函数运算
(1)在 MATLAB的符号运算中,运算符加“+”、减“-”、乘“*”、除“/”或“\”实现矩阵运算;点乘“.*”、点除“./”或“.\”实现数组运算。
(2)指数函数和对数函数的使用方法,符号运算和数值计算是相同的。
(3)在符号运算中,MATLAB提供常用的矩阵代数函数diag()、inv()、det( )、rank()、poly()及 eig()。用法与数值计算相同。
4. 符号表达式的操作
5. 积分变换
(1) 拉普拉斯变换及其反变换
F=laplace(f) %求时域函数f的拉普拉斯变换F
f=ilaplace(F) %求复域函数F的拉普拉斯反变换f
(2)z变换及逆变换
F=ztrans(f) %求时域序列f的z变换F。
f=iztrans(F) %求z域函数F的z反变换f 。
1.3.6 图形表达
1. 二维曲线的绘制
plot(x,y,'s') %基本绘图格式。
plot(x1,y1,'s1',... ,xN,yN, 'sN') %绘制多条曲线。每条曲线以(x,y,s)结构绘制,调用格式与plot(x,y,'s')相同。
1) x , y可以是向量,可以是矩阵,但是不同的情况对应不同的绘制方法。 2)函数plot(x,y,'s')中, y可缺省。 3)s表示绘制曲线的颜色,线型等,如果缺省的话则系统默认为实线,蓝色。
2.字符串s代表含义
3. 绘图操作
(1)多次重叠绘图
hold on %使当前曲线与坐标轴具备不被刷新的功能,即可重叠绘图
hold off %使当前曲线与坐标轴取消具备不被刷新的功能
(2)多窗口绘图
figure(N) %创建绘图窗口,N为其序号
(5)图形窗口的分割
subplot(m,n,k) %使m×n幅子图中的第k幅成为当前图
(1)m为行数,n为列数,k为子图编号。编号顺序是自左向右,再自上而下依次排号。(2)使用函数subplot( )后,若想再使用单幅图,应用命令clf清除 (3)k值不能大于m、n之和。
(4)图形注释
(1)函数 annontation( )创建的特殊注释包括:线型、箭头、文本箭头、文本框、矩形及椭圆。 (2)命令grid用法为: grid on %添加坐标网格 grid off %去掉网络
4.特殊坐标绘图
(1)对数坐标绘图
semilogx(x,y) %以x轴为对数坐标绘制曲线。
semilogy(x,y) %以y轴为对数坐标绘制曲线。
loglog(x,y) %以x 、y轴为对数坐标绘制曲线。
(2)极坐标绘图
polar(theta,rho,'s') %绘制极坐标图。
theta为角度向量; rho为幅值向量;字符串’s'含义与用法请参照plot()函数
5.三维图形的绘制
plot3(x,y,z,'s') %绘制三维曲线, x, y ,z分别为三维坐标向量。
mesh(x,y,z) %绘制三维曲面网线。
说明: 1) x , y可以是向量或矩阵。 2 )当x, y是矩阵时,应先使用函数meshgrid()生成绘制三维曲线的坐标矩阵数据。
surf(x,y,z) %绘制三维曲面。 x , y ,z分别为三维空间的坐标位置矩阵