文档介绍:计算机仿真技术
济南大学控制科学与工程学院
授课教师:李实
cse_******@ujn.
1教1007室
1
第五章 MATLAB建模与仿真
MATLAB语言基础
MATLAB在控制系统仿真中的应用
MATLAB常微分方程建模与仿真
SIMULINK仿真
2
MATLAB语言基础
MATLAB软件介绍
工作空间与使用帮助
基本运算
矩阵函数
绘图功能
3
MATLAB软件介绍
MATLAB是一款以矩阵为基础的用于数学与工程计算的软件。
它不是一种计算机语言,而是一种高级的用于科学分析与计算的软件。
4
MATLAB软件介绍
MATLAB取自与Matrix与Laboratory两词的前三个字母组合。起源于20世纪70年代后期,用FORTRAN语言编写的用于减轻学生负担的集命令翻译、科学计算与一体的交互式软件系统。
1984年成立MathWorks公司,将MATLAB推向市场,内核采用C语言编写,增加数据图视功能,因为其良好的开放性与运行可靠性,淘汰控制领域大量的封闭式软件。
,从此告别了DOS版,并推出了SIMULINK,这是一个交互式操作的动态系统建模、仿真、分析集成环境。开发了与外部直接交换数据的组件,使其可以进行实时数据分析、处理和硬件开发。推出了符号计算软件包。构建了Notebook。
。
MATLAB有很多工具包(Toolbox),一个工具包是一些特定M文件的集合。比如,控制分析与设计工具包,优化工具包,预测控制工具包,偏微分方程工具包…
5
工作空间与使用帮助
6
clear:清楚工作空间中所有的变量
clear 变量名:清楚指定的变量
永久常数:
pi: 圆周率π
inf: 无限大
ans:用于显示结果的缺省变量名
save filename variables 。
load filename variables 。
help ‘function name’: 查询该函数的用法,比如help inv是用来查询计算反矩阵的用法。
helpwin:帮助窗口
demo: 示例窗口,MATLAB有丰富的示例供学习参考。
7
基本运算
书写向量(vectors)与矩阵(matrices)
t=[5:-1:2] %产生行向量
x=[1 2 3 -4 -5] 或 x=[1,2,3,-4,-5] 表示行向量
x=[1;2;3;-4;-5] %用分号则表示列向量
输入矩阵:A=[ 10 15; 3 2; 4 7]
如果在矩阵A后面加上分号; 取消打印
A(i,:) 第i行,A(:,j) 第j列
y=x’%表示x的反转矩阵为y
写成 C=[1 exp(-); sqrt(2) 3]
linespace产生向量: x=linespace(n1,n2,n) 从n1到n2有n个点
x=linespace(-10,10,5) %从-10到10有5个点
logspace产生向量: x=logspace(n1,n2,n) 从10d1到10d2有n各点
x=logspace(-1,1,10) %
黄色数字为直接在MATLAB中输入的命令
8
转置与共轭转置(transpose and conjugate transpose)
实矩阵情况: A=[1 2 3;4 5 6;7 8 9] B=A’
复数情况:x=1+sqrt(3)*i or x=1+sqrt(3)*j 用i或j表示复数
如果i和j已经作为变量使用,定义新的复数单位:
ii=sqrt(-1) or jj=sqrt(-1)
x=1+sqrt(3)*ii or x=1+sqrt(3)*jj
plex matrices)
写成 X=[1 j;-5*j 2]
共轭转置为:Y=X.’或 Y=conj(X’) (写成Y=X’是错误的)
当式子太长时,可以用…来表示换行
x=+++++…
++-
9
特殊矩阵产生
ones(n) 产生n乘n矩阵,元素值均为1.
ones(m,n) 产生m乘n矩阵,元素值均为1.
zeros(n) 产生n乘n零矩阵
zeros(m,n) 产生m乘n零矩阵
单位矩阵(Identity matrix)
eye(n) 产生n乘n单位矩阵,