MATLAB实现离散时间实指数序列问题
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/11/06 01:53:01
MATLAB实现离散时间实指数序列问题
function dszsu(c,a,k1,k2)
%c:指数序列的幅度
%a:指数序列的底数
%k1:绘制序列的起始序号
%k2:绘制序列的终止序号
k=k1:k2;
x=c*(a.^k);
stem(k,x,'filled')
hold on
plot([k1,k2],[0,0])
hold off
%离散时间实指数序列实现程序
subplot 221;
dszsu(1,5/4,0,20);
xlabel('k');
title('f1[k]');
subplot 222
dszsu(1,3/4,0,20);
xlabel('k');
title('f2[k]');
subplot 223;
dszsu(1,-5/4,0,20);
xlabel('k');
title('f3[k]');
subplot 224;
dszsu(1,-3/4,0,20);
xlabel('k');
title('f4[k]');
以上是我从书上抄的程序,运行时说K1没有定义,第6行有错误 请问怎么改?急救啊 马上要答辩了!
function dszsu(c,a,k1,k2)
%c:指数序列的幅度
%a:指数序列的底数
%k1:绘制序列的起始序号
%k2:绘制序列的终止序号
k=k1:k2;
x=c*(a.^k);
stem(k,x,'filled')
hold on
plot([k1,k2],[0,0])
hold off
%离散时间实指数序列实现程序
subplot 221;
dszsu(1,5/4,0,20);
xlabel('k');
title('f1[k]');
subplot 222
dszsu(1,3/4,0,20);
xlabel('k');
title('f2[k]');
subplot 223;
dszsu(1,-5/4,0,20);
xlabel('k');
title('f3[k]');
subplot 224;
dszsu(1,-3/4,0,20);
xlabel('k');
title('f4[k]');
以上是我从书上抄的程序,运行时说K1没有定义,第6行有错误 请问怎么改?急救啊 马上要答辩了!
有人抢答了啊,你的问题就是把上面代码放到一起了,把前半截放到一个m文件中,文件名取为dszsu
后面一半在放到一个m文件中,或者直接放到command窗口就可以了,你的前半截相当于自己写了一个matlab的函数,跟平时用的fft()这种函数没什么区别,你可以把前半截做成一个m文件dszsu,然后在coomand窗口输help dszsu试试看,你就知道matlab怎么工作的了.
前半截是:
function dszsu(c,a,k1,k2)
%c:指数序列的幅度
%a:指数序列的底数
%k1:绘制序列的起始序号
%k2:绘制序列的终止序号
k=k1:k2;
x=c*(a.^k);
stem(k,x,'filled')
hold on
plot([k1,k2],[0,0])
hold off
这其实是两个程序的,然后执行第二个程序就可以了,就是后半截,后半截的名字可以随便取,但是前半截m文件名字只能是dszsu,因为你后面调用了dszsu函数.
我执行的结果跟上面那位一样的,如果不清楚再问吧
后面一半在放到一个m文件中,或者直接放到command窗口就可以了,你的前半截相当于自己写了一个matlab的函数,跟平时用的fft()这种函数没什么区别,你可以把前半截做成一个m文件dszsu,然后在coomand窗口输help dszsu试试看,你就知道matlab怎么工作的了.
前半截是:
function dszsu(c,a,k1,k2)
%c:指数序列的幅度
%a:指数序列的底数
%k1:绘制序列的起始序号
%k2:绘制序列的终止序号
k=k1:k2;
x=c*(a.^k);
stem(k,x,'filled')
hold on
plot([k1,k2],[0,0])
hold off
这其实是两个程序的,然后执行第二个程序就可以了,就是后半截,后半截的名字可以随便取,但是前半截m文件名字只能是dszsu,因为你后面调用了dszsu函数.
我执行的结果跟上面那位一样的,如果不清楚再问吧