В этом примере показано несколько способов моделирования выходного сигнала системы выборки и хранения путем повышения дискретизации и фильтрации сигнала.
Создайте синусоидальный сигнал. Укажите частоту выборки таким образом, чтобы 16 выборок соответствовали ровно одному периоду сигнала. Нарисуйте основной график сигнала. Наложение графика лестничных шагов для визуализации образца и удержания.
fs = 16; t = 0:1/fs:1-1/fs; x = .9*sin(2*pi*t); stem(t,x) hold on stairs(t,x) hold off

Увеличьте значение сигнала в четыре раза. Постройте график результата вместе с исходным сигналом. upsample увеличивает частоту дискретизации сигнала путем добавления нулей между существующими выборками.
ups = 4; fu = fs*ups; tu = 0:1/fu:1-1/fu; y = upsample(x,ups); stem(tu,y,'--x') hold on stairs(t,x) hold off

Фильтр с фильтром FIR скользящего среднего для заполнения нулей значениями выборки и хранения.
h = ones(ups,1); z = filter(h,1,y); stem(tu,z,'--.') hold on stairs(t,x) hold off

Такое же поведение можно получить с помощью функции MATLAB ®interp1 с интерполяцией ближайшего соседа. В этом случае необходимо сдвинуть начало координат, чтобы выстроить последовательность.
zi = interp1(t,x,tu,'nearest'); dl = floor(ups/2); stem(tu(1+dl:end),zi(1:end-dl),'--.') hold on stairs(t,x) hold off

Функция resample приводит к такому же результату, когда последний входной аргумент устанавливается равным нулю.
q = resample(x,ups,1,0); stem(tu(1+dl:end),q(1:end-dl),'--.') hold on stairs(t,x) hold off
