
浅谈最近用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 一定是一家人~~
先说这么多。最近比较忙。