メインコンテンツ

gaspl

大気ガス吸収による RF 信号の減衰

説明

L = gaspl(range,freq,T,P,den) は、大気ガス吸収による信号減衰 L を返します。

  • range は信号のパス長を表します。

  • freq 信号の搬送波周波数を表します。

  • T は周囲温度を表します。

  • P は大気圧を表します。

  • den は大気中の水蒸気密度を表します。

関数 gaspl は、国際電気通信連合 (ITU) の大気ガス減衰モデル [1]を適用し、主に酸素および水蒸気による信号のパス損失を計算します。このモデルは、減衰を、周囲温度、圧力、水蒸気密度、および信号周波数による関数として計算します。

この関数において信号パスは、温度 T、大気圧 P、および水蒸気密度 den が信号パスに沿って変化しない、均一な環境に完全に含まれていなければなりません。Radar Toolbox で関数 tropopl と関数 atmositu を使用して、標高による大気のパラメーターの変化を考慮できます。

減衰モデルは、1–1000 GHz の周波数に対してのみ適用されます。

すべて折りたたむ

大気圧 101.300 kPa で温度が 15C の場合の 1-1000 GHz の減衰スペクトルを計算します。水蒸気密度 7.5 g/m3 のスペクトルをプロットし、乾燥した大気 (水蒸気密度ゼロ) のスペクトルをプロットします。

減衰周波数を設定します。

freq = [1:1000]*1e9;

1 km のパスの距離を想定します。

R = 1000.0;

水蒸気を含む大気について減衰を計算します。

T = 15;
P = 101300.0;
W = 7.5;
L = gaspl(R,freq,T,P,W);

乾燥した大気について減衰を計算します。

L0 = gaspl(R,freq,T,P,0.0);

減衰をプロットします。

semilogy(freq/1e9,L)
hold on
semilogy(freq/1e9,L0)
grid
xlabel('Frequency (GHz)')
ylabel('Specific Attenuation (dB)')
hold off

Figure contains an axes object. The axes object with xlabel Frequency (GHz), ylabel Specific Attenuation (dB) contains 2 objects of type line.

最初に、1 GHz-1000 GHz の周波数に対して大気ガスの特定の減衰モデルをプロットします。海水面の乾燥空気の圧力を 101.325e5 kPa、水蒸気密度を 7.5 g/m3 と想定します。大気温度は、20C です。特定の減衰は、キロメートルあたりの dB 単位の損失として定義されます。次に、範囲内における 10 GHz での実際の減衰をプロットします。

特定の大気ガスによる減衰のプロット

大気温度、圧力、水蒸気密度を設定します。

T = 20.0;
Patm = 101.325e3;
rho_wv = 7.5;

伝播距離、光の速度、および周波数を設定します。

km = 1000.0;
c = physconst('LightSpeed');
freqs = [1:1000]*1e9;

大気ガス損失を計算およびプロットします。

loss = gaspl(km,freqs,T,Patm,rho_wv);
semilogy(freqs/1e9,loss)
grid on
xlabel('Frequency (GHz)')
ylabel('Specific Attenuation (dB/km)')

Figure contains an axes object. The axes object with xlabel Frequency (GHz), ylabel Specific Attenuation (dB/km) contains an object of type line.

実際の大気ガスおよび自由空間による減衰のプロット

10 GHz での自由空間による損失と大気ガスによる損失を 1-100 km の範囲について計算します。周波数は、X バンドのレーダーに対応します。次に、自由空間による損失と合計 (大気および自由空間による) 損失をプロットします。

ranges = [1:100]*1000;
freq_xband = 10e9;
loss_gas = gaspl(ranges,freq_xband,T,Patm,rho_wv);
lambda = c/freq_xband;
loss_fsp = fspl(ranges,lambda);
semilogx(ranges/1000,loss_gas + loss_fsp.',ranges/1000,loss_fsp)
legend('Atmospheric + Free Space Loss','Free Space Loss','Location','SouthEast')
xlabel('Range (km)')
ylabel('Loss (dB)')

Figure contains an axes object. The axes object with xlabel Range (km), ylabel Loss (dB) contains 2 objects of type line. These objects represent Atmospheric + Free Space Loss, Free Space Loss.

入力引数

すべて折りたたむ

減衰を計算するために使用される信号のパス長 (メートル単位)。非負の実数値スカラーまたはベクトルとして指定します。複数のパス長を同時に指定できます。

例: [13000.0,14000.0]

信号周波数 (Hz 単位)。正の実数値スカラーあるいは N 行 1 列の非負の実数値ベクトルまたは 1 行 N 列の非負の実数値ベクトルとして指定します。複数の周波数を同時に指定できます。周波数は 1-1000 GHz の範囲でなければなりません。

例: [1.4e9,2.0e9]

周囲温度 (°C 単位)。実数値のスカラーとして指定します。

例: -10.0

乾燥空気の圧力 (Pa 単位)。正の実数値スカラーとして指定します。海水面の標準気圧は、101325 Pa です。

例: 101300.0

水蒸気の密度 (絶対湿度。g/m3 単位)。非負の実数値スカラーとして指定します。30° C での大気の最大水蒸気密度は、約 30.0 g/m3 です。0° C での大気の最大水蒸気密度は、約 5.0 g/m3 です。

例: 4.0

出力引数

すべて折りたたむ

信号の減衰 (dB 単位)。実数値の MN 列の行列として返されます。各行列の行は、異なるパスを表します。ここで、M はパスの数です。各列は、異なる周波数を表します。ここで、N は周波数の数です。

詳細

すべて折りたたむ

参照

[1] Radiocommunication Sector of International Telecommunication Union. Recommendation ITU-R P.676-10: Attenuation by atmospheric gases 2013.

拡張機能

すべて展開する

バージョン履歴

R2017b で導入

参考

| |