delayseq

Задержка или последовательность продвижения

Описание

пример

shifted_data = delayseq(data,delay) задерживает или продвигает сигнал в data по количеству выборок, заданному в delay. Положительные значения delay задержка сигнала, в то время как отрицательные значения продвигают сигнал. Нецелочисленные значения delay представляют дробные задержки или усовершенствования. Для дробных задержек функция интерполируется между выборками.

Как delayseq функция действует на data зависит от размерностей data и delay аргументы:

  • Когда delay является скаляром, функция применяет ту же задержку к каждому столбцу data.

  • Когда delay является вектором:

    • Если data является матрицей, длиной delay вектор должен равняться количеству столбцов в матрице. Функция применяет задержку к каждому столбцу с помощью соответствующего delay запись.

    • Если data является вектор-столбец, функция создает матрицу, где каждый столбец является сдвигом в data вектор по каждой записи в delay. Количество столбцов в shifted_data равен длине delay вектор. The kth столбец shifted_data является результатом перемена data по delay(k).

пример

shifted_data = delayseq(data,delay,fs) задает delay в секундах. fs - частота дискретизации data. Если продукт delay и fs не является целым числом, delayseq реализует дробную задержку или усовершенствование сигнала с помощью интерполяции.

Примеры

свернуть все

Задержка сигнала косинуса 1 кГц на целое число выборок. Примите частоту дискретизации 10 кГц.

fs = 1.0e4;
t = 0:1/fs:0.005;
signal = cos(2*pi*1000*t)';

Установите задержку в 5 выборки (0,5 мс).

shifted_signal = delayseq(signal,5);

Постройте график исходных и задержанных сигналов.

subplot(2,1,1)
plot(t.*1000,signal)
title('Input')
subplot(2,1,2)
plot(t.*1000,shifted_signal)
title('5 Sample Delay')
xlabel('msec')

Figure contains 2 axes. Axes 1 with title Input contains an object of type line. Axes 2 with title 5 Sample Delay contains an object of type line.

Задержка сигнала косинуса 1 кГц на дробное количество выборок. Примите частоту дискретизации 10 кГц.

fs = 1e4;
t = 0:1/fs:0.005;
signal = cos(2*pi*1000*t)';

Установите задержку 0,25 мс или 2,5 выборки.

delayed_signal = delayseq(signal,0.25e-3,fs);

Постройте график исходных и задержанных сигналов.

plot(t.*1000,signal)
title('Delayed Signal')
hold on
plot(t.*1000,delayed_signal,'r')
axis([0 5 -1.1 1.1])
xlabel('msec')
legend('Original Signal','Delayed Signal')
hold off

Figure contains an axes. The axes with title Delayed Signal contains 2 objects of type line. These objects represent Original Signal, Delayed Signal.

Значения сигналов отличаются от исходных значений сигналов, потому что интерполяция используется для реализации дробной задержки.

Входные параметры

свернуть все

Входной сигнал, заданный как действительный вектор M длину, комплексный вектор M длину, действительный M -by- N матрица или комплексный M -by- N матрица.

M - количество выборок в data. Когда data является матрицей, N является количеством независимых сигналов.

Типы данных: single | double
Поддержка комплексного числа: Да

Задержка или усовершенствования сигнала, заданные как скалярный или действительный вектор N -length. Если вы задаете fs аргумент, delay модули указаны в секундах. Когда delay является скаляром, та же задержка применяется ко всем столбцам data. delay модули измерения находятся в выборках, если fs не задан и в секундах, если fs задан.

Типы данных: single | double

Частота дискретизации сигнала, заданная как положительная скалярная величина. Модули указаны в Гц.

Типы данных: single | double

Выходные аргументы

свернуть все

Задержанный или расширенный сигнал, возвращенный как действительный вектор M длины, комплексный вектор M длины, действительный M -by- N матрица или комплексный M -by- N матрица. shifted_data имеет одинаковое число строк как data, с соответствующими усечениями или нулевым заполнением.

Расширенные возможности

.
Введенный в R2011a