我正在模拟由以下等式描述的线性系统
Fs = 1000; % sampling frequency
tspan = 0:1/Fs:10;
m = 25;
c = 15;
k = 330000;
A = 100; % forcing amplitude
omega = 114.89; % forcing frequency
% State space function
odefun = @(t,u)[u(2); 1/m*(-k*u(1)-c*u(2)+A*sin(omega*t))];
[time,u] = ode45(odefun,tspan,[0 0]);
spost = u(:,1); % displacement
vel = u(:,2); % velocity
然后我计算位移的 FFT:
L = length(spost);
NFFT = 2^nextpow2(L);
SPOST = fft(spost,NFFT)/L;
f = Fs/2*linspace(0,1,NFFT/2+1);
这就是我得到的:


如您所见,两种情况下位移的最大值不同,但这对我来说并不正确。事实上,如果我在时域或频域中进行结构分析,我希望获得相同的最大位移(因为激励频率等于共振频率)。
这怎么解释?
编辑
我忘了说我也尝试过增加模拟时间,但两个值仍然不匹配
