µ±Ç°Î»ÖãºÊ×Ò³ > 高斯白噪声的matlab实现 - 百度文库
ͨÐÅϵͳ½¨Ä£Óë·ÂÕæ
ʵÑéÒ»¡¢¸ß˹°×ÔëÉùµÄmatlabʵÏÖ
ÒªÇó£º
Ñù±¾µã£º100 1000 ±ê×¼²î£º0.2 2 10 ¾ùÖµ£º 0 0.2
°×ÔëÉù
Èç¹ûÔëÉùµÄ¹¦ÂÊÆ×ÃܶÈÔÚËùÓÐµÄÆµÂÊÉϾùΪһ³£Êý£¬¼´
Pn(f)?n0,(???f???),(W/Hz)ʽÖУºn0Ϊ³£Êý£¬Ôð³É¸ÃÔëÉùΪ°×ÔëÉù£¬ÓÃn(t)±íʾ¡£
¸ß˹°×ÔëÉùµÄmatlabʵÏÖ
1£®Ñù±¾µãΪ1000¡¢¾ùֵΪ0¡¢±ê×¼²îΪ0.2ʱ£¬¸ß˹°×ÔëÉù·Ö²¼ÎªÏÂͼËùʾ£º
³ÌÐòÈçÏÂËùʾ£º
% White background nois clear all
f = 1:1:1000;
for i = 1:length(f)
K = (0.2) * randn(1,1) - 0;
P(i) = 10.^(K - 3.95*(10^-5)*f(i)); A(i) = sqrt(2*P(i)); end
xifft = ifft(A);
realx = real(xifft);
ti = [1:length(xifft)-1]/1000;
realx2(1:length(xifft)-1) = realx(2:length(xifft)); plot(ti,realx2)
2£®Ñù±¾µãΪ1000¡¢¾ùֵΪ0¡¢±ê×¼²îΪ2ʱ£¬¸ß˹°×ÔëÉù·Ö²¼ÎªÏÂͼËùʾ£º
³ÌÐòÈçÏÂËùʾ£º
% White background nois clear all
f = 1:1:1000;
for i = 1:length(f)
K = (2) * randn(1,1) - 0;
P(i) = 10.^(K - 3.95*(10^-5)*f(i)); A(i) = sqrt(2*P(i)); end
xifft = ifft(A);
realx = real(xifft);
ti = [1:length(xifft)-1]/1000;
realx2(1:length(xifft)-1) = realx(2:length(xifft)); plot(ti,realx2)
3£®Ñù±¾µãΪ1000¡¢¾ùֵΪ0¡¢±ê×¼²îΪ10ʱ£¬¸ß˹°×ÔëÉù·Ö²¼ÎªÏÂͼËùʾ£º
³ÌÐòÈçÏÂËùʾ£º
% White background nois clear all
f = 1:1:1000;
for i = 1:length(f)
K = (10) * randn(1,1) - 0;
P(i) = 10.^(K - 3.95*(10^-5)*f(i)); A(i) = sqrt(2*P(i)); end
xifft = ifft(A);
realx = real(xifft);
ti = [1:length(xifft)-1]/1000;
realx2(1:length(xifft)-1) = realx(2:length(xifft)); plot(ti,realx2)
¹²·ÖÏí92ƪÏà¹ØÎĵµ