Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

New to MATLAB?

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

Asked by MD.FAISAL

MD.FAISAL (view profile)

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?



MD.FAISAL (view profile)


No products are associated with this question.

1 Answer

Answer by Honglei Chen

Honglei Chen (view profile)

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)



Honglei Chen

Honglei Chen (view profile)

Contact us