| Signal Processing Blockset™ | ![]() |
Statistics
dspstat3

The RMS block computes the RMS value of each row or column of the input, along vectors of a specified dimension of the input, or of the entire input. The RMS block can also track the RMS value in a sequence of inputs over a period of time. The Running RMS parameter selects between basic operation and running operation.
When you do not select the Running RMS check box, the block computes the RMS value of each row or column of the input, along vectors of a specified dimension of the input, or of the entire input at each individual sample time, and outputs the array y. Each element in y is the RMS value of the corresponding column, row, vector, or entire input. The output y depends on the setting of the Find the RMS value over parameter. For example, consider a 3-dimensional input signal of size M-by-N-by-P:
Entire input — The output at each sample time is a scalar that contains the RMS value of the entire input. In this mode, the output is always sample based.
Each row — The output at each sample time consists of an M-by-1-by-P array, where each element contains the RMS value of each vector over the second dimension of the input. For an input that is an M-by-N matrix, the output at each sample time is an M-by-1 column vector. In this mode, the frame status of the output is the same as that of the input.
Each column — The output at each sample time consists of a 1-by-N-by-P array, where each element contains the RMS value of each vector over the first dimension of the input. For an input that is an M-by-N matrix, the output at each sample time is a 1-by-N row vector. In this mode, the frame status of the output is the same as that of the input.
For convenience, length-M 1-D vector inputs are treated as M-by-1 column vectors when the block is in this mode. Sample-based length-M row vector inputs are also treated as M-by-1 column vectors when the Treat sample-based row input as a column check box is selected.
Specified dimension — The output at each sample time depends on Dimension. If Dimension is set to 1, the output is the same as that when you select Each column. If Dimension is set to 2, the output is the same as when you select Each row. If Dimension is set to 3, the output at each sample time is an M-by-N matrix containing the RMS value of each vector over the third dimension of the input. In this mode, the frame status of the output is the same as that of the input.
The RMS value of the jth column of an M-by-N input matrix u is given by

y = sqrt(sum(u.*conj(u))/size(u,1)) % Equivalent MATLAB code
When you select the Running RMS check box, the block tracks the RMS value of successive inputs to the block. For sample-based M-by-N inputs, the output is a sample-based M-by-N matrix, with each element yij containing the RMS value of element uij over all inputs since the last reset. For frame-based M-by-N inputs, the output is a frame-based M-by-N matrix with each element yij containing the RMS value of the jth column over all inputs since the last reset, up to and including element uij of the current input.
N-D signals cannot be frame based. When the Running RMS check box is selected, each element of the N-D signal is treated as a separate channel.
There are
channels,
where di is the size of
the ith dimension.
The block resets the running RMS whenever a reset event is detected at the optional Rst port. The reset sample time must be a positive integer multiple of the input sample time.
When the block is reset for sample-based inputs, the running RMS for each channel is initialized to the value in the corresponding channel of the current input. For frame-based inputs, the running RMS for each channel is initialized to the earliest value in each channel of the current input.
You specify the reset event in the Reset port parameter:
None disables the Rst port.
Rising edge — Triggers a reset operation when the Rst input does one of the following:
Rises from a negative value to a positive value or zero
Rises from zero to a positive value, where the rise is not a continuation of a rise from a negative value to zero (see the following figure)

Falling edge — Triggers a reset operation when the Rst input does one of the following:
Falls from a positive value to a negative value or zero
Falls from zero to a negative value, where the fall is not a continuation of a fall from a positive value to zero (see the following figure)

Either edge — Triggers a reset operation when the Rst input is a Rising edge or Falling edge, as described earlier
Non-zero sample — Triggers a reset operation at each sample time that the Rst input is not zero
Note When running simulations in the Simulink MultiTasking mode, reset signals have a one-sample latency. Therefore, when the block detects a reset event, there is a one-sample delay at the reset port rate before the block applies the reset. For more information on latency and the Simulink tasking modes, see Excess Algorithmic Delay (Tasking Latency) and Models with Multiple Sample Rates in the Real-Time Workshop User's Guide. |
The RMS block in the next model calculates the running RMS of a frame-based 3-by-2 (two-channel) matrix input, u. The running RMS is reset at t=2 by an impulse to the block's Rst port.

The RMS block has the following settings:
Running RMS = Select this check box.
Reset port = Non-zero sample
The Signal From Workspace block has the following settings:
Signal = dsp_examples_u
Sample time = 1/3
Samples per frame = 3
where
dsp_examples_u = [6 1 3 -7 2 5 8 0 -1 -3 2 1;1 3 9 2 4 1 6 2 5 0 4 17]'
The Discrete Impulse block has the following settings:
Delay (samples) = 2
Sample time = 1
Samples per frame = 1
The block's operation is shown in the next figure.


Enables running operation when selected.
Determines the reset event that causes the block to reset the running RMS. The reset signal rate must be a positive integer multiple of the rate of the data signal input. This parameter is enabled only when you set the Running RMS parameter. For more information, see Resetting the Running RMS.
Specify whether to find the RMS value along rows, columns, entire input, or the dimension specified in the Dimension parameter. For more information, see Basic Operation.
Select to treat sample-based length-M row vector inputs as M-by-1 column vectors. This parameter is only visible when the Find the RMS value over parameter is set to Each column.
Specify the dimension (one-based value) of the input signal, over which the RMS value is computed. The value of this parameter cannot exceed the number of dimensions in the input signal. This parameter is only visible when the Find the RMS value over parameter is set to Specified dimension.
Double-precision floating point
Single-precision floating point
Boolean — The block accepts Boolean inputs to the Rst port.
| Mean | Signal Processing Blockset |
| Variance | Signal Processing Blockset |
![]() | RLS Filter | Sample and Hold | ![]() |
| © 1984-2009- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |