Complex to Magnitude-Angle
複素数信号の大きさと位相角の計算
ライブラリ:
Simulink /
Math Operations
説明
Complex to Magnitude-Angle ブロックは、[出力] パラメーターの設定に応じて、入力信号の大きさや位相角を出力します。出力は入力と同じデータ型の実数値です。複素数信号の配列を入力として使用でき、その場合は出力信号も配列になります。Magnitude 信号配列は、対応する複素数入力要素の大きさを含みます。同様に、Angle 出力は入力要素の角度を含みます。
端子
入力
ブロックが大きさや位相角を計算して出力する複素入力信号。
制限
固定小数点データ型は、[近似法] を [CORDIC] に設定したときにのみサポートされます。
データ型: single | double
出力
入力信号の大きさや位相角である出力信号。出力を選択するには、[出力] パラメーターを設定します。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
ラジアン位相角。実数値のスカラー、ベクトル、または行列として返されます。
依存関係
この端子を有効にするには、[出力] を
[振幅と角度]または[角度]に設定します。
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | fixed point
パラメーター
出力が入力信号のラジアン単位の大きさや位相角であるかどうかを指定します。
プログラムでの使用
パラメーター: Output
|
| 型: 文字ベクトル |
値: 'Magnitude and angle' | 'Magnitude' | 'Angle' |
既定の設定: 'Magnitude and angle'
|
出力を計算するための近似のタイプを指定します。
| 近似法 | サポートされるデータ型 | このメソッドを使用できる場合 |
|---|---|---|
なし (既定の設定) | 浮動小数点 | 既定のテイラー級数アルゴリズムを使用する必要がある場合。 |
CORDIC | 浮動小数点と固定小数点 | 高速の近似計算が必要な場合。 |
ブロックは次のデータ型の伝播ルールを使用します。
| 複素数入力のデータ型 | 近似法 | 大きさ出力のデータ型 | 角度出力のデータ型 |
|---|---|---|---|
浮動小数点 |
| 入力と同じ | 入力と同じ |
符号付き、固定小数点 |
|
ここで、
|
ここで、
|
符号なし、固定小数点 |
|
ここで、
|
ここで、
|
プログラムでの使用
ブロック パラメーター: ApproximationMethod |
| 型: 文字ベクトル |
値: 'None' | 'CORDIC' |
既定の設定: 'None' |
CORDIC アルゴリズムを実行する反復回数。正の整数値スカラーとして指定します。反復数を増やすと、結果の精度が高まりますが、計算量も増加しレイテンシも増えます。
| ブロック入力のデータ型 | 指定できる値 |
|---|---|
| 浮動小数点 | 正の整数。最大値は double で 52、single で 23 です。 |
| 固定小数点 | 大きさ入力の語長または位相角入力の語長を超えない正の整数、どちらか小さいほう。 |
依存関係
このパラメーターを有効にするには、[近似法] を [CORDIC] に設定します。
プログラムでの使用
ブロック パラメーター: NumberOfIterations |
| 型: 文字ベクトル |
| 値: 固定小数点入力の語長以下の正の整数 |
既定の設定: '11' |
サンプルの時間間隔を指定します。サンプル時間を継承するには、このパラメーターを -1 に設定します。詳細については、サンプル時間の指定を参照してください。
依存関係
このパラメーターは、-1 以外の値に設定した場合にのみ表示されます。詳細は、サンプル時間が推奨されないブロックを参照してください。
プログラムでの使用
ブロック パラメーターの値をプログラムで設定するには、関数 set_param を使用します。
| パラメーター: | SampleTime |
| 値: | "-1" (既定値) | scalar or vector in quotes |
ブロックの特性
データ型 |
|
直達 |
|
多次元信号 |
|
可変サイズの信号 |
|
ゼロクロッシング検出 |
|
詳細
CORDIC は、COordinate Rotation DIgital Computer の略語です。ギブンス回転に基づく CORDIC アルゴリズムは、Shift-Add 反復演算のみを必要とするため、ハードウェア効率が最も優れたアルゴリズムの 1 つです (参考文献を参照)。CORDIC アルゴリズムは、明示的な乗数を必要としません。CORDIC を使用すると、正弦関数、余弦関数、逆正弦関数、逆余弦関数、逆正接関数、ベクトル振幅関数などのさまざまな関数を計算できます。また、このアルゴリズムは除算、平方根、双曲線、対数などの関数にも使用できます。
CORDIC の反復数を増やすと、結果の精度が高まりますが、それにより計算量が増加しレイテンシが増えます。
拡張機能
C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。
バージョン履歴
R2006a より前に導入Complex to Magnitude-Angle ブロックで CORDIC 近似法がサポートされるようになりました。この手法では、入力 Port_1 で固定小数点入力を使用できます。CORDIC 法を選択するには、新しい [近似法] パラメーターを [CORDIC] に設定します。
CORDIC 法を選択すると、ブロックのアイコンが更新されます。新しいパラメーター [反復回数] では、CORDIC アルゴリズムの反復回数を定義できます。
![]()
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- 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)