空间相关信道生成方式

最近在做一些MIMO空间相关信道的仿真,个人存在一些混淆,特此记录下来,欢迎大家学习并指正!

Kronecker相关信道模型

Hcorr=Rr1/2HiidRt1/2 \boldsymbol H_{corr} = \boldsymbol R_r^{1/2} \boldsymbol H_{iid} \boldsymbol R_t^{1/2} Hcorr=Rr1/2HiidRt1/2

  • Hiid\boldsymbol H_{iid}Hiid :独立同分布复高斯随机变量
  • Rr\boldsymbol R_rRr 和 Rt\boldsymbol R_tRt :接收和发送天线间的相关性
    • 指数相关模型,各元素 rijr_{ij}rij 由下式给出(ρ\rhoρ 是天线间相关系数)(本文采用指数相关模型)
      rij={ρj−i,i≤jrji∗,i>j r_{ij} = \begin{cases} \rho^{j-i}, & i \leq j \\ r_{ji}^*, & i>j \end{cases} rij={ρj−i,rji∗,i≤ji>j
    • 3GPP相关信道模型:https://itecspec.com/spec/3gpp-36-101-b-2-3-mimo-channel-correlation-matrices/
    • Rr1/2\boldsymbol R_r^{1/2}Rr1/2 和 Rt1/2\boldsymbol R_t^{1/2}Rt1/2 表示接收发送相关矩阵的平方根分解/cholesky分解。

方式1---直接生成

复制代码
nr = 2; nt = 2; 
rho_r = 0.3; rho_t = 0.3;
Rr = toeplitz((rho_r * ones(1,nr)).^(0:(nr-1)));
Rt = toeplitz((rho_t * ones(1,nt)).^(0:(nt-1)));
H_iid = sqrt(0.5) * (randn(nr, nt) + 1j * randn(nr, nt));
H_corr = sqrtm(Rr) * H_iid * sqrtm(Rt);

方式2---complex correlation

该方式由于对 R1/2\boldsymbol R^{1/2}R1/2 的解释不同而产生两种方法,分别是基于平方根分解(sqrtm)和基于cholesky分解(chol)。

平方根分解

根据平方根分解,有
R=Rt⊗RrC2=RC=R1/2=(Rt⊗Rr)1/2\begin{align} & \boldsymbol R = \boldsymbol R_t \otimes \boldsymbol R_r \\ & \boldsymbol C^2 = \boldsymbol R \\ & \boldsymbol C = \boldsymbol R^{1/2} = (\boldsymbol R_t \otimes \boldsymbol R_r)^{1/2} \end{align}R=Rt⊗RrC2=RC=R1/2=(Rt⊗Rr)1/2

最终生成的相关信道矩阵满足
vec(Hcorr)=Cvec(Hiid)=(Rt⊗Rr)1/2vec(Hiid)=(Rt1/2⊗Rr1/2)vec(Hiid)=vec(Rr1/2HiidRtT/2)=vec(Rr1/2HiidRt1/2) (对称)\begin{align*} {\rm vec} (\boldsymbol H_{corr}) = & \boldsymbol C {\rm vec}(\boldsymbol H_{iid})\\ = & (\boldsymbol R_t \otimes \boldsymbol R_r)^{1/2} {\rm vec} (\boldsymbol H_{iid})\\ = & (\boldsymbol R_t^{1/2} \otimes \boldsymbol R_r^{1/2}) {\rm vec} (\boldsymbol H_{iid})\\ = & {\rm vec} (\boldsymbol R_r^{1/2} \boldsymbol H_{iid} \boldsymbol R_t^{T/2})\\ = & {\rm vec} (\boldsymbol R_r^{1/2} \boldsymbol H_{iid} \boldsymbol R_t^{1/2})~(对称)\\ \end{align*}vec(Hcorr)=====Cvec(Hiid)(Rt⊗Rr)1/2vec(Hiid)(Rt1/2⊗Rr1/2)vec(Hiid)vec(Rr1/2HiidRtT/2)vec(Rr1/2HiidRt1/2) (对称)

复制代码
nr = 2; nt = 2; 
rho_r = 0.3; rho_t = 0.3;
Rr = toeplitz((rho_r * ones(1,nr)).^(0:(nr-1)));
Rt = toeplitz((rho_t * ones(1,nt)).^(0:(nt-1)));
R = kron(Rt, Rr);
C = sqrtm(R);
H_iid = sqrt(0.5) * (randn(nr, nt) + 1j * randn(nr, nt));
H_corr = reshape(C * H_iid(:),nr,nt);

cholesky分解

根据cholesky分解,有
R=Rt⊗RrCTC=RC=chol(R)\begin{align} & \boldsymbol R = \boldsymbol R_t \otimes \boldsymbol R_r \\ & \boldsymbol C^T C = \boldsymbol R \\ & \boldsymbol C = {\rm chol} (\boldsymbol R) \end{align}R=Rt⊗RrCTC=RC=chol(R)

最终生成的相关信道满足
vec(Hcorr)=CTvec(Hiid)=(chol(Rt⊗Rr))Tvec(Hiid)=(chol(Rt)⊗chol(Rr))Tvec(Hiid)=(chol(Rt)T⊗chol(Rr)T)vec(Hiid)=vec(chol(Rr)THiidchol(Rt))\begin{align*} {\rm vec} (\boldsymbol H_{corr}) = & \boldsymbol C^T {\rm vec} (\boldsymbol H_{iid})\\ = & ({\rm chol} (\boldsymbol R_t \otimes \boldsymbol R_r))^T {\rm vec} (\boldsymbol H_{iid})\\ = & ({\rm chol} (\boldsymbol R_t) \otimes {\rm chol} (\boldsymbol R_r))^T {\rm vec} (\boldsymbol H_{iid})\\ = & ({\rm chol} (\boldsymbol R_t)^T \otimes {\rm chol} (\boldsymbol R_r)^T) {\rm vec} (\boldsymbol H_{iid})\\ = & {\rm vec} ({\rm chol} (\boldsymbol R_r)^T \boldsymbol H_{iid} {\rm chol} (\boldsymbol R_t))\\ \end{align*}vec(Hcorr)=====CTvec(Hiid)(chol(Rt⊗Rr))Tvec(Hiid)(chol(Rt)⊗chol(Rr))Tvec(Hiid)(chol(Rt)T⊗chol(Rr)T)vec(Hiid)vec(chol(Rr)THiidchol(Rt))

复制代码
nr = 2; nt = 2; 
rho_r = 0.3; rho_t = 0.3;
Rr = toeplitz((rho_r * ones(1,nr)).^(0:(nr-1)));
Rt = toeplitz((rho_t * ones(1,nt)).^(0:(nt-1)));
R = kron(Rt, Rr);
C = chol(R).';
H_iid = sqrt(0.5) * (randn(nr, nt) + 1j * randn(nr, nt));
H_corr = reshape(C * H_iid(:), nr, nt);
% 对应的方式1为:
% H_corr = chol(Rr).' * H_iid * chol(Rt);

需要注意的是,使用两种分解方法最终得到的分解结果和相关信道矩阵不同。

方式3---power(field) correlation

从《MIMO-OFDM wireless communications with MATLAB》给出的代码来看,power(field) correlation相当于将相关矩阵的量纲视作功率,与方式2唯一不同的是
C=(Rt⊗Rr)1/2 \boldsymbol C = (\sqrt{\boldsymbol R_t \otimes \boldsymbol R_r})^{1/2} C=(Rt⊗Rr )1/2

复制代码
C = sqrtm(sqrt(kron(Rt, Rr))); % 其余与方式2代码相同

待解决的问题

  1. 何时使用平方根分解?何时使用cholesky分解?
  2. 不同的生成方式各自的适用范围/应用场景是什么?
相关推荐
Multipath7122 小时前
多链路聚合 + 宽带自组网 + 卫星便携站,构筑应急通信“铁三角”乾元通多链路聚合路由破局“三断”绝境,重构应急通信生命线
网络·5g·安全·智能路由器·实时音视频
Yang96115 小时前
通信专用手持频谱迭代方向,鼎讯信通 LN-090A 直击 5G 运维核心痛点
运维·5g
星创易联5 小时前
从T-Box到5G车载网关:高阶自动驾驶通信架构演进
5g·架构·自动驾驶
微硬创新18 小时前
耐达讯自动化 CC-Link IE 转 PROFINET网关在污水厂智能化升级实战
人工智能·物联网·网络协议·自动化·信息与通信
晏宁科技YaningAI18 小时前
VoIP系统的工程实现模型:从信令控制到媒体传输的完整架构解析
网络·人工智能·架构·系统架构·信息与通信
国科安芯1 天前
星间光链路:AS32S601型抗辐射MCU在空间激光通信终端控制中的技术实现
服务器·网络·单片机·嵌入式硬件·物联网·安全·信息与通信
优橙教育2 天前
5G网优培训 vs Java开发:转行选哪个?
java·开发语言·5g
星恒讯工业路由器2 天前
5G FWA技术演进与趋势
网络·5g·信息与通信·4g·5g fwa·3gpp规范·fwa趋势
X7x52 天前
跨厂商路由引入(重发布)实战指南:华为、华三、思科的逻辑差异与配置避坑
网络协议·信息与通信·信号处理·实施路由引入