📄 noisecgt.m
字号:
%function noisecgt%NOISECGT Unit test for the function NOISECG.% O. Lemoine - February 1996.N=32768;A1=0.2; A2=0.7;sig=noisecg(N,A1,A2);% MeanMean=mean(sig);if abs(Mean)>10/sqrt(N), error('noisecg test 1 failed');end% VarianceVar=std(sig).^2;if abs(Var-1)>10/sqrt(N), error('noisecg test 2 failed');end% histogramNh=100;[h,m]=hist(real(sig),Nh); h=h/max(h);Nc=find(abs(m)==min(abs(m)));pdf=amgauss(Nh,Nc,Nh/(2*sqrt(pi)))';if any(abs(h-pdf).^2>10/sqrt(N)), error('noisecg test 3 failed');end% whitenesssig=noisecg(N);autocor=xcorr(sig);Max=max(autocor);L=length(find(abs(autocor/Max)>5e-2));if L/N>5e-4, error('noisecg test 4 failed');end % For N=1 N=1; Np=10000;for k=1:Np, sig(k)=noisecg(N);endMean=mean(sig);if abs(Mean)>10/sqrt(Np), error('noisecg test 5 failed');endVar=std(sig).^2;if abs(Var-1)>10/sqrt(Np), error('noisecg test 6 failed');end[h,m]=hist(real(sig),Nh); h=h/max(h);Nc=find(abs(m)==min(abs(m)));pdf=amgauss(Nh,Nc,Nh/(2*sqrt(pi)))';if any(abs(h-pdf).^2>10/sqrt(Np)), error('noisecg test 7 failed');end% For N=2N=2;for k=1:2:(Np-1), noise=noisecg(N); sig(k)=noise(1); sig(k+1)=noise(2);endMean=mean(sig);if abs(Mean)>10/sqrt(Np), error('noisecg test 8 failed');endVar=std(sig).^2;if abs(Var-1)>10/sqrt(Np), error('noisecg test 9 failed');end[h,m]=hist(real(sig),Nh); h=h/max(h);Nc=find(abs(m)==min(abs(m)));pdf=amgauss(Nh,Nc,Nh/(2*sqrt(pi)))';if any(abs(h-pdf).^2>10/sqrt(Np)), error('noisecg test 10 failed');end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -