summation of diffrent lengths in vector

1 Ansicht (letzte 30 Tage)
Sakhr
Sakhr am 12 Okt. 2011
I would like to sum some lengths in vector. For example I have a=[0.0 0.0 0.3 0.4 0.5 0.0 0.0 0.0 0.0 1.0 1.1]. I need b=((0.5-0.3)+(1.1-1.0))=0.3. The time step is constant=0.1 and this order of elements can be change in new run of the program.Thanks alot.
  1 Kommentar
Grzegorz Knor
Grzegorz Knor am 12 Okt. 2011
According to what rules you want to sum up? Could you explain?

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Clemens
Clemens am 12 Okt. 2011
I would do this with some logical indexing magic.
a=[0.0 0.0 0.3 0.4 0.5 0.0 0.0 0.0 0.0 1.0 1.1];
step = 0.1;
tmp = a>0; % rule what elements to take
i_sum = tmp(1:end-1) & tmp(2:end)>0; % magic removes 1 element from each group
distances = sum((i_sum))* step % = 0.3
  1 Kommentar
Sakhr
Sakhr am 12 Okt. 2011
It works fine,really magic, thanks for help

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by