subdivision of samples to calculate RMS

4 visualizaciones (últimos 30 días)
Win co
Win co el 6 de Abr. de 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

Respuesta aceptada

Wayne King
Wayne King el 6 de Abr. de 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);
end
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.

Más respuestas (1)

Win co
Win co el 6 de Abr. de 2012
thanks alot for your answer. It works very well.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by