Main Content

ifftshift

역 영주파수 이동

설명

예제

X = ifftshift(Y)는 영주파수 이동된 푸리에 변환 Y를 다시 원래 변환 출력값으로 재배열합니다. 즉, ifftshiftfftshift의 실행 결과를 취소합니다.

  • Y가 벡터인 경우 ifftshiftY의 왼쪽 절반과 오른쪽 절반을 바꿉니다.

  • Y가 행렬인 경우 ifftshiftY의 제1사분면을 제3사분면으로 바꾸고, 제2사분면을 제4사분면으로 바꿉니다.

  • Y가 다차원 배열인 경우 ifftshift는 각 차원을 따라 Y의 "공간의 절반"을 교체합니다.

예제

X = ifftshift(Y,dim)Y의 차원 dim을 따라 동작합니다. 예를 들어, 행렬 Y의 각 행이 복수의 1차원 변환을 나타낸다면 ifftshift(Y,2)Y의 각 행의 절반을 바꿉니다.

예제

모두 축소

fftshift 함수와 ifftshift 함수를 사용하여 벡터의 왼쪽 절반과 오른쪽 절반을 바꿀 수 있습니다.

홀수 개의 요소가 포함된 벡터를 만들고 fftshift 함수를 사용하여 왼쪽과 오른쪽을 바꿉니다.

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

     5     6     7     1     2     3     4

ifftshift 함수를 사용하여 X의 왼쪽과 오른쪽을 바꿉니다. 결과는 원래 벡터 V와 동일합니다.

Y = ifftshift(X)
Y = 1×7

     1     2     3     4     5     6     7

fftshift 함수를 두 번 호출하더라도 원래 입력값이 복원되지 않을 수도 있습니다.

fftshift(fftshift(V))
ans = 1×7

     2     3     4     5     6     7     1

행렬의 행을 재배열하여 음수가 아닌 요소를 왼쪽으로 이동합니다.

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

     0     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의 각 열별로 절반을 바꿉니다.

    ifft(Yc,1) column-wise operation

  • 입력 행렬 Yr이 있다고 가정합니다. 연산 ifftshift(Yr,2)Yr의 각 행별로 절반을 바꿉니다.

    ifft(Yr,2) row-wise operation

데이터형: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

확장 기능

C/C++ 코드 생성
MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.

GPU 코드 생성
GPU Coder™를 사용하여 NVIDIA® GPU용 CUDA® 코드를 생성할 수 있습니다.

버전 내역

R2006a 이전에 개발됨

참고 항목

| | | |