このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
gaspl
大気ガスによる RF 信号の減衰
説明
は、大気中を伝播する信号の減衰 L
= gaspl(range
,freq
,T
,P
,den
)L
を返します。
range
は信号のパス長を表します。freq
信号の搬送波周波数を表します。T
は周囲温度を表します。P
は大気圧を表します。den
は大気中の水蒸気密度を表します。
関数 gaspl
は、International Telecommunication Union (ITU) の大気ガス減衰モデル [1]を適用し、主に酸素および水蒸気による信号のパス損失を計算します。このモデルは、減衰を、周囲温度、圧力、水蒸気密度、および信号周波数による関数として計算します。
この関数において信号パスは、温度 T
、大気圧 P
、および水蒸気密度 den
が信号パスに沿って変化しない、均一な環境に完全に含まれていなければなりません。Radar Toolbox で関数 tropopl
と関数 atmositu
を使用して、標高による大気のパラメーターの変化を考慮できます。
減衰モデルは、1–1000 GHz の周波数に対してのみ適用されます。
例
大気ガスによる減衰スペクトル
大気圧 101.300 kPa で温度が C の場合の 1-1000 GHz の減衰スペクトルを計算します。水蒸気密度 7.5 のスペクトルをプロットし、乾燥した大気 (水蒸気密度ゼロ) のスペクトルをプロットします。
減衰周波数を設定します。
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
大気ガスおよび自由空間による減衰のプロット
最初に、1 GHz-1000 GHz の周波数に対して大気ガスの特定の減衰モデルをプロットします。海水面の乾燥した空気の大気圧を 101.325e5 kPa、水蒸気密度を 7.5 と想定します。大気温度は、C です。特定の減衰は、キロメートルあたりの 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)')
実際の大気ガスおよび自由空間による減衰のプロット
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)')
入力引数
range
— 信号のパス長
非負の実数値スカラー | M 行 1 列の非負の実数値列ベクトル | 1 行 M 列の非負の実数値行ベクトル
減衰を計算するために使用される信号のパス長。非負の実数値スカラーまたはベクトルとして指定します。複数のパス長を同時に指定できます。単位はメートルです。
例: [13000.0,14000.0]
freq
— 信号周波数
正の実数値スカラー | N 行 1 列の非負の実数値列ベクトル | 1 行 N 列の非負の実数値行ベクトル
信号の周波数。正の実数値スカラー、あるいは N 行 1 列の非負の実数値ベクトルまたは 1 行 N 列の非負の実数値ベクトルとして指定します。複数の周波数を同時に指定できます。周波数は 1-1000 GHz の範囲でなければなりません。単位はヘルツです。
例: [1.4e9,2.0e9]
T
— 周囲温度
実数値のスカラー
周囲温度。実数値スカラーとして指定します。単位は度数 (摂氏) です。
例: -10.0
P
— 乾燥した空気の大気圧
正の実数値スカラー
乾燥した空気の大気圧。正の実数値スカラーとして指定します。単位は Pa です。海水面の標準気圧は、101325 Pa です。
例: 101300.0
den
— 水蒸気密度
非負の実数値スカラー
水蒸気密度 (絶対湿度)。非負の実数値スカラーとして指定します。単位は g/m3 です。30° C での大気の最大水蒸気密度は、約 30.0 g/m3 です。0° C での大気の最大水蒸気密度は、約 5.0 g/m3 です。
例: 4.0
出力引数
L
— 信号の減衰
実数値の M 行 N 列の行列
信号の減衰。実数値の M 行 N 列の行列として返されます。各行列の行は、異なるパスを表します。ここで、M はパスの数です。各列は、異なる周波数を表します。ここで、N は周波数の数です。単位は dB です。
詳細
大気ガスによる減衰モデル
このモデルは、大気ガスを通って伝播する信号の減衰を計算します。
電磁信号は、大気を通って伝播するときに減衰します。この効果は主に、酸素と水蒸気の吸収共鳴線によるもので、窒素ガスによる影響もわずかにあります。また、このモデルは 10 GHz 未満の連続的吸収スペクトルを含みます。ITU モデル Recommendation ITU-R P.676-10: Attenuation by atmospheric gases を使用します。このモデルは、信号の特定の減衰 (キロメートルごとの減衰) を、温度、圧力、水蒸気密度、および信号周波数による関数として計算します。この大気ガス モデルは 1-1000 GHz の周波数に対して有効であり、偏波の領域にも偏波でない領域にも適用されます。
各周波数の特定の減衰に対する式は、次のとおりです。
ここで、量 N"() は複素数の大気屈折率の虚数部で、次のようなスペクトル線成分と連続成分で構成されます。
スペクトル成分は、離散スペクトルの個別の項の合計で構成され、これは、局在化された周波数帯域関数 F(f)i にスペクトル線の強度 Si をかけたもので構成されます。大気中の酸素については、各スペクトル線の強度は次のように計算されます。
大気中の水蒸気については、各スペクトル線の強度は次のように計算されます。
P は乾燥した空気の大気圧、W は水蒸気分圧、T は周囲温度です。圧力の単位はヘクトパスカル (hPa)、温度はケルビン度です。水蒸気分圧 W は、水蒸気密度 ρ と次のような関係があります。
合計大気圧は P + W です。
各酸素の線について、Si は、2 つのパラメーター a1 と a2 によって変化します。同様に、各水蒸気の線は、2 つのパラメーター b1 と b2 によって変化します。このセクションの最後に記載している ITU の文献には、これらのパラメーターの表が周波数の関数として含まれています。
局在化された周波数帯域関数 Fi(f) は、周波数についての複雑な関数であり、以下に記載する ITU の参考文献で説明されています。また、この関数は、文献内で表にもなっている経験的モデル パラメーターに依存します。
パスに沿った狭帯域信号の合計の減衰を計算するために、関数はパス長 R を特定の減衰にかけます。それにより、合計の減衰は、Lg= R(γo + γw) となります。
この減衰モデルは、広帯域信号に適用できます。最初に、広帯域信号を周波数サブバンドに分割し、各サブバンドに減衰を適用します。次に、すべての減衰したサブバンド信号を足して、合計の減衰した信号を算出します。
参照
[1] Radiocommunication Sector of International Telecommunication Union. Recommendation ITU-R P.676-10: Attenuation by atmospheric gases 2013.
拡張機能
C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。
使用上の注意および制限:
可変サイズ入力はサポートしません。
バージョン履歴
R2017b で導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)