matlab的rayleighchan函数(zt)
(2011-11-23 08:37:56)
标签:
杂谈 |
分类: matlab相关 |
一个生成多径信道的函数,信道的每一径的衰落都独立的服从Rayleigh分布
chan = rayleighchan(Ts,fd,tau,pdb)
Ts:采样时间,如果考虑基带信号,这个和接收机要处理的数据速率是一样的,要考虑过采样的影响
fd:就是Doppler频偏,以Hz为单位,与速率的换算关系为v×fc/c,fc是载频
tau:输入的信道参数,一个向量,包含了各径的延时,以s为单位
pdb:输入的信道参数,一个向量,包含了各径的功率(当然是均值啦,实际产生的能量都是以此为均值的随机量),以dB为单位
g(n)=\sum_k{ sinc( tau(k)/Ts-n) h(k) },-N1<=n<=N2
其中N1和N2的选取要使得在-N1<=n<=N2之外的g(n)很小可忽略。
如果采样率较小,Ts较大,则sinc函数衰减较慢,因此第一径对应的sinc的能量泄露不可以忽略(N1>0),
即生成滤波器系数的时候把第一径左边的泄露量保留,整个信道相应看起来就有个时延了……
1) h(k)看作是一串冲激函数,与sinv函数卷积,sinc函数的边瓣周期由输入参数采样时间Ts决定,如果看连续时间波形的话,整个信道响应就是多个不同时延、不同幅度的sinc函数的叠加;
2) 对这个连续的信道响应进行采样得到信道滤波器的抽头系数,采样间隔为Ts,而采样点的个数是要保证舍弃位置的信道响应足够小可以忽略,如果采样率过小则Ts较大衰减慢, 需要保存较多个抽头系数,此时很可能在第一径位置之前出现若干个信道采样点,即h(n)~=0, n<0;
3)输入信号(以Ts为间隔的采样点)与滤波器进行卷积输出(filter函数的作用)

加载中…