马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
我的程序:
function y=American_6ji_fun(f,V)
%空间频率与时间频率的转化
Av=0.0339;
k=0.25;
wc=0.8245;
%w=2*pi*f;
w=2*pi*f/V;
y=(k*Av*wc^2)/(w^2*(w^2+wc^2));
end
%
close all;
clear all
clc;
k=0.25;Av=0.0339;Wc=0.8245;V=100/3.6;
fu=V/0.5;fl=V/50;Ts=10;
tic
df=1/Ts;
N=floor((fu-fl)/df);
N0=floor(fl/df);
detat=Ts/N;
for k=0:N-1
Sx(k+1)=American_6ji_fun(k*df+fl,V);
end
% 以下是波叠加法,功率谱密度生成时间序列的程序
t=(1:N)*detat;
omega=2*pi*(df*(0:N-1)+fl);
theta=2*pi*rand(1,N);
for j=1:N
for i=1:N
q(i)=sqrt(2*Sx(i)*df)*cos(omega(i)*t(j)+theta(i));
end
xk(j)=sum(q);
end
time_clc=toc;
figure(1);
plot(t,xk);%_例子_
legend('American_6ji_fun_例子_三角级数不平顺');
xlabel('时间/s');
ylabel('位移/m/cm/mm');
for k=1:N
f(k)=fl+(k-1)*df; % 频率
end
y=(abs(fft(xk))).^2/N; %时域信号FFT变换得到的功率谱函数
figure(2);
loglog(f,Sx,'r',f,y,'b');
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|