Change time scale of a discrete function by a factor?

1 visualización (últimos 30 días)
Himanshu Sharma
Himanshu Sharma el 4 de Nov. de 2018
Respondida: Prakhar Jain el 14 de Nov. de 2018
%if
% input sequence
bits = [1,0,1,1,0,0,0,1];
% Mapping
for a=1:length(bits)
if bits(a) == 1
bit(a) = 5;
else
bit(a) = -5;
end
end
i = 1;
t = 0:0.01:length(bits);
for b=1:length(t)
if t(b) <= i
y(b) = bit(i);
else
y(b) = bit(i);
i = i+1;
end
end
plot(t,y);
I am trying to change the length of 1 bit from 1s to 1us which will change step from 0.01 to 1e-8 but it gives me an error and if I just plot it on 0 to 8e-6 without proper implementation it will only print the first value which is between 0 and 1. Any ideas on how to plot an array of length 8 on timescale 0 to 8e-8??

Respuestas (1)

Prakhar Jain
Prakhar Jain el 14 de Nov. de 2018
Hi Himanshu,
Your code look correct and even works for me without an error.
The plot is as shown below:
Plot.PNG
Also, the workspace variables are of proper size as you can see in below figure size of t and y:
Workspace-Variables.PNG

Categorías

Más información sobre Matrices and Arrays 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!

Translated by