最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

commtest.ErrorRate

誤り率テスト コンソールの作成

構文

h = commtest.ErrorRate
h = commtest.ErrorRate(sys)
h = commtest.ErrorRate(sys,'PropertyName',PropertyValue,...)
h = commtest.ErrorRate('PropertyName',PropertyValue,...)

説明

h = commtest.ErrorRate は誤り率テスト コンソール h 返します。誤り率テスト コンソールは誤り率を取得するためにテスト対象のシステムのシミュレーションを実行します。

h = commtest.ErrorRate(sys) は、指定された各プロパティを h に設定し、関連付けられたテスト対象システム SYS で誤り率テスト コンソール h を返します。

h = commtest.ErrorRate(sys,'PropertyName',PropertyValue,...) は関連付けられたテスト対象のシステム sys で誤り率テスト コンソール h を返します。指定された各プロパティ PropertyName は指定された値 PropertyValue に設定されます。

h = commtest.ErrorRate('PropertyName',PropertyValue,...) は、指定された各プロパティ 'PropertyName' を指定の値 PropertyValue に設定して、誤り率テスト コンソール h を返します。

プロパティ

誤り率テスト コンソール オブジェクトには、次の表のプロパティがあります。いずれのプロパティを設定しても、オブジェクトがリセットされます。"関連しない" プロパティとは、設定できても値が測定値に影響を及ぼさないプロパティです。同様に、disp メソッドを使用して関連しないプロパティを表示することもできません。明示されていない限り、どのプロパティも書き換え可能です。

プロパティ説明
説明'誤り率テスト コンソール'。読み取り専用。
SystemUnderTestNameテスト対象システムの名前。読み取り専用。
FrameLength

各反復での伝送フレームの長さを指定します。このプロパティは、テスト対象システムが有効なテスト入力を登録したときに初めて有意になります。

  • テスト対象システムが NumTransmissions テスト入力を登録し、その getInput メソッドを呼び出すと、誤り率テスト コンソールは FrameLength に保存された値を返します。内部のデータ ソースを使用して、テスト対象システムはこの値によって指定された長さの伝送フレームを生成します。

  • テスト対象システムが DiscreteRandomSource テスト入力を登録し、その getInput メソッドを呼び出すと、誤り率テスト コンソールはシンボルのフレームを生成して返します。シンボルのフレームの長さは FrameLength プロパティと一致します。このプロパティの既定値は 500 です。

IterationMode

オブジェクトがシミュレーション ポイントを決定する方法を指定します。

  • Combinatorial に設定すると、オブジェクトは登録済みのテスト パラメーター スイープ値の可能な組み合わせのすべてのシミュレーションを実行します。

  • Indexed に設定すると、オブジェクトはインデックス付きスイープ値セットのすべてのシミュレーションを実行します。ith スイープ値セットは、各スイープ値ベクトルまたは各登録済みテスト パラメーターの ith 要素で構成されます。すべてのスイープ値ベクトルは、単位長である値を除き、同じ長さでなければなりません。

次のスイープ パラメーター設定については、このことに注意してください。

  • Parameter1 = [a1 a2]

  • Parameter2 = [b1 b2]

  • Parameter3 = [c1]

インデックス付きモードでは、テスト コンソールは次のスイープ パラメーター セットについてシミュレーションを実行します。

(a1, b1, c1)

(a2, b2, c1)

連結モードでは、テスト コンソールは次のスイープ パラメーター セットについてシミュレーションを実行します。

(a1, b1, c1)

(a1, b2, c1)

(a2, b1, c1)

(a2, b2, c1)

SystemResetMode

システムがリセットされるシミュレーションの実行の段階を指定します。

  • Reset at new simulation point に設定すると、テスト対象システムは新しいシミュレーション ポイントの冒頭にリセットされます。

  • Reset at every iteration に設定すると、テスト対象システムは反復のたびにリセットされます。

SimulationLimitOption

スイープ パラメーター ポイントごとにシミュレーションの停止方法を指定します。

  • Number of transmissions に設定すると、スイープ パラメーター ポイントのシミュレーションは伝送回数が MaxNumTransmissions と等しくなると停止します。

    • MaxNumTransmissions と比較する伝送回数を含む登録済みテスト ポイントの名前に TransmissionCountTestPoint を設定します。

  • Number of errors に設定すると、スイープ パラメーター ポイントのシミュレーションは誤り数が MinNumErrors と等しくなると停止します。

    • MinNumErrors と比較するエラー数を含む登録済みテスト ポイントの名前に ErrorCountTestPoint を設定します。

  • Number of errors or transmissions に設定すると、2 つの条件の 1 つを満たす場合にスイープ パラメーター ポイントのシミュレーションが停止します。

    • シミュレーションは、伝送回数が MaxNumTransmissions の値と一致すると停止します。

    • NumErrors と一致する誤り数を取得するとシミュレーションは停止します。

  • このプロパティを Number of errors and transmissions に設定すると、次の条件を満たす場合にスイープ パラメーター ポイントのシミュレーションが停止します。

    • 伝送回数 "および" エラー数が少なくとも MinNumTransmissionsMinNumErrors の値に達したときにシミュレーションは停止します。

MaxNumTransmissions プロパティと比較する伝送回数を含む登録済みテスト ポイントの名前に TransmissionCountTestPoint を設定します。

シミュレーションの長さを制御するには、MinNumErrors と比較するエラー数を含む登録済みテスト ポイントの名前に ErrorCountTestPoint を設定します。

有効な登録済みテスト ポイント名を表示するには、誤り率テスト コンソールの info メソッドを呼び出します。

MaxNumTransmissions

スイープ パラメーター ポイントのシミュレーション停止までにオブジェクトがカウントする最大伝送回数を指定します。このプロパティは、SimulationLimitOptionNumber of transmissions または Number of errors or transmissions のときにのみ有意になります。

  • SimulationLimitOptionNumber of transmissions に設定した場合、MaxNumTransmissions で指定される伝送回数に達すると各スイープ パラメーター ポイントのシミュレーションは停止します。

  • SimulationLimitOptionNumber of errors or transmissions に設定すると、各スイープ パラメーター ポイントのシミュレーションは、2 つの条件の 1 つが満たされると停止します。

    • MaxNumTransmissions で指定された伝送回数が完了すると、シミュレーションは停止します。

    • MinNumErrors で指定された誤り数を取得するとシミュレーションは停止します。

TransmissionCountTestPoint プロパティは、カウント伝送タイプを含む登録済みテスト ポイントの名前を指定します。誤り率テスト コンソールの info メソッドを呼び出すと、有効な登録済みテスト ポイントが表示されます。このプロパティに登録済みテスト ポイントが含まれる場合、テスト コンソールは各スイープ パラメーター ポイントについて MaxNumTransmissions の値と等しい回数だけ反復を実行します。このプロパティに登録済みテスト パラメーターがない場合は、テスト コンソールは MaxNumTransmissions の値と等しい回数だけ反復を実行して停止します。既定値は 1000 です。

MinNumErrors

スイープ パラメーター ポイントのシミュレーション停止までにオブジェクトがカウントする最小誤り数を指定します。このプロパティは、SimulationLimitOptionNumber of errors または Number of errors or transmissions に設定した場合にのみ有意になります。

  • SimulationLimitOptionNumber of errors に設定した場合、MinNumErrors プロパティで指定した誤り数に達すると、各パラメーター ポイントのシミュレーションは停止します。

  • SimulationLimitOption プロパティを Number of errors or transmissions に設定すると、各スイープ パラメーター ポイントのシミュレーションは 2 つの条件の 1 つが満たされると停止します。

    • MaxNumTransmissions プロパティで指定された誤り数に達するとシミュレーションは停止します。

    • MinNumErrors プロパティで指定された誤り数に達するとシミュレーションは停止します。

ErrorCountTestPoint プロパティをカウントを含む登録済みテスト ポイントの名前に設定することで、エラー数で使用するエラーのタイプを指定します。有効な登録済みテスト ポイント名を表示するには、誤り率テスト コンソールの info メソッドを呼び出します。この既定値は 100 です。

TransmissionCountTestPoint

テスト コンソールのシミュレーションの停止メカニズムを制御する伝送回数を含むテスト ポイントを指定して登録します。このプロパティは、SimulationLimitOptionNumber of transmissionsNumber of errors or transmissionsNumber of errors and transmissions のいずれかに設定した場合にのみ有意になります。このシナリオでは、テスト ポイントを登録した場合、TransmissionCountTestPointNot set と等しいと、このプロパティの値が登録済みテスト ポイント名の値に自動的に更新されます。有効なテスト ポイント名を表示するには、info メソッドを呼び出します。

ErrorCountTestPoint

シミュレーションの停止メカニズムを制御するエラー数を含むテスト ポイント名を指定して登録します。このプロパティは、SimulationLimitOption プロパティを Number of errorsNumber of errors or transmissionsNumber of errors and transmissions のいずれかに設定した場合にのみ有意になります。このシナリオでは、テスト ポイントを登録した場合、ErrorCountTestPointNot set と等しいと、このプロパティの値が登録済みテスト ポイント名の値に自動的に更新されます。有効なテスト ポイント名を表示するには、info メソッドを呼び出します。

メソッド

誤り率テスト コンソール オブジェクトには、以下のメソッドがあります。

run

シミュレーションを実行します。

テスト対象システムに対して指定した数の誤り率シミュレーションを指定したパラメーター値のセットで実行します。Parallel Computing Toolbox™ ライセンスが使用可能で、parpool が開いている場合は、このオブジェクトは使用可能な数のワーカー間に反復を分散させます。

getResults

シミュレーション結果を取得します。

r = getResults(h) は誤り率テスト コンソール h のシミュレーション結果 r を返します。r は testconsole.Results を使用して指定する型のオブジェクトです。登録済みのすべてのテスト ポイントのシミュレーション データ、およびデータを解析しプロットするメソッドを含みます。

info

現在のテスト コンソール設定のレポートを返します。

info(h) は、登録済みテスト パラメーターや登録済みテスト ポイントなどの現在のテスト コンソール設定を表示します。

reset

誤り率テスト コンソールをリセットします。

reset(h) は、テスト パラメーターおよびテスト プローブをリセットし、テスト コンソール h のすべてのシミュレーション結果をクリアします。

attachSystem

システムをテスト コンソールに関連付けます。

attachSystem(ho,sys) は有効なユーザー定義システム sys をテスト コンソール h に関連付けます。

detachSystem

テスト コンソールからシステムを分離します。

detachSystem(h) はテスト コンソール h からシステムを分離します。さらに、このメソッドは登録済みテスト入力、テスト パラメーター、テスト プローブ、テスト ポイントもクリアします。

setTestParameterSweepValues

テスト パラメーター スイープ値を設定します。

setTestParameterSweepValues(h,name,sweep) は、テスト コンソール h で登録済みテスト パラメーター 'name' に対する一連のスイープ値 'sweep' を指定します。登録済みテスト パラメーターのスイープ値のみを指定します。sweep の値は、テスト パラメーターの指定範囲内でなければなりません。数値の行ベクトルの場合も文字値のセル配列の場合もあります。getTestParameterValidRangesメソッドを使用して有効範囲を表示します。

setTestParameterSweepValues(h,name1,sweep1,name2,sweep2...) は、複数の登録済みテスト パラメーターのスイープ値を同時に指定します。

getTestParameterSweepValues

テスト パラメーター スイープ値を返します。

getTestParameterSweepValues(h,name) は、テスト コンソール h で登録済みテスト パラメーターに対して現在指定されているスイープ値を取得します。

getTestParameterValidRanges

テスト パラメーターの有効範囲を返します。

getTestParameterSweepValues(h,name) は、テスト コンソール h で登録済みテスト パラメーター name に対して有効な範囲を取得します。

registerTestPoint

テスト ポイントを登録します。

registerTestPoint(h, name, actprobe,expprobe) は、新しいテスト ポイント オブジェクト name を誤り率テスト コンソール h に登録します。テスト ポイントには、2 つの登録済みテスト プローブ actprobe と expprobe を含まなければなりません。actprobe には実際のデータが、expprobe には予想されるデータが含まれます。このオブジェクトは、これらのプローブからのデータを比較し、誤り率の値を取得します。誤り率の計算では、プローブ内の使用可能なデータ ベクトルの 1 対 1 の比較を実行する既定の誤り率計算機関数を使用します。

registerTestPoint(h, name, actprobe,expprobe, handle) は、プローブ内のデータを比較して誤り率結果を取得するユーザー定義の誤差計算関数にハンドル handle を追加します。

ユーザー定義の誤り計算関数は次の構文に従わなければなりません。[ecnt tcnt] = functionName(act, exp, udata)、ここで

  • ecnt 出力はエラー数に対応します。

  • tcnt 出力は、エラー数の取得に使用する伝送回数です。

  • act および exp は、実際のデータと予想されるデータに対応します。

誤り率テスト コンソールは、2 つのテスト ポイント プローブ actprobe と expprobe で使用できるデータに入力を設定します。

udata は、実行時にテスト対象システムが setUserData メソッドを使用してテスト コンソールに渡すデータ入力です。udata には遅延やデータ バッファーなどの誤差の計算に必要なデータが含まれます。

誤り率テスト コンソールは、すべての登録済みテスト ポイントについてテスト対象システムがログを取るデータを、誤差計算関数に渡します。info メソッドを呼び出すと、登録済みテスト ポイントの名前とそれらに関連する誤り率計算関数が返されます。さらに、登録済みテスト プローブの名前も返されます。

unregisterTestPoint

テスト ポイントの登録を解除します。

unregisterTestPoint(h,name) は、テスト ポイント name をテスト コンソール h から除去します。

% Obtain bit error rate and  symbol error rate of an M-PSK system
% for different modulation orders and EbNo values. 
  
% Instantiate an ErrorRate test console. The default error rate
% test console has an M-PSK system attached. 
       h = commtest.ErrorRate; 
  
% Set sweep values for simulation test parameters
setTestParameterSweepValues(h,'M',2.^[1 2 3 4])
setTestParameterSweepValues(h,'EbNo',(-5:5))
    
% Register test points 
registerTestPoint(h,'SymbolErrorRate','TxInputSymbols',...,
'RxOutputSymbols')
registerTestPoint(h,'BitErrorRate','TxInputBits','RxOutputBits')
       
% Set simulation stop criteria.
h.TransmissionCountTestPoint = 'SymbolErrorRate';
 
% Get information about the simulation settings
info(h)
 
% Run the MPSK simulations 
run(h)
  
% Get the results
R = getResults(h);
       
% Plot EbNo versus bit error rate for different values of modulation
% order M
R.TestParameter2 = 'M';
plot(R)
この例は、以下と同様な図を生成します。

R2009b で導入