Main Content

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

ifftshift

逆ゼロ周波数シフト

説明

X = ifftshift(Y)は、ゼロ周波数シフトされたフーリエ変換Yを元の変換出力に再配列します。言い換えれば、ifftshiftfftshiftの結果を元に戻します。

  • Yがベクトルの場合、ifftshiftYの左半分と右半分を入れ替えます。

  • Yが行列の場合、ifftshiftは、Yの第 1 象限と第 3 象限を、第 2 象限と第 4 象限を入れ替えす。

  • Yが多次元配列の場合、ifftshiftは、各次元に沿ってYの半空間を入れ替えます。

X = ifftshift(Y,dim)は、Yの次元dimに沿って処理します。たとえば、行列Yの行が複数の 1 次元変換を表す場合、ifftshift(Y,2)Yの各行の半分を入れ替えます。

すべて折りたたむ

関数fftshiftifftshiftを使用して、ベクトルの左半分と右半分を入れ替えることができます。

奇数の要素数を含むベクトルを作成し、関数fftshiftを使用してベクトルの左側と右側を入れ替えます。

V = [1 2 3 4 5 6 7]; X = fftshift(V)
X =1×75 6 7 1 2 3 4

関数ifftshiftを使用してXの左側と右側を入れ替えます。結果は元のベクトルVと同じになります。

Y = ifftshift(X)
Y =1×71 2 3 4 5 6 7

関数fftshiftを 2 回呼び出しても、元の入力が再構成されるとは限りません。

fftshift(fftshift(V))
ans =1×72 3 4 5 6 7 1

非負要素を左にシフトするように、行列の行を再配列します。

Y = [-2 -1 0 1 2; -10 -5 0 5 10]; X = ifftshift(Y,2)
X =2×50 1 2 -2 -1 0 5 10 -10 -5

入力引数

すべて折りたたむ

入力配列。ベクトル、行列、または多次元配列として指定します。

データ型:double|single|int8|int16|int32|int64|uint8|uint16|uint32|uint64|logical
複素数のサポート:あり

演算の対象の次元。正の整数のスカラーとして指定します。値を指定しない場合、ifftshiftはすべての次元に沿って入れ替えます。

  • 入力行列Ycを考えます。演算ifftshift(Yc,1)Ycの各列の半分を入れ替えます。

  • 入力行列Yrを考えます。演算ifftshift(Yr,2)Yrの各行の半分を入れ替えます。

データ型:double|single|int8|int16|int32|int64|uint8|uint16|uint32|uint64|logical

拡張機能

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

GPU コード生成
GPU Coder™ を使用して NVIDIA® GPU のための CUDA® コードを生成します。

R2006a より前に導入