How to draw the delta signal in matlab

65 visualizaciones (últimos 30 días)
Juman Saleh
Juman Saleh el 27 de Mzo. de 2023
Respondida: Carlos M. Velez S. el 24 de Jul. de 2025
I was trying to draw but I wasn't able to

Respuestas (3)

the cyclist
the cyclist el 27 de Mzo. de 2023
Editada: the cyclist el 27 de Mzo. de 2023
Do you mean the Dirac delta function? If so, then dirac might help you.
Also, if you do mean the Dirac delta, I hope you realize that it can't truly be "drawn", because it goes to infinity. It can be represented somehow (e.g. by drawing an arrow at the x location where the Delta is).

Star Strider
Star Strider el 28 de Mzo. de 2023
The function normally will not plot in MATLAB because it has infinite amplitude and infinitesimal width.
So it is necessary to approximate it in ordfer to plot it —
t = linspace(0, 2, 21);
Delta = dirac(t - 1)
Delta = 1×21
0 0 0 0 0 0 0 0 0 0 Inf 0 0 0 0 0 0 0 0 0 0
idx = Delta == Inf;
Delta(idx) = 1;
figure
stem(t, Delta, 'filled')
axis('padded')
.

Carlos M. Velez S.
Carlos M. Velez S. el 24 de Jul. de 2025
If you want to apply the Dirac delta function in simulation to continuous-time systems, the following code is enough:
function y = delta_dirac(u)
[n,m] = size(u);
if max(n,m) ==1
dt = 1e-6; % Define a small time increment for the delta function
else
dt = u(2) - u(1);
end
y = zeros(n,m);
for i=1:max(m,n)
if u(i) == 0
y(i) = 1/dt;
else
y(i) = 0;
end
end

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by