当前位置:文档之家› matlab常用函数汇总

matlab常用函数汇总

MATLAB总结
(一)MATLAB常用函数
1、特殊变量与常数
2、操作符与特殊字符
3、基本数学函数
4、基本矩阵和矩阵操作
5、数值分析和傅立叶变换
6、多项式与插值
7、绘图函数
(二)Matlab工作间常用命令:1、常用的窗口命令
2、有关文件及其操作的语句
3、启动与退出的命令
4、管理变量工作空间的命令
5、对命令窗口控制的常用命令
6、此外还有一些常用的命令:
↑Ctrl+p 调用上一次的命令
↓Ctrl+n 调用下一行的命令
←Ctrl+b 退后一格
→Ctrl+f 前移一格
Ctrl + ←Ctrl+r 向右移一个单词
Ctrl + → Ctrl+l 向左移一个单词
Home Ctrl+a 光标移到行首
End Ctrl+e 光标移到行尾
Esc Ctrl+u 清除一行
Del Ctrl+d 清除光标后字符
Backspace Ctrl+h 清除光标前字符
Ctrl+k 清除光标至行尾字
Ctrl+c 中断程序运行
(三)Matlab 运行加速
1)性能加速
a、采用如下数据类型:logical、char、int、uint、double;
b、数据维数不超过3;
c、for循环范围内只采用标量值,只调用内建函数。

if 、else if 、while、swicth的条件测试语句只采用标量;
d、同一行的命令条数为一条;
e、命令操作为改变数据类型或者形状(大小,维数);
f、复数写为:a+bj型;
2)遵守3条准则
a、避免使用循环语句(将循环语句向量化:向量化技术函数有All、diff、ipermute、permute、reshape、squeeze、any、find、logical、prod、shiftdim、sub2ind、cumsum、ind2su
b、ndgrid、repmat、sort、sum 等;不得不使用循环语句时,超过2重,循环次数少的在外环);
b、预分配矩阵空间(函数有:zeros、ones、cell、struct、repmat)和采用repmat函数对非double 型预分配空间或对一个变量扩容;
c、优先使用内建函数和function;
3)绝招:采用Mex技术,或者利用matlab提供的工具将程序转化为C语言、Fortran语言
注意:比较向量化和加速器;加速之前采用profiler测试各部分耗时情况。

SIMILINK模块库按功能进行分为以下8类子库:
Continuous(连续模块)
Discrete(离散模块)
Function&Tables(函数和平台模块)
Math(数学模块)
Nonlinear(非线性模块)
Signals&Systems(信号和系统模块)
Sinks(接收器模块)
Sources(输入源模块)
连续模块(Continuous)
Integrator:输入信号积分
Derivative:输入信号微分
State-Space:线性状态空间系统模型
Transfer-Fcn:线性传递函数模型
Zero-Pole:以零极点表示的传递函数模型
Memory:存储上一时刻的状态值
Transport Delay:输入信号延时一个固定时间再输出
Variable Transport Delay:输入信号延时一个可变时间再输出
离散模块(Discrete)
Discrete-time Integrator:离散时间积分器
Discrete Filter:IIR与FIR滤波器
Discrete State-Space:离散状态空间系统模型
Discrete Transfer-Fcn:离散传递函数模型
Discrete Zero-Pole:以零极点表示的离散传递函数模型
First-Order Hold:一阶采样和保持器
Zero-Order Hold:零阶采样和保持器
Unit Delay:一个采样周期的延时
函数和平台模块(Function&Tables)
Fcn:用自定义的函数(表达式)进行运算
:利用matlab的现有函数进行运算
S-Function:调用自编的S函数的程序进行运算
Look-Up Table:建立输入信号的查询表(线性峰值匹配)
Look-Up Table(2-D):建立两个输入信号的查询表(线性峰值匹配)
数学模块( Math )
Sum:加减运算
Product:乘运算
Dot Product:点乘运算
Gain:比例运算
Math Function:包括指数函数、对数函数、求平方、开根号等常用数学函数Trigonometric Function:三角函数,包括正弦、余弦、正切等
MinMax:最值运算
Abs:取绝对值
Sign:符号函数
Logical Operator:逻辑运算
Relational Operator:关系运算
Complex to Magnitude-Angle:由复数输入转为幅值和相角输出
Magnitude-Angle to Complex:由幅值和相角输入合成复数输出
Complex to Real-Imag:由复数输入转为实部和虚部输出
Real-Imag to Complex:由实部和虚部输入合成复数输出
非线性模块( Nonlinear )
Saturation:饱和输出,让输出超过某一值时能够饱和。

Relay:滞环比较器,限制输出值在某一范围内变化。

Switch:开关选择,当第二个输入端大于临界值时,输出由第一个输入端而来,否则输出由第三个输入端而来。

Manual Switch:手动选择开关
信号和系统模块( Signal&Systems )
In1:输入端。

Out1:输出端。

Mux:将多个单一输入转化为一个复合输出。

Demux:将一个复合输入转化为多个单一输出。

Ground:连接到没有连接到的输入端。

Terminator:连接到没有连接到的输出端。

SubSystem:建立新的封装(Mask)功能模块
接收器模块( Sinks )
Scope:示波器。

XY Graph:显示二维图形。

To Workspace:将输出写入MATLAB的工作空间。

To File(.mat):将输出写入数据文件。

输入源模块( Sources )
Constant:常数信号。

Clock:时钟信号。

From Workspace:来自MATLAB的工作空间。

From File(.mat):来自数据文件。

Pulse Generator:脉冲发生器。

Repeating Sequence:重复信号。

Signal Generator:信号发生器,可以产生正弦、方波、锯齿波及随意波。

Sine Wave:正弦波信号。

Step:阶跃波信号。

在MATLAB命令窗口下直接运行一个已经存在的simulink模型
[t,x,y]=sim('model',timespan,option,ut)
其中,t为返回的仿真时间向量;x为返回的状态矩阵;y为返回的输出矩阵;model 为系统Simulink模型文件名;timespan为仿真时间; option为仿真参数选择项,由simset 设置; ut为选择外部产生输入,ut=[T,u1,u2,...,un]。

Sources库信号源库(无输入,至少一个输出)
Sine Wave: 产生幅值、频率可设置的正弦波信号。

Step: 产生幅值、阶跃时间可设置的阶跃信号。

Sinks库显示和写模块输出
Display: 数字表,显示指定模块的输出数值
XY Graph: 用同一图形窗口,显示X-Y坐标的图形(需现在参数对话框中设置每个坐标的变化范围)。

Scope: 示波器。

显示在仿真过程中产生的信号波形。

Continuous库包含描述线性函数的模块
Derivative: 微分环节。

其输出为其输入信号的微分。

Integrator: 积分环节。

其输出为其输入信号的积分。

Transfer Fcn: 分子分母为多项式形式的传递函数
Zero-Poles: 零极点增益形式的传递函数。

Math库包含描述一般数学函数的模块。

Add
Sign: 符号函数。

输出为输入信号的符号
Math function: 实现一个数学函数。

Signals & Systems 库
Demux: 信号分路器。

将混路器输出的信号依照原来的构成方法分解成多路信号。

Mux: 信号汇总器。

将多路信号依照向量的形式混合成一路信号。

Simulink环境下的仿真运行
仿真参数对话框
Solver页
设置仿真开始和终止时间
Solver options(仿真算法选择):分为定步长算法和变步长算法
离散系统一般默认选择定步长算法,在实时控制中则必须选用定步长算法
变步长算法,对连续系统仿真一般选择ode45,步长范围用auto
Error Tolerance(误差限度):算法的误差是指当前状态值与当前状态估计值的误差,分为Relative tolerance(相对限度)和Absolute tolerance(绝对限度),通常可选auto。

11。

相关主题