quantencode(MathScript RTモジュール関数)

LabVIEW 2012 MathScript RTモジュールヘルプ

発行日時: June 2012

製品番号: 373123C-0112

»製品情報を参照
ヘルプをダウンロード(Windowsのみ)

所有クラス: filter implementation

要件:MathScript RTモジュール

構文

y = quantencode(x, n)

y = quantencode(x, n, r)

y = quantencode(x, n, r, s)

従来名: uencode

説明

量子化によって浮動小数点数入力を整数出力に変換します。実数の浮動小数点数を整数に量子化変換します。オーバーフローの問題は、quantencodeで解決できます。

詳細

サンプル

入力

名前 説明
x コード化する実数または複素数を指定します。xの要素は範囲[-r, r]内でなければなりません。LabVIEWはこの範囲外の要素をオーバーフローとみなし、飽和演算します。
n 量子化のレベルを指定します。nは、2~32の正の整数です。nが[2, 8]の範囲内の場合、出力データタイプはint8/uint8です。nが[9, 16]の範囲内の場合、出力データタイプはint16/uint16です。nが[17, 32]の範囲内の場合、出力データタイプはint32/uint32です。
r xの範囲を指定します。rは、正の数です。デフォルトは1です。
s 出力のデータタイプを指定します。sは以下の値を受け入れます。

'signed' [-2^(n-1), 2^(n-1)-L1]の範囲の振幅を持つ符号付き整数が出力されるよう指示します。
'unsigned'(デフォルト) [0, 2^n-1]の範囲の振幅を持つ符号なし整数が出力されるよう指示します。

出力

名前 説明
y 量子化された整数を返します。

詳細

quantencodeは複素入力を受け入れません。複素xをエンコードおよびデコードするには、quantencodequantdecodexの実数部および虚数部で別々に使用し、以下の例のように結果を組み合わせます。

X = real(input)                        %入力の実数部を取得
Y = imag(input)                        %入力の虚数部を取得

X = quantencode(X, 4, 1, 'unsigned')   %Xをエンコード
Y = quantencode(Y, 4, 1, 'unsigned')   %Yをエンコード

X = quantdecode(X, 4, 1, 'wrap')       %Xをデコード
Y = quantdecode(Y, 4, 1, 'wrap')       %Yをデコード

output = complex(X, Y)                 %実数部と虚数部を組み合わせる

次の表には、この関数のサポート特性 が記載されています。

LabVIEWランタイムエンジンでサポートされる はい
RTターゲットでサポートされる はい
RTで制限付きの実行時間に適する 特性なし

サンプル

X = -1:0.01:1;
Y = quantencode(X, 4, 1, 'signed');
X1 = quantdecode(Y, 4, 1);
plot(X, X1)

関連項目

quantdecode



この記事は役に立ちましたか。

役に立たなかった