MATLAB Answers


how to generate a colored noise with a particular power level such as 3db?

Asked by MD.FAISAL on 20 Sep 2013

i have generated a white gaussian noise. now, how can i generate a colored noise from the white gaussian noise by passing it through a FIR bandpass filter for a particular power level such as 3 db?


Log in to comment.

1 Answer

Answer by Honglei Chen
on 20 Sep 2013
 Accepted Answer

3dB is a relative quantity and has to be compared to a reference level. Say you have a signal of 1 watts,and you want a noise level 3dB below it, then your noise power is 0.5. Use that as an example, you would first generate a white noise at this power level, such as

x = sqrt(0.5)*randn(1000,1)

Then you can define a filter with coefficients of b and a. In general, if you use MATLAB, most pass band is around 0dB so you can assume in pass band your noise power does not change. To get your colored noise, you just need to run

y = filter(b,a,x)



Log in to comment.

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today