loop and array for sum

1 Ansicht (letzte 30 Tage)
Irem Kuzgunkaya
Irem Kuzgunkaya am 12 Mai 2020
Kommentiert: Irem Kuzgunkaya am 12 Mai 2020
magnitude= abs(y); % amplitude of y signal
near= ceil(N/F);
signal= zeros(1,near);
for i=1:1000:N
for j=i:1:near
s = sum(magnitude(i:i+1000));
signal(j)= s;
end
end
I am trying to store every sum in array but instead, i get same result for every signal(j). I think i am missing something.

Antworten (2)

Steven Lord
Steven Lord am 12 Mai 2020
The expression you use to calculate s doesn't depend on j and also doesn't depend on anything that changes inside the loop over j. So it's expected that you receive the same answer each time.
I don't know how you want to modify your code so that the expression you use to calculate s has some dependence on j. If you post the mathematical expression you're trying to compute or the problem you're trying to solve as a comment we may be able to offer some guidance.
  1 Kommentar
Irem Kuzgunkaya
Irem Kuzgunkaya am 12 Mai 2020
i have a 232 second long signal with N=1000. I want to sum magnitude of every 1000 sample and put every sum in the signal array.

Melden Sie sich an, um zu kommentieren.


drummer
drummer am 12 Mai 2020
s = s + sum(magnitude(i:i+1000));
would it work?
  1 Kommentar
Irem Kuzgunkaya
Irem Kuzgunkaya am 12 Mai 2020
i tried it but it doesn't.

Melden Sie sich an, um zu kommentieren.

Produkte


Version

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by