Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

comm.HadamardCode

アダマール符号の生成

説明

HadamardCode オブジェクトは、その行がコードの直交集合を構成するアダマール行列からアダマール符号を生成します。直交符号は、受信側と送信側とを完全に同期させる通信システムでの拡散に利用可能です。これらのシステムでは、コードが完全に無相関であるため、逆拡散を行うのが理想的です。

アダマール符号を生成するには、以下の手順に従います。

  1. アダマール符号オブジェクトを定義および設定します。構築を参照してください。

  2. step を呼び出して、comm.HadamardCode のプロパティに従い、アダマールを生成します。step の動作は、ツールボックスの各オブジェクト固有のものです。

メモ

R2016b 以降では、step メソッドを使用して、System object™ によって定義された演算を実行する代わりに、引数を関数であるかのように使ってオブジェクトを呼び出すことができます。たとえば、y = step(obj)y = obj() は同等の演算を実行します。

構築

H = comm.HadamardCode はアダマール符号生成器 System object H を作成します。このオブジェクトは、一連の直交符号からアダマール符号を生成します。

H = comm.HadamardCode(Name,Value) は、指定された各プロパティを指定値に設定して、アダマール符号発生オブジェクト H を作成します。(Name1,Value1,...,NameN,ValueN) のように、追加の名前と値のペアの引数を任意の順番で指定できます。

プロパティ

Length

生成されるコードの長さ

生成されるコードの長さを、2 のべき乗である数値の整数スカラー値で指定します。既定の設定は 64 です。

Index

アダマール行列の行インデックス

アダマール行列の行インデックスを、範囲 [0, 1, ... , N-1] にある数値の整数スカラー値で指定します。ここで N は、Length プロパティの値です。既定の設定は 60 です。N×N のアダマール行列は P(N) で表され、次のように再帰的に定義されます。P(1) = [1] P(2N) = [P(N) P(N); P(N) –P(N)]。N 行 N 列のアダマール行列は次のようなプロパティをもちます。P(N)× P (N)' = N× eye (N)。step メソッドは、このプロパティに指定されたアダマール行列の行からコード サンプルを出力します。

このプロパティを整数 k に設定した場合、k = 0、1、... , N–1 に対する出力コードは正確に k 個のゼロクロッシングをもちます。

SamplesPerFrame

フレームごとの出力サンプル数

step メソッドが出力するアダマール符号サンプルの数を、数値の正の整数スカラー値で指定します。既定の設定は 1 です。

このプロパティを M の値に設定した場合、step メソッドは長さが N のアダマール符号の M サンプルを出力します。ここで N は、Length プロパティに指定したコードの長さと同じです。

OutputDataType

出力のデータ型

出力データ型を double または int8 のいずれかとして指定します。既定の設定は double です。

メソッド

stepアダマール符号の生成
すべての System object に共通
release

System object のプロパティ値の変更の許可

reset

System object の内部状態をリセットします。

すべて折りたたむ

長さが 128 のアダマール符号シーケンスの 10 サンプルを生成します。

hadamard = comm.HadamardCode('Length',128,'SamplesPerFrame',10)
hadamard = 
  comm.HadamardCode with properties:

             Length: 128
              Index: 60
    SamplesPerFrame: 10
     OutputDataType: 'double'

seq = hadamard()
seq = 10×1

     1
     1
     1
     1
    -1
    -1
    -1
    -1
    -1
    -1

アルゴリズム

このオブジェクトは、Hadamard Code Generator ブロックのリファレンス ページで説明されているアルゴリズム、入力、および出力を実装しています。オブジェクト プロパティはブロック パラメーターに対応しますが、以下の場合を除きます。

  • このオブジェクトには、フレーム ベースの出力を選択するプロパティはありません。

  • このオブジェクトには、[Sample time] パラメーターに対応するプロパティはありません。

拡張機能

R2012a で導入