# polloss
极化损耗
函数库: TyPhasedArray
# 语法
rho = polloss(fv_tr, fv_rcv)
rho = polloss(fv_tr, fv_rcv, pos_rcv)
rho = polloss(fv_tr, fv_rcv, pos_rcv, axes_rcv)
rho = polloss(fv_tr, fv_rcv, pos_rcv, axes_rcv, pos_tr)
rho = polloss(fv_tr, fv_rcv, pos_rcv, axes_rcv, pos_tr, axes_tr)
# 说明
rho = polloss(fv_tr, fv_rcv) 返回以分贝为单位的损失,这是由于发射场的极化 fv_tr 和接收天线的极化 fv_rcv 之间的不匹配。场向量位于与从发射器到接收器的传播方向正交的平面中。发送的场被表示为 2 乘 1 列向量 [Eh; Ev]。在该向量中,Eh 和 Ev 是场相对于发射器的局部坐标系的水平和垂直线性极化分量。接收天线的极化由 2 乘 1 列向量 fv_rcv 指定。您还可以以 [Eh; Ev] 的形式相对于接收天线的局部坐标系指定此极化。在此语法中,两个局部坐标轴都与全局坐标系对齐。 示例
rho = polloss(fv_tr, fv_rcv, pos_rcv) 还指定接收器的位置。接收器被定义为相对于全局坐标系的 3 乘 1 列向量 [x; y; z](位置单位为米)。此语法可以使用前面语法中的任何输入参数。 示例
rho = polloss(fv_tr, fv_rcv, pos_rcv, axes_rcv) 还指定正交轴 axes_rcv。这些轴将接收器的局部坐标系定义为 3 乘 3 的矩阵。第一列给出了局部系统相对于全局坐标系的 x 轴。第二列和第三列分别给出 y 轴和 z 轴。此语法可以使用前面语法中的任何输入参数。 示例
rho = polloss(fv_tr, fv_rcv, pos_rcv, axes_rcv, pos_tr) 还将发射器的位置指定为相对于全局坐标系的 3 乘 1 列向量 [x; y; z](位置单位为米)。此语法可以使用前面语法中的任何输入参数。 示例
rho = polloss(fv_tr, fv_rcv, pos_rcv, axes_rcv, pos_tr, axes_tr) 此外还指定正交轴 axes_tr。这些轴将变送器的局部坐标系定义为 3 乘 3 矩阵。第一列给出了局部系统相对于全局坐标系的 x 轴。第二列和第三列分别给出 y 轴和 z 轴。此语法可以使用前面语法中的任何输入参数。 示例
# 示例
45° 极化场与水平极化接收器不匹配
从 45° 极化的发射场和水平极化的接收器开始。默认情况下,发射器和接收器的局部轴与全局坐标系一致。计算极化损耗,单位为 dB。
using TyPhasedArray
using TyMath
fv_tr = [1; 1]
fv_rcv = [1; 0]
rho = polloss(fv_tr, fv_rcv)
rho = 3.010299956639813
正如预期的那样,损耗是 3dB,因为只有一半的场功率与接收天线极化相匹配。
极化损耗不受接收器位置的影响
从相同的发射器和接收器极化开始。将接收器放置在沿 y 轴 100 米的位置。变送器位于原点(默认位置),两个局部坐标轴与全局坐标系重合(默认情况下)。首先,计算极化损耗。然后,将接收器沿 x 轴移动 100 米,并再次计算极化损耗。
using TyPhasedArray
using TyBase
using TyMath
fv_tr = [1; 0]
fv_rcv = [1; 0]
pos_rcv = [0; 100; 0]
rho = Matrix{Float64}(undef, 1, 2)
rho[1] = polloss(fv_tr, fv_rcv, pos_rcv)
pos_rcv = [100; 100; 0]
rho[2] = polloss(fv_tr, fv_rcv, pos_rcv)
rho
rho = 1×2 Matrix{Float64}:
-0.0 -1.92865e-15
在任一位置都不会发生极化损耗。每个天线的球面基向量与其他天线平行,并且极化向量相同。
接收器轴旋转造成的损耗
从相同的发射器和接收器极化开始。将接收器放置在沿 y 轴 100 米的位置。变送器位于原点(默认值),并且两个局部坐标轴与全局坐标系(默认)一致。计算损失,然后将接收器绕 y 轴旋转 30°。这种旋转改变了发射器相对于接收器的方位角和仰角,从而改变了极化方向。
using TyPhasedArray
using TyBase
using TyMath
fv_tr = [1; 0]
fv_rcv = [1; 0]
pos_rcv = [0; 100; 0]
ax_rcv = azelaxes(0, 0)
rho = Matrix{Float64}(undef, 1, 2)
rho[1] = polloss(fv_tr, fv_rcv, pos_rcv, ax_rcv)
ax_rcv = roty(30) * ax_rcv
rho[2] = polloss(fv_tr, fv_rcv, pos_rcv, ax_rcv)
rho
rho = 1×2 Matrix{Float64}:
-0.0 1.24939
接收器极化向量保持不变。然而,旋转局部坐标系会改变接收天线极化的场相对于全局坐标的方向。这种变化导致 1.2 dB 的损耗。
极化损耗不受发射器位置的影响
从相同的发射器和接收器极化开始。将接收器放置在沿 y 轴 100 米的位置。变送器位于原点(默认值),并且两个局部坐标轴与全局坐标系(默认)一致。首先,计算极化损耗。然后,将发射器沿 x 轴移动 100 米,沿 y 轴移动 100 m,并再次计算极化损耗。
using TyPhasedArray
using TyBase
fv_tr = [1; 0]
fv_rcv = [1; 0]
pos_rcv = [0; 100; 0]
ax_rcv = eye(3)#azelaxes(0, 0);
pos_tr = [0; 0; 0]
rho = Matrix{Float64}(undef, 1, 2)
rho[1] = polloss(fv_tr, fv_rcv, pos_rcv, ax_rcv, pos_tr)
pos_tr = [100; 100; 0]
rho[2] = polloss(fv_tr, fv_rcv, pos_rcv, ax_rcv, pos_tr)
rho
rho = 1×2 Matrix{Float64}:
-0.0 -0.0
在任何一个位置都没有极化损耗,因为每个天线的球面基向量与其对应天线平行,并且极化向量相同。
绘制接收天线旋转时的极化损耗
指定相同的发射器和接收器极化,绘制本地接收天线轴围绕 x 轴旋转时的损耗。
using TyPhasedArray
using TyPlot
using TyBase
using TyMath
fv_tr = [1; 0]
fv_rcv = [1; 0]
发射天线的位置在原点,其局部轴与全局坐标系对齐。接收天线的位置沿着全局 x 轴为 100 米。然而,其局部 x 轴指向发射天线。
pos_tr = [0; 0; 0]
axes_tr = eye(3)
pos_rcv = [100; 0; 0]
axes_rcv0 = rotz(180) * eye(3)
将接收天线绕其本地x轴旋转一度。计算每个角度的损失。
angles = (0:1:359)'
n = size(angles, 2)
rho = zeros(1, n)
for k in 1:n
axes_rcv = rotx(angles[k]) * axes_rcv0
rho[k] = polloss(fv_tr, fv_rcv, pos_tr, axes_tr, pos_rcv, axes_rcv)
end
绘制极化损耗图。
hp = plot(angles, rho)
xtick = collect(0:(n - 1)) * 45
xticks(xtick)
grid("on")
title("Polarization loss versus receiving antenna rotation")
xlabel("Rotation angle (degrees)")
ylabel("Loss (dB)")
角度损耗图显示了极化正交的 90 度和 270 度处的零点(Inf dB)。
# 输入参数
fv_tr - 线性分量表示中的传输场向量2 乘 1 复值列向量
线性分量表示中的传输场向量,指定为 2 乘 1 的复值列向量 [Eh; Ev]。在这个向量中,Eh 和 Ev 是场的水平和垂直线性分量。
示例: [1; 1]
复数支持: 是
fv_rcv - 线性分量表示中的接收器极化向量2 乘 1 复值列向量
线性分量表示中的接收器极化向量指定为 2 乘 1 的复值列向量 [Eh; Ev]。在该向量中,Eh 和 Ev 是极化向量的水平和垂直线性分量。
示例: [0; 1]
复数支持: 是
pos_rcv - 接收天线位置[0; 0; 0](默认)| 3 乘 1 实值列向量
接收天线位置指定为3乘1的实值列向量。pos_rcv 的分量在全局坐标系中指定为 [x; y; z]。
示例: [1000; 0; 0]
axes_rcv - 接收天线本地坐标轴3 乘 3 单位矩阵(默认)| 3 乘 3 实值矩阵
接收天线的局部坐标轴指定为 3 乘 3 的实值矩阵。每列是一个单位向量,分别指定局部坐标系相对于全局坐标系的正交 x、y 和 z 轴。每一列都以 [x; y; z] 的形式书写。如果将 axes_rcv 指定为单位矩阵,则局部坐标系与全局坐标系对齐。
示例: [1 0 0; 0 1 0; 0 0 1]
pos_tr - 变送器位置[0; 0; 0](默认)| 3 乘 1 实值列向量
指定为 3 乘 1 实值列向量的变送器位置。pos_tr 的分量在全局坐标系中指定为 [x; y; z]。
示例: [0; 0; 0]
axes_tr - 发射天线局部坐标轴3 乘 3 单位矩阵(默认)| 3 乘 3 实值矩阵
发射天线的局部坐标轴指定为 3 乘 3 的实值矩阵。每列是一个单位向量,分别指定局部坐标系相对于全局坐标系的正交 x、y 和 z 轴。每一列都以 [x; y; z]的形式书写。如果 axes_tr 是单位矩阵,则局部坐标系与全局坐标系对齐。
示例:[1 0 0; 0 1 0; 0 0 1]
# 输出参数
rho - 极化损耗标量
极化损耗以分贝为单位以标量形式返回。极化损耗是归一化发射场向量到归一化接收天线极化向量的投影。它的值介于零和一之间。当转换为 dB时(符号更改为正损耗),其值介于 0 和 -Inf 之间。
# 更多关于
场和接收器失配引起的极化损耗
当接收器与入射电磁场的极化不匹配时,就会发生损耗。
在发射天线发射的场极化的情况下,首先看发射天线的远区,如下图所示。在这个位置——也就是接收天线的位置——电磁场与从发射机到接收机的方向正交。
可以通过相对于发射器局部坐标系的球面基的向量分量来表示发射电磁场 fv_tr。这个基础的方向取决于它从原点开始的方向。方向由接收天线相对于发射机本地坐标系的方位角和仰角指定。然后,根据发射器局部坐标系的球面基向量,发射器的极化为
以相同的方式,接收器的极化向量fv_rcv是相对于接收器的局部坐标系中的球面基来定义的。现在,方位角和仰角指定发射器相对于接收器本地坐标系的位置。您可以根据接收器局部坐标系的球面基向量来写入接收天线的极化:
此图显示了不同发射器和接收器本地坐标系的构造。它还显示了用于写入场分量的球面基向量。
极化损耗是归一化发射场向量在归一化接收机极化向量上的投影(或点积)。请注意,损失的发生是因为两个向量的方向不匹配,而不是它们的大小。由于向量是在不同的坐标系中定义的,因此必须将它们转换为全局坐标系才能形成投影。极化损耗定义为:
# 参考文献
[1] Mott, H. Antennas for Radar and Communications.John Wiley & Sons, 1992.