TA的每日心情 | 开心 2022-1-24 15:10 |
---|
签到天数: 1 天 [LV.1]初来乍到
|
感觉你的原始信号的生成有点问题,注意复数计算和for循环中i,j的使用,i,j当作复数单位是可以写成1i,1j,
4 P7 D G7 @( T; Y" J* A* zclear all5 G/ L* o* R& H) B
clc
9 H4 w/ N- x$ O9 M4 rn=0.0048;) K# o( u; j; e4 v1 M: l
Gxn0=262144;% }* X9 @& \7 a# |( g# f
N=5200;
" @" t3 M" O6 a" ]7 w ]0 o0 @ll=0.04;* C/ S4 o, T6 L* F
for k=1:N/28 p. d( q2 L9 h9 P4 b M# D0 V
nk=k*n;
$ M* w7 u' {" U: v& I* H' J Gx(k)=Gxn0*(nk/0.1)^(-2);
$ S& ` A& R+ s& W! } Xk(k)=sqrt(N*Gx(k)/2/ll);
! z3 x5 B5 y. G# i) T# eend5 g/ q9 g3 j; [& w
R=2*pi*rand(1,N/2);1 v: y0 ~1 Y2 |. I7 ^* {
for k=1:N/2
. Z" u a8 T4 e; m Xkf(k)=Xk(k)*exp(1i*R(k));' V" n3 B3 o2 \- w8 S. E1 Z
Xkf(N-k)=Xk(k)*exp(-1i*R(k));- q) d8 z Z b6 M' p
end$ Z( {1 d" k4 n; t+ R
Xkf(N/2)=0;
+ m4 Q- g' W; y( @4 }+ `( m. u# lfor j=1:N3 n! ^: `' D. v# ]
k=(1:1:N-1);
4 T& T1 P8 ~5 ~5 U; t' K bb=exp(1i*2*pi*k*(j-1)/N);
! ?8 ]% t/ t4 V cc=Xkf.*bb;
, g |" Z$ `0 f) C aa=sum(cc);6 y- d& J+ B% K1 G+ l" l6 n. L7 Q
Xm(j)=abs(aa/N); %%此处修改了!%%%
: u2 W/ [: A& q) j3 Kend% Y# w, Q! K) v' o
t=(1:N)*ll;. J5 n6 R, P0 p3 z8 V
figure(1)
6 E9 y3 L$ V6 t6 D$ jplot(t,Xm) w* L- c7 F$ d1 ~ ~
L=length(Xm);
& y; [0 F- A$ m, x2 Unfft=2^nextpow2(round(length(Xm)/4));
8 x' M- m# Q! r+ a/ L% ]6 wwindow=chebwin(nfft);; w; m, l" D! o8 r4 I' g
overlap=round(length(Xm)/8);6 x3 @9 G5 r- V
ns=ceil(N/L);9 D* P- Q& @6 F, h# {- Y) W
[pxx,f] = pwelch(Xm,window,overlap,nfft,ns,'oneside');
" C, p8 C; I' l7 `" vfigure(2)7 u9 X7 m5 d- D8 D; a
plot(log10(f),log10(pxx)) |
|