Main Content

nufftn

N 维非均匀快速傅里叶变换

自 R2020a 起

说明

示例

Y = nufftn(X,t) 使用采样点 t 返回沿 N 维数组 X 的每个维度的非均匀离散傅里叶变换 (NUDFT)。

Y = nufftn(X,t,f) 使用采样点 t 和查询点 f 计算 NUDFT。要指定 f 而不指定采样点,请使用 nufftn(X,[],f)

Y = nufftn(X) 返回 X 的 N 维离散傅里叶变换。

示例

全部折叠

创建一个在每个维度上的非均匀分布点 t 处采样的三维信号 X。计算非均匀快速傅里叶变换 Y

t = [1:10 11:2:29]';
x = t;
y = t';
z = reshape(t,[1 1 20]);
X = cos(2*pi*0.01*x) + sin(2*pi*0.02*y) + cos(2*pi*0.03*z);
Y = nufftn(X,{t,t,t});

输入参数

全部折叠

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

数据类型: double | single | int8 | int16 | int32 | uint8 | uint16 | uint32 | logical
复数支持:

采样点,指定为输入数组 X 的每个维度的向量、矩阵或向量元胞数组。

当指定为向量或矩阵时,t 的行数必须等于 X 中的元素数。当未指定查询点时,将在每个维度中均匀分布的 N 个查询点处计算变换,其中 N = ceil(numel(X).^(1/D)) 且 D 是 t 中的列数。输出 Y 是每个维度中长度为 N 的一个 D 维数组。

当指定 t 为 D 个向量组成的元胞数组时,每个向量的长度必须等于 X 的对应维度的长度。

数据类型: double | single

查询点,指定为与输入数组 X 的每个维度对应的向量、矩阵或向量元胞数组。当指定为矩阵时,f 必须为 M×k 数组,其中 k 大于或等于由采样点定义的维数 D。

f 指定为由 D 个向量组成的元胞数组时,输出 Y 的每个维度的长度等于元胞数组中对应向量的长度。

要指定 f 而不指定采样点,请使用 nufftn(X,[],f)

数据类型: double | single

扩展功能

版本历史记录

在 R2020a 中推出

全部展开

另请参阅

| |