TA的每日心情 | 开心 2022-1-24 15:10 |
---|
签到天数: 1 天 [LV.1]初来乍到
|
感觉你的原始信号的生成有点问题,注意复数计算和for循环中i,j的使用,i,j当作复数单位是可以写成1i,1j,
; G2 L* M$ N. g) J5 D2 zclear all
& {' B; Z" }. o1 a6 w. Hclc
5 H# q8 W* v5 R& F+ r( N s" en=0.0048;# J3 Q( `& w6 Z8 h! o
Gxn0=262144;
3 z6 x: f+ @% w3 L$ h( n4 aN=5200;
6 \) T F% Q7 Y' a% s& h( |ll=0.04;
& e. S: c: M& `, ~ R* U5 @) b4 a# Y1 Ufor k=1:N/2
# |# _% ]1 i+ J8 Z+ b. ?5 x nk=k*n;6 y& s" q* M3 d# n6 w
Gx(k)=Gxn0*(nk/0.1)^(-2);6 y+ [& n- G3 Q; {; `% m6 U* X: T
Xk(k)=sqrt(N*Gx(k)/2/ll);
5 ^8 A( t, j' s& [ U4 y7 nend
1 F4 r4 V3 R5 X) D! qR=2*pi*rand(1,N/2);& [5 s) a! a# N2 v: r
for k=1:N/2& X1 y# o# O [
Xkf(k)=Xk(k)*exp(1i*R(k));
: R) Z5 _& V+ I% o; i* f Xkf(N-k)=Xk(k)*exp(-1i*R(k));
% r( G# h5 T. j& a6 eend, Z0 R5 @' u, s! J- N' r
Xkf(N/2)=0;
$ k+ B. J( [3 X7 r% R' gfor j=1:N+ R, E3 S& z, s) ]6 T$ l; t
k=(1:1:N-1);) e2 |- W* F9 _( x2 t- K9 O" ^ a
bb=exp(1i*2*pi*k*(j-1)/N);
1 A% R$ n8 Z! N8 O( u5 j cc=Xkf.*bb;4 b, C& n4 A2 ~: ^8 Q
aa=sum(cc);- w9 J5 [$ C9 ~; X) _& Y
Xm(j)=abs(aa/N); %%此处修改了!%%%0 d0 I; X$ R% v% B, d X
end* v* _$ E) N5 ], A
t=(1:N)*ll;. i m d- G( d1 u
figure(1)# a" F, }$ @+ S
plot(t,Xm)
. n% L J! [- [6 b' wL=length(Xm);
! I& n; s8 A: R# G4 m$ hnfft=2^nextpow2(round(length(Xm)/4));* @" M/ o2 X# C8 b2 G1 @+ _. B$ ?
window=chebwin(nfft);$ r0 e% R9 w/ y. K" ^
overlap=round(length(Xm)/8);
) e% K# q) V' W& Nns=ceil(N/L);
( b8 e- W% y" Z; Z! c0 M[pxx,f] = pwelch(Xm,window,overlap,nfft,ns,'oneside');
4 _& {1 \2 v5 S6 A9 bfigure(2)2 N! j: Q( ~* @7 b1 B
plot(log10(f),log10(pxx)) |
|