常用序列的MATLAB实现
1. 单位采样序列
function[x,n] = impseq(n0,ns,nf)
% ns=序列的起点;nf=序列的终点;n0=序列在n0处有一个单位脉冲。
% x=产生的单位采样序列;n=产生序列的位置信息
n = [ns:nf];
x = [(n-n0)==0];
2. 单位阶跃序列
function[x,n] = stepseq(n0,ns,nf)
% ns=序列的起点;nf=序列的终点
% n0=从n0处开始生成单位阶跃序列
% x=产生的单位阶跃序列; n=产生序列的位置信息
n = [ns:nf];
x = [(n-n0)>=0];
3. 矩形序列
function[x,n] = rectseq(n0,ns,nf,N)
% ns=序列的起点;nf=序列的终点;n0=矩形序列开始的位置
% N=矩形序列的长度;x=产生的矩形序列;n=产生序列的位置信息
n = [ns:nf];
x = [(n - n0) >= 0 & ((n0 + N - 1) - n) >= 0];
4. 实指数序列
function[x,n] = realindex(ns,nf,a)
% ns=序列的起点;nf=序列的终点;n0=实指数的值
% x=产生的实指数序列;n=产生序列的位置信息
n = [ns:nf];
x = a.^n;
5. 正弦序列
function[x,n] = sinseq(ns,nf,A,w0,alpha)
% ns=序列的起点;nf=序列的终点;A=正弦序列的幅度
% w0=正弦序列的频率;alpha=正弦序列的初始相位
% x=产生的正弦序列;n=产生序列的位置信息
n = [ns:nf];
x = A * sin(w0 * n + alpha);
6. 复指数序列
function[x,n] = complexindex(ns,nf,index)
% ns=序列的起点;nf=序列的终点;index=复指数的值
% x=产生的复指数序列;n=产生序列的位置信息
n = [ns:nf];
x = exp(index.*n);