浅谈最近用matlab遇到的几个函数:
1.num2str str2num
对于一个刚学matlab不久的人,看到回调函数里满篇num2str、str2num内心满满的问号……这感觉就和十年前学英语一样……
然而这个2,让我觉得这个函数很有意思……
是的,2就是two啊!two音同to啊!
num2str,顾名思义,number to string,把数值转化成字符串。同理str2num我就不解释了。
嗯,程序员都是懒人,能省就省必须的。
2.ezplot
Easy to use function plotter!E Z PLOT 懒人的智慧
翻译:易用的一元函数绘图函数
使用之前要定义!要定义!要定义!
符号函数定义法则:syms x;
那么问题来了,syms是什么鬼?
syms是定义符号变量。哦,我们就记得了,进行符号运算前要定义它,就用syms。
3.conv
数字信号处理,嗯哼,眼熟是不是?
卷积卷积卷积!
辨析:filter、conv、impz函数的区别
在MATLAB中,可以用函数y=filter(p,d,x)实现差分方程的仿真,也可以用函数 y=conv(x,h)计算卷积,用y=impz(p,d,N)求系统的冲激响应。具体例子百度一大推。
4.stem
同样数字信号处理里出现的。Stem函数用于绘图,它是绘制针状图的好手。
调用格式都为stem(n,x,‘filled’);
只需要将需要绘制的数据存放在一个数组中,然后将这个数组作为参数传递给“stem”函数就可以得到输出图形。例如,下面的代码可以绘制正弦函数的图形:
n=1:50; %定义序列的长度是50
x=zeros(1,50); %注意:MATLAB中数组下标从1开始
x(1)=1; %冲击函数
stem(x); %绘制函数图形
5.impulse
函数impulse()将绘出由向量 a 和 b 表示的连续系统在指定时间范围内的冲激响应h(t)的时域波形图,并能求出指定时间范围内冲激响应的数值解。
impulse()函数有如下四种调用格式:
(1)impulse(b,a):该调用格式以默认方式绘出向量 A和B定义的连续系统的冲激响应的时域波形。
(2)impulse(b,a,t):绘出系统在 0~t 时间范围内冲激响应的时域波形。
(3)impulse(b,a,t1:p:t2):绘出在 t1~t2 时间范围内,且以时间间隔 p均匀取样的冲激响应波形。
(4)y=impulse(b,a,t1:p:t2):不绘出波形,而是求出系统冲激响应的数值解。
6.step
step()函数可绘出连续系统的阶跃响应 g(t)在指定时间范围的时域波形并能求出其数值解,和impulse()函数一样也有四种调用格式。
(1)step(b,a):该调用格式以默认方式绘出向量 A和B定义的连续系统的阶跃响应的时域波形。
(2)step(b,a,t):绘出系统在 0~t 时间范围内阶跃响应的时域波形。
(3)step(b,a,t1:p:t2):绘出在 t1~t2 时间范围内,且以时间间隔p均匀取样的阶跃响应波形。
(4)y=step(b,a,t1:p:t2):不绘出波形,而是求出系统阶跃响应的数值解。
惊人相似有木有!impulse 和 step 一定是一家人~~
先说这么多。最近比较忙。