3.4 信道系数的MATLAB实现
为了实现无线信道,需要产生随机噪声和信道系数。信道系数假设为所有多径分量的集合响应,因此可以根据传播环境,假设信道服从前面讨论的任何一种衰落模型的概率分布。鉴于MATLAB是无线通信系统仿真中的常用软件,接下来将讨论使用MATLAB生成各种信道系数的方法及MATLAB实现。在所有的信道系数生成过程中,假设所有接收信道的相位在0~2π范围内均匀分布。
3.4.1 瑞利(Rayleigh)衰落信道
Rayleigh衰落信道是最常用、最简单的衰落信道,常用于表征非视距无线传播环境。数学上,Rayleigh部分变量表示为两个独立的零均值、单位方差高斯(Gaussian)分布随机变量平方和。因此,生成Rayleigh衰落信道系数的MATLAB代码为
其中,用于归一化生成衰落信道系数的方差。同理,如果考虑的系统在发射机和接收机上有多个天线,即系统为多输入多输出(MIMO)通信系统时,生成信道系数矩阵的MATLAB代码为
其中,信道矩阵系数的维度为Nr× Nt,对应于Nt个发送天线Nr个接收天线的MIMO系统信道矩阵。为了模拟接收信号中存在LoS或优势分量时的衰落分布,Rician分布起到了重要作用。
3.4.2 莱斯(Rician)衰落信道
Rayleigh衰落信道能够表征NLoS衰落环境,但是当接收信号中存在LoS或者确定分量的情况,Rayleigh衰落信道不能够有效地表征。为了模拟接收信号中存在LoS或确定分量时的衰落分布,Rician分布被提出。生成Rician分布衰落信道系数与Rayleigh衰落信道类似。在Rician衰落信道系数生成时,LoS分量的同相部分是一个常数,其值依赖于Rician分布的衰落因子K。因此,单Rician分布衰落信道的MATLAB代码为
其中,因子和用于表示LoS或确定分量与归一化衰落信号功率的比。同理,MIMO系统衰落信道矩阵系数的MATLAB代码为
上述信道矩阵系数的生成假设为独立同分布的随机变量。根据上面的h和H的代码可以看出,当K趋于无穷时,所有的系数值变为1,则此时为无衰落环境。然而,当Rician因子为0时,Rician衰落信道等价于Rayleigh衰落信道。因此,Rician衰落信道能够表征从无衰落环境到Rayleigh衰落环境[14]。
3.4.3 Hoyt衰落信道
在衰落程度小于Rayleigh衰落信道的传播环境,Rician衰落信道能够很好地表征。当衰落信道比瑞利衰落环境更严重时,采用Hoyt(Nakagami-q)分布建模衰落信道。与Rician衰落信道不同,Hoyt衰落信道不存在LoS或确定分量。与Rayleigh相比,Hoyt考虑接收信号的同相和正交相非等功率。因此,Hoyt衰落信道系数的MATLAB代码为
其中,参数q表述衰落的严重程度。同理,MIMO系统衰落信道矩阵系数的MATLAB代码为
3.4.4 Nakagami-m衰落信道
当多径分量的集合在接收端形成簇时,接收信号服从Nakagami-m分布。根据3.3.1节物理信道模型所述,Nakagami-m衰落信道簇的数目与衰落参数m有关。首先,根据物理模型,Nakagami-m衰落分布已经被证明适用于NLOS传播环境。然而,一些数据实验表明Rician衰落信道为Nakagami-m分布的一种特殊情况。根据式(3-9),Nakagami-m衰落信道系数的生成可以用下述MATLAB代码表示:
上述代码用于生成单变量Nakagami-m衰落信道系数,适用于单输入单输出(Single-Input Single-Output,SISO)通信系统。在生成Nakagami-m时,首先生成Nakagami-m衰落信号的平方变分,然后利用均布相位分量将其转换为复包络形式[15]。进行稍微修改,可以得到独立同分布衰落信道系数
上述方法根据物理模型生成Nakagami-m分布衰落信道系数。在物理模型中,参数m定义为接收信号中多径分量簇的数目。另外,通过Nakagami-m分数的性质可知,通信系统的SNR服从Gamma分布。因此,Nakagami-m分布衰落信道的系数可由Gamma分布随机变量得到。要做到这一点,需要将Nakagami-m分布的参数m关联到Gamma分布参数上。在MATLAB中,利用gamrnd函数可以生成Gamma分布随机变量,它含有两个参数,形状参数Φ和尺度参数Θ。Φ和Θ与Nakagami-m衰落参数m有关Φ=m和,其中为信号的平均SNR。因此,可以使用以下MATLAB代码生成一个Nakagami-m分布式衰落信道系数:
其中,a_SNR信号的平均SNR或者Gamma/Nakagami-m分布随机变量的方差。同理,MIMO通信系统信道矩阵系数可以由以下Matlab代码生成。