When I executed below code it got executed perfectly but in the graph I am getting just the coordinates but not the plot.
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
keerthana reddy
el 4 de Jun. de 2021
Comentada: keerthana reddy
el 9 de Jun. de 2021
f=10; %frequency of the impulse in Hz
fs=f*100; % sample frequency is 10 times higher
t=-1:1/fs:1; % time vector
x= 100*cos(2*pi*1000*t);
y=zeros(size(t));
y(1:fs/f:end)=1;
for t= -1:1/fs:1
m = x.*y;
end
plot(t,m);
0 comentarios
Respuesta aceptada
Walter Roberson
el 7 de Jun. de 2021
f=10; %frequency of the impulse in Hz
fs=f*100; % sample frequency is 10 times higher
t=-1:1/fs:1; % time vector
numt = length(t);
y=zeros(size(t));
y(1:fs/f:end)=1;
for tidx = 1 : numt
x = 100*cos(2*pi*1000*t(tidx));
m(tidx, :) = x.*y;
end
plot(t,m);
7 comentarios
Walter Roberson
el 7 de Jun. de 2021
f = 10; %frequency of the impulse in Hz
fs = f * 7; % sample frequency is 7 times higher
t =-1/10:1/fs:1/10; % time vector
y = 100*cos(2*pi*1000*t);
stem(t, y)
Notice that we reduced the sampling frequency and the time interval.
Notice too that no loop was needed.
Más respuestas (1)
Srivardhan Gadila
el 7 de Jun. de 2021
Based on the above code it is clear that there is no use of the for loop by redefining the variable t to iterate over the loop and the value of m = x.*y; will be same for all the iterations. I think what you are looking for is may be the following:
f=10; %frequency of the impulse in Hz
fs=f*100; % sample frequency is 10 times higher
t=-1:1/fs:1; % time vector
x= 100*cos(2*pi*1000*t);
y=zeros(size(t));
y(1:fs/f:end)=1;
% Removing the for loop
m = x.*y;
plot(t,m);
4 comentarios
Srivardhan Gadila
el 7 de Jun. de 2021
Editada: Srivardhan Gadila
el 7 de Jun. de 2021
If your equation is m(tidx) = x(tidx) * y(tidx) then the above code in my answer should work fine because with the operator times, .* element wise multiplication is performed so you don't have to iterate over individual elements of the vectors x and y, refer to the documentation of times, .* for more information. If your equation is m(tidx) = x(tidx) * y then you can refer to the below code posted by Walter.
Ver también
Categorías
Más información sobre Graphics Performance en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!