Filter löschen
Filter löschen

subdivision of samples to calculate RMS

2 Ansichten (letzte 30 Tage)
Win co
Win co am 6 Apr. 2012
Hi, I have a signal recorded with 10^6 samples. I would like to calculate its RMS for each 10^2 samples. Could you show me how to do it please ? Thanks

Akzeptierte Antwort

Wayne King
Wayne King am 6 Apr. 2012
You can create a matrix where you take every 100 consecutive samples of your waveform and use those as the columns of the matrix. The you can compute the RMS value for each column.
x = randn(1e6,1);
for nn = 0:1e4-1
X(:,nn+1) = x(nn*100+1:(nn+1)*100,1);
You could also try repmat for this, but you may run into memory problems.
x = randn(1e6,1);
x1 = repmat(x,[1e2 1e4]);
The for loop above should not have memory issues.

Weitere Antworten (1)

Win co
Win co am 6 Apr. 2012
thanks alot for your answer. It works very well.


Community Treasure Hunt

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

Start Hunting!

Translated by