y = interpft(X,n) интерполирует преобразование Фурье значений функции в X произвести n равноудаленные точки. interpft оперирует первым размером, размер которого не равен 1.
Интерполяция 1-D данных с помощью метода FFT и визуализация результата.
Создайте некоторые точки выборки в интервале для функции cos (x). Использовать интервал интерваловdx для обеспечения равномерного распределения данных. Постройте график точек образца.
dx = 3*pi/30;
x = 0:dx:3*pi;
f = sin(x).^2 .* cos(x);
plot(x,f,'o')
С помощью интерполяции БПФ найдите значение функции в 200 точках запроса.
N = 200;
y = interpft(f,N);
Рассчитайте интервал между интерполированными данными по интервалу между точками выборки с помощью dy = dx*length(x)/N, где N - количество точек интерполяции. Усечение данных в y для соответствия плотности выборки x2.
dy = dx*length(x)/N;
x2 = 0:dy:3*pi;
y = y(1:length(x2));
Постройте график результатов.
hold on
plot(x2,y,'.')
title('FFT Interpolation of Periodic Function')
Создайте три отдельных набора данных из нормально распределенных случайных чисел. Предположим, что данные дискретизированы в положительных целых числах, 1:N. Храните наборы данных в виде строк в матрице.
A = randn(3,20);
x = 1:20;
Интерполяция строк матрицы в 500 точках запроса каждая. Определить dim = 2 чтобы interpft работы на строках A.
N = 500;
y = interpft(A,N,2);
Вычисление интервала между интерполированными данными dy. Усечение данных в y для соответствия плотности выборки x2.
dy = length(x)/N;
x2 = 1:dy:20;
y = y(:,1:length(x2));
Постройте график результатов.
subplot(3,1,1)
plot(x,A(1,:)','o');
hold on
plot(x2,y(1,:)','--')
title('Row 1')
subplot(3,1,2)
plot(x,A(2,:)','o');
hold on
plot(x2,y(2,:)','--')
title('Row 2')
subplot(3,1,3)
plot(x,A(3,:)','o');
hold on
plot(x2,y(3,:)','--')
title('Row 3')
X - Входной массив вектор | матрица | многомерный массив
Входной массив, заданный как вектор, матрица или многомерный массив. Данные в X предполагается, что выборка производится на равномерно разнесенном интервале независимой переменной. interpft лучше всего работает с периодическими данными.
Типы данных: single | double Поддержка комплексного номера: Да
n - Количество баллов положительный целочисленный скаляр
Число точек, указанное как положительный целочисленный скаляр.
Типы данных: single | double
dim - Размер для работы вдоль положительный целочисленный скаляр
Размерность для работы, заданная как целочисленный скаляр. Если значение не указано, то по умолчанию используется первый размер массива, размер которого не равен 1.
y - Интерполированные точки вектор | матрица | многомерный массив
Интерполированные точки, возвращаемые как вектор, матрица или многомерный массив. Если length(X,dim) = m, и X имеет интервал выборки, равный dx, затем новый интервал выборки для y является dy = dx*m/n, где n > m.
Если dim указывается, то interpft накладки или усечения X к длине n в измерении dim, так что size(y,dim) = n.
Алгоритмы
interpft функция использует метод FFT. Исходный вектор x преобразуется в домен Фурье с помощью fft, и затем он преобразуется обратно с большим количеством точек.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.