How to program a no periodic impulse train

I have to write a program able to change the time interval of the impulse train. I mean... the first 10 seconds it has a x time interval then the next X, a random time, increasing or decreasing the time interval till it reaches the maximum time set at the beginning. Hope someone could help me.

6 Comments

What have you tried so far?
I have been trying to simulate a multi-impact machine which will be changing how many impacts is giving depending how much are you triggering the machine.
@Mauricio Galván García Luna: what have you tried so far?
@Stephen Cobeldick . I am running out of ideas but my basic idea was something like this.
Now... instead of using 1000 hits in 10 seconds it should switch to 500 hits in the next 10 seconds.
hit=1000;
t=0:1/(hit-1):10;%Tiempo
imp=1;
for n=1:length(t)
M(n)=imp;
end
José-Luis
José-Luis on 16 Aug 2017
Edited: José-Luis on 16 Aug 2017
I don't get it.
Please read the documentation on linspace()
It sounds like an indexing problem.
Mmm I don't know if it could be clearer like this
I just want to know if it would be possible to be changing the hit before it reaches the 10 s
In the first 3 s hit= 1000 in the next 4 s hit= 500 in the final 3 seconds hit=40

Sign in to comment.

 Accepted Answer

intervals = [3,4,3];
hits = [1000,500,40];
result = cell(1,3);
cnt = 0;
beginning = 0;
for ii = [cumsum(intervals);hits]
cnt = cnt + 1;
result{cnt} = linspace(beginning,ii(1),ii(2)+1);
beginning = ii(1);
end
result = unique(cell2mat(result));

More Answers (0)

Categories

Community Treasure Hunt

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

Start Hunting!