主要内容

fftshift

零频组件转移到光谱的中心

描述

例子

Y = fftshift (X)将傅里叶变换X通过将零频组件阵列的中心。

  • 如果X是一个矢量,然后呢fftshift互换的左右部分X

  • 如果X是一个矩阵,然后呢fftshift互换的第一象限X第三,第二和第四象限。

  • 如果X是一个多维数组,那么fftshift互换的半空格X每个维度。

例子

Y = fftshift (X,昏暗的)沿着维操作昏暗的X。例如,如果X是一个矩阵的行代表多个一维变换,然后呢fftshift (X, 2)互换每一行的一半X

例子

全部折叠

换一个行向量的左右两半。如果一个向量元素的个数是奇数,然后中间元素被认为是矢量的左半部分的一部分。

Xeven = (1 2 3 4 5 6);fftshift (Xeven)
ans =1×64 5 6 1 2 3
Xodd = (1 2 3 4 5 6 7);fftshift (Xodd)
ans =1×71 2 3 4 5 6 7

在分析信号的频率成分,它可以帮助把零频分量的中心。

创建一个信号年代计算它的傅里叶变换,和策划能力。

fs = 100;%采样频率t = 0 (1 / fs): (10 - 1 / fs);%的时间向量S = cos(2 *π* 15 * t);n =长度(S);X = fft(年代);f = (0: n - 1) * (fs / n);%频率范围功率= abs (X) ^ 2 / n;%的权力情节(f、电力)

图包含一个坐标轴对象。坐标轴对象包含一个类型的对象。

零频分量和情节zero-centered权力转移。

Y = fftshift (X);fshift = (- n / 2: n / 2 - 1) * (fs / n);% zero-centered频率范围powershift技术= abs (Y) ^ 2 / n;% zero-centered权力情节(fshift powershift技术)

图包含一个坐标轴对象。坐标轴对象包含一个类型的对象。

你可以处理多个一维信号,代表一个矩阵中的行。然后使用尺寸参数计算傅里叶变换和转变为每一行零频分量。

创建一个矩阵一个的行代表两个一维信号,计算每个信号的傅里叶变换。每个信号的功率。

fs = 100;%采样频率t = 0 (1 / fs): (10 - 1 / fs);%的时间向量S1 = cos(2 *π* 15 * t);S2 = cos(2 *π* 30 * t);n =长度(S1);= (S1);S2);X = fft ([], 2);f = (0: n - 1) * (fs / n);%频率范围功率= abs (X) ^ 2 / n;%的权力情节(f、电力(1:),f,权力(2:))

图包含一个坐标轴对象。坐标轴对象包含2线类型的对象。

转变零频分量,情节zero-centered每个信号的力量。

Y = fftshift (X, 2);fshift = (- n / 2: n / 2 - 1) * (fs / n);% zero-centered频率范围powershift技术= abs (Y) ^ 2 / n;% zero-centered权力情节(fshift powershift技术(1:),fshift, powershift技术(2:))

图包含一个坐标轴对象。坐标轴对象包含2线类型的对象。

输入参数

全部折叠

输入数组,指定为一个向量,矩阵或多维数组。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑
复数的支持:金宝app是的

维操作,指定为一个正整数标量。如果没有指定值fftshift互换以及所有维度。

  • 考虑一个输入矩阵Xc。操作fftshift (Xc, 1)互换部分的每一列Xc

    fftshift (Xc, 1)列操作

  • 考虑一个矩阵Xr。操作fftshift (Xr, 2)互换部分的每一行Xr

    一点fftshift (Xr, 2)行操作操作

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑

扩展功能

C / c++代码生成
生成C和c++代码使用MATLAB®编码器™。

GPU的代码生成
生成NVIDIA的CUDA®代码®GPU使用GPU编码器™。

版本历史

之前介绍过的R2006a

另请参阅

||||