In some papers/books I found infos about a signal given as RMS value.

What is the RMS value and what information does it contain?

How can I compute it?

Moreover, if they say that the signal is a white noise with RMS $100$ band limited onto the interval $[0, 2000] Hz$, how can I use the RMS information to produce the signal they are talking about? And if they say that the noise contributes to 5% of the signal RMS value?

  • $\begingroup$ Related: dsp.stackexchange.com/questions/9654/… $\endgroup$
    – nivag
    Nov 26, 2014 at 10:58
  • $\begingroup$ Thank you, I have already read that but the fact is that once I have generated the noise I do not knot how to 'add' the RMS inforomation to obtain exactly the same signal described in the papers $\endgroup$
    – Rhei
    Nov 26, 2014 at 11:19
  • $\begingroup$ RMS is equivalent to the standard deviation, $\sigma$, (for zero mean) see the second answer in the linked question. $\endgroup$
    – nivag
    Nov 26, 2014 at 11:40
  • $\begingroup$ Ah sorry, I didn't know they were the same thing! Thank you $\endgroup$
    – Rhei
    Nov 26, 2014 at 12:12

2 Answers 2


RMS is the root-mean-square value of a signal. For a digitised signal, you can calculate it by squaring each value, finding the arithmetic mean of those squared values, and taking the square root of the result.

Loosely speaking, it represents the average "power" of a signal. In electrical terms, all signals with the same RMS voltage, when applied across a resistor, will produce the same amount of heat.

Note that Matlab has an RMS function Y = rms(X) in the signal processing toolbox. if you don't have that toolbox, it shouldn't be hard to write your own function.

Since the RMS value is only related to the signal amplitude, knowing it doesn't help you to create the waveform. However, if you have a function that will generate the desired waveform, you could measure the RMS value of the result, and multiply by an appropriate scaling factor to give you the amplitude you want.

If "the noise contributes to 5% of the signal RMS value", then presumably the signal would only have an RMS value of 95% of the total before you added the noise. But beware that RMS values don't simply add. Adding noise of RMS amplitude 1 to a signal of amplitude 10 will not necessarily produce a new signal of RMS amplitude 11.

  • $\begingroup$ Thank you for answering, one more question: Y = rms(X) has to be applied to a time-domain signal or to a frequency domain signal? Sorry if the question might sound stupid but I am new to this $\endgroup$
    – Rhei
    Nov 26, 2014 at 11:12
  • $\begingroup$ There's nothing actually stopping you measuring the RMS of a frequency domain signal, but I have no idea what it would mean. RMS is normally used to measure the amplitude of a time domain signal. $\endgroup$
    – Simon B
    Nov 26, 2014 at 12:07

In response to your followup question on Simon's answer, it turns out that the RMS of a signal in the time domain is directly proportional to the RMS of the signal in the frequency domain. As noted on wikipedia, for a TD signal $x$ with $N$ samples, and its transform $X$ with $N$ FFT coefficients, $\mathrm{RMS}\left[x\right]=\frac{1}{N}\mathrm{RMS}\left[X\right]$.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.