How generating band limited white noise with matlab
    35 visualizzazioni (ultimi 30 giorni)
  
       Mostra commenti meno recenti
    
In matlab I use if true % code randn(1,length(N)) end to generate white noise... Now I would like to generate band limited white noise (e. g. from 240 to 435 Hz). How must I code that in matlab!?
0 Commenti
Risposta accettata
  Wayne King
    
      
 il 2 Lug 2013
        That's not a very good approximation to a bandpass filter between 240 and 435 Hz.
Look at your magnitude response:
    fvtool(B,A,'Fs',2000)
If you're going to use the window method, can you up the order significantly?
Compare your filter to:
[B1,A1] = fir1(48,[fd fu]/fn);
fvtool(B1,A1,'Fs',2000)
Now you can do:
noise_limited = filter(B1,A1,white_noise);
0 Commenti
Più risposte (1)
  Wayne King
    
      
 il 30 Giu 2013
        
      Modificato: Wayne King
    
      
 il 30 Giu 2013
  
      band limited white noise is not possible. White noise by definition has a flat power spectral density function.
You can generate a white noise sequence and then filter that sequence to generate a band-limited noise but that noise will not be white.
You do not tell us what the sampling frequency is, which is a critical piece of information to have in designing the filter (you cannot design the filter without it), but I'll assume 2,000 Hz in the following example.
    d = fdesign.bandpass('Fst1,Fp1,Fp2,Fst2,Ast1,Ap,Ast2', 150,240,435,550,60,0.5,60,2000);
    Hd = design(d);
    y = filter(Hd,randn(1000,1));
You can view the filter's magnitude response
     fvtool(Hd)
I've also given you a minimum-order design with 60-dB of stopband attenuation. If you need less stopband attenuation, you can specify that, or if you wish to specify your filter with a certain order, you can also do that with fdesign.bandpass
Vedere anche
Categorie
				Scopri di più su Digital Filter Design in Help Center e File Exchange
			
	Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!