subdivision of samples to calculate RMS

1 次查看(过去 30 天)
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

采纳的回答

Wayne King
Wayne King 2012-4-6
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.

更多回答(1 个)

Win co
Win co 2012-4-6
thanks alot for your answer. It works very well.

类别

Help CenterFile Exchange 中查找有关 Elementary Math 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by