智能反射面| 关于UPA信道建模

前言

这篇文章想讲一下 智能反射面中 UPA (uniform planar array)的信道建模。 之前在智能反射面| Matlab代码实现的信道仿真一文中, 很简略地给了一个基本的UPA仿真代码, 这篇更详细地说一下 关于 面天线 的建模。

当然了, UPA并不只使用于智能反射面中, 尽管在科研方向上, 为了简化问题, 在MIMO问题中大家假设的往往都是线天线阵(ULA), 但实际中往往都是二维的UPA天线。 而在智能反射面中, 作者们实在无法睁眼说瞎话地假设智能反射面是一个线阵了, 毕竟人家名字里都带着一个“面”字还是要“面子”的。 也因此,在IRS方向中, UPA阵列的信道建模更普遍。

结论

先说结论, 是对需要只需要答案而不求甚解的读者的尊重。

对于一个 P × Q P\times Q P×Q的UPA天线阵列, 即共有 P P P行, Q Q Q列天线。 则对于 ( θ , ϕ ) (\theta, \phi) (θ,ϕ)方向的响应可以写为( θ \theta θ为水平角, 被称为azimuth angle, ϕ \phi ϕ 为 仰角, 被称为 elevation angle) :
a ( θ , ϕ ) = 1 P Q [ 1 , ⋯   , e ȷ π ( p sin ⁡ θ sin ⁡ ϕ + q cos ⁡ ϕ ) , ⋯   e ȷ π ( ( Q − 1 ) sin ⁡ θ sin ⁡ ϕ + ( P − 1 ) cos ⁡ ϕ ) ] T (1) \begin{array}{r} \mathbf{a}(\theta, \phi)=\frac{1}{\sqrt{PQ}}\left[1, \cdots, e^{\jmath \pi(p \sin \theta \sin \phi+q \cos \phi)}, \cdots\right. \left.e^{\jmath \pi((\sqrt{Q}-1) \sin \theta \sin \phi+(\sqrt{P}-1) \cos \phi)}\right]^{T} \end{array} \tag{1} a(θ,ϕ)=PQ ​1​[1,⋯,eȷπ(psinθsinϕ+qcosϕ),⋯eȷπ((Q ​−1)sinθsinϕ+(P ​−1)cosϕ)]T​(1)
其中 p p p 和 q q q 代表了第 p p p行,第 q q q列的天线, 注意, 是从0行0列开始计数的。 另外需要注意的一点是, 这是默认天线以半波长为间隔。 如果你看到的指数项是类似于 e ȷ 2 π λ d e^{\jmath \frac{2\pi}{\lambda}d} eȷλ2π​d 之类的形式, 其实是一样的, 因为我们一般默认 d = 1 2 λ d = \frac{1}{2}\lambda d=21​λ。

对于(1), 还有一个非常常用且笔者更推荐的形式:

a ( θ , ϕ ) = a y ( θ , ϕ ) ⊗ a z ( ϕ ) (2) \mathbf{a}(\theta, \phi)=\mathbf{a}_y(\theta, \phi) \otimes \mathbf{a}_z(\phi) \tag{2} a(θ,ϕ)=ay​(θ,ϕ)⊗az​(ϕ)(2)
其中,
a y ( θ , ϕ ) ≜ 1 Q [ 1 , e j π sin ⁡ θ l sin ⁡ ϕ l , … , e j π ( Q − 1 ) sin ⁡ θ l sin ⁡ ϕ l ] T a z ( ϕ l ) ≜ 1 P [ 1 , e j π cos ⁡ ϕ l , … , e j π ( P − 1 ) cos ⁡ ϕ l ] T \mathbf{a}_{y}(\theta, \phi) \triangleq \frac{1}{\sqrt{Q}}[1, e^{\mathrm{j}\pi\sin\theta_l\sin\phi_l}, \dots, e^{\mathrm{j}\pi(Q-1)\sin\theta_l\sin\phi_l}]^T\\ \mathbf{a}_{z}(\phi_l) \triangleq \frac{1}{\sqrt{P}}[1, e^{\mathrm{j}\pi\cos\phi_l}, \dots, e^{\mathrm{j}\pi(P-1)\cos\phi_l}]^T ay​(θ,ϕ)≜Q ​1​[1,ejπsinθl​sinϕl​,…,ejπ(Q−1)sinθl​sinϕl​]Taz​(ϕl​)≜P ​1​[1,ejπcosϕl​,…,ejπ(P−1)cosϕl​]T

这里显然(2)比(1)清爽了很多, 很容易验证, 两者是等价的。

有了天线响应, 那么信道也就非常容易建模了。 对于发送端和接收端都是UPA阵列的情况下, 多径信道可以写为

H = N r N t ∑ l = 0 L α l a r , l ( θ l , ϕ l ) a t , l H ( ψ l , γ l ) \mathbf{H}=\sqrt{N_{\mathrm{r}} N_{\mathrm{t}}} \sum_{l=0}^{L} \alpha_{l} \mathbf{a}_{\mathrm{r}, l}\left(\theta_{l}, \phi_{l}\right) \mathbf{a}_{\mathrm{t}, l}^{H}\left(\psi_{l}, \gamma_{l}\right) H=Nr​Nt​ ​l=0∑L​αl​ar,l​(θl​,ϕl​)at,lH​(ψl​,γl​)
简而言之, 对于每一径,信道就是接收的 a \mathbf{a} a 与 发送端的 a \mathbf{a} a 的 共轭转置相乘, 再乘上一个标量系数。

UPA详细建模

(1)和(2)是怎么来的呢? 事实上, 他基于且必须基于下图中的建模:
智能反射面| 关于UPA信道建模
如图:

  • 假设UPA建立在yz平面上, 且原点为UPA的左下角第一个元素。
  • θ \theta θ为用户投影到 x y xy xy平面后, 与 x x x轴夹角
  • ϕ \phi ϕ为用户与 z z z轴负半轴夹角。

以这样的建模, 是可以推出 (1)和(2)式的。

怎么说呢? 以 ϕ \phi ϕ为例。 不考虑UPA的水平方向, 比如令 Q = 1 Q=1 Q=1, 也就是说只有一列, 此时UPA退化为一个ULA。 那么我们都知道, ULA的响应是什么呢? 是以入射波与ULA的夹角作为入射角。 那么在ULA的这个三维建模中, 这个入射角, 显然, 就是且必须是 用户 与 z z z轴负半轴的夹角。 因为UPA中的竖直方向其实就是 z z z轴, 那么竖直方向上的入射夹角就是用户与 z z z的夹角。 或者, 更容易理解的, z z z轴与用户, 一线一点构成一个平面, 这个平面就是ULA的平面。 那么谁是入射角, 一目了然。

至于 θ \theta θ角为什么这么建模? 推导太繁琐了, 不写出了, 按立体几何再利用远场近似就能推导。 这里想说的是其实很简单, (1)中为什么是 sin ⁡ θ \sin\theta sinθ而不是 cos ⁡ θ \cos\theta cosθ呢? 因为按照图中的建模, θ \theta θ角的范围显然是-90度到90度之间, 而这样 cos ⁡ θ \cos\theta cosθ的取值范围只有[0,1], 但 sin ⁡ θ \sin\theta sinθ的取值范围是[-1,1]。 无疑是后者。

响应求导

天线响应对于 θ \theta θ和 ϕ \phi ϕ的求导, 在推算CRLB或者优化的时候, 很有用, 那结果是什么呢? 利用(2)外加一个经典的结论:

d ( U ⊗ V ) = d ( U ) ⊗ V + U ⊗ d ( V ) \mathrm{d}(\mathbf{U}\otimes \mathbf{V}) = \mathrm{d}(\mathbf{U})\otimes \mathbf{V} +\mathbf{U}\otimes \mathrm{d}(\mathbf{V}) d(U⊗V)=d(U)⊗V+U⊗d(V)

结合(2), 很容易有:
∂ a ( θ , ϕ ) ∂ θ = ( j π cos ⁡ θ sin ⁡ ϕ [ 0 , 1 … , Q − 1 ] T ⊙ a y ( θ , ϕ ) ) ⊗ a z ( ϕ ) ∂ a ( θ , ϕ ) ∂ ϕ = ( j π sin ⁡ θ cos ⁡ ϕ [ 0 , 1 … , Q − 1 ] T ⊙ a y ( θ , ϕ ) ) ⊗ a z ( ϕ ) + a y ( θ , ϕ ) ⊗ ( − j π sin ⁡ ϕ [ 0 , 1 , … , P − 1 ] T ⊙ a z ( ϕ ) ) \frac{\partial\mathbf{a}(\theta,\phi)}{\partial\theta}=\left(\mathrm{j} \pi \cos \theta \sin \phi[0,1 \ldots, Q-1]^{T} \odot \mathbf{a}_{y}(\theta, \phi)\right) \otimes \mathbf{a}_{z}(\phi)\\ \frac{\partial\mathbf{a}(\theta,\phi)}{\partial\phi}=\begin{array}{l} \left(\mathrm{j} \pi \sin \theta \cos \phi[0,1 \ldots, Q-1]^{T} \odot \mathbf{a}_{y}(\theta, \phi)\right) \otimes \mathbf{a}_{z}(\phi) +\mathbf{a}_{y}(\theta, \phi) \otimes\left(-\mathrm{j} \pi \sin \phi[0,1, \ldots, P-1]^{T} \odot \mathbf{a}_{z}(\phi)\right) \end{array} ∂θ∂a(θ,ϕ)​=(jπcosθsinϕ[0,1…,Q−1]T⊙ay​(θ,ϕ))⊗az​(ϕ)∂ϕ∂a(θ,ϕ)​=(jπsinθcosϕ[0,1…,Q−1]T⊙ay​(θ,ϕ))⊗az​(ϕ)+ay​(θ,ϕ)⊗(−jπsinϕ[0,1,…,P−1]T⊙az​(ϕ))​
其中 ⊙ \odot ⊙是哈达玛积。

上一篇:python余弦相似度


下一篇:CAS5.3单点服务-登录验证直接调用外部接口