メインコンテンツ

albersheim

Albersheim の方程式を使用した必要な SNR

説明

SNR = albersheim(Pd,Pfa) は、S/N 比をデシベル単位で返します。この値は、単一のサンプルに対して指定された検出確率 Pd と偽警報の確率 Pfa を達成するために必要な比率を示します。

SNR = albersheim(Pd,Pfa,N) は、N サンプルの非コヒーレント積分に必要な SNR を決定します。

すべて折りたたむ

検出確率 0.9 を達成するために必要な単一パルスの SNR を、偽警報確率の関数として計算します。

検出確率を 0.9 に設定し、偽警報の確率を 0.0001 ~ 0.01 に設定します。

Pd = 0.9;
Pfa = 0.0001:0.0001:.01;

すべての偽警報の確率について Albersheim 方程式をループ処理します。

snr = zeros(1,length(Pfa));
for j = 1:length(Pfa)
    snr(j) = albersheim(Pd,Pfa(j));
end

SNR を偽警報の確率の関数としてプロットします。

semilogx(Pfa,snr)

grid
axis tight
xlabel("Probability of False Alarm")
ylabel("Required SNR (dB)")
title("Required SNR for P_D = "+Pd+" (N = 1)")

Figure contains an axes object. The axes object with title Required SNR for P_D = blank 0 . 9 blank (N blank = blank 1 ), xlabel Probability of False Alarm, ylabel Required SNR (dB) contains an object of type line.

検出確率 0.9 を達成するために必要な 10 個の非コヒーレント積分パルスの SNR を、偽警報の確率の関数として計算します。

検出確率を 0.9 に設定し、偽警報の確率を 0.0001 ~ 0.01 に設定します。

Pd = 0.9;
Pfa = 0.0001:0.0001:.01;
Npulses = 10;

すべての偽警報の確率について Albersheim 方程式をループ処理します。

snr = zeros(1,length(Pfa));
for j = 1:length(Pfa)
    snr(j) = albersheim(Pd,Pfa(j),Npulses);
end

SNR を偽警報の確率の関数としてプロットします。

semilogx(Pfa,snr)

grid
axis tight
xlabel("Probability of False Alarm")
ylabel("Required SNR (dB)")
title("Required SNR for P_D = "+Pd+" (N = 10)")

Figure contains an axes object. The axes object with title Required SNR for P_D = blank 0 . 9 blank (N blank = blank 10 ), xlabel Probability of False Alarm, ylabel Required SNR (dB) contains an object of type line.

入力引数

すべて折りたたむ

検出確率。正のスカラーとして指定します。

データ型: single | double

偽警報の確率。正のスカラーとして指定します。

データ型: single | double

非コヒーレント積分のパルス数。正のスカラーとして指定します。

データ型: single | double

詳細

すべて折りたたむ

拡張機能

すべて展開する

バージョン履歴

R2011a で導入

参考