make one part of a function repeat it self in diffrent sections of time line.

조회 수: 2 (최근 30일)
N = 10000;
t = linspace(-3*pi, 3*pi, N + 1)'; t(end) = [];
x = -t;
figure; hold on; grid on;
plot(t, x, 'b', 'LineWidth', 1)
legend('x(t)');
xlabel('t');
ylabel('x(t)');
this is my code and my input funciton is x=-t
i want the plot graph to repeat it self this way in intervals of 2*pi:
now,obviously the plot is just the function -t in the interval {-3pi,3pi} without repitations.
I cant find the right syntax to do it.
if someone has an idea , i could use the help. thanks

채택된 답변

Yotam Rotelman
Yotam Rotelman 2020년 4월 2일
found the solution. these will create 3 iepitations.
%%1
N = 10000;
t = linspace(-pi, pi, N + 1)'; t(end) = [];
x = -t;
t1 = linspace(-3*pi, 3*pi, 3*N)';
X=[x;x;x];
figure; hold on; grid on;
plot(t1, X, 'b', 'LineWidth', 1)
legend('x(t)', 'y(t)');
xlabel('t');
ylabel('x(t)');

추가 답변 (1개)

Akira Agata
Akira Agata 2020년 4월 2일
If you have a Signal Processing Toolbox, you can simply use sawtooth function, like:
% Generate signal
t = linspace(-4*pi,4*pi,1000);
y = -1*pi*sawtooth(t-pi);
% Plot the waveform
figure
plot(t,y)

카테고리

Help CenterFile Exchange에서 Spectral Measurements에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by