vibration of a rod using spectral element method

9 views (last 30 days)
Foil
Foil on 14 Mar 2021
Commented: Foil on 14 Mar 2021
Hi, everyone
I want to simulate the wave propagation in a rod with one side clamped, and another side experience a step force of duration 0.01s, as shown below. I have tried to write the matlab code but it didn’t work well. I have been puzzled by this problem for a long time. For the matlab code, it will be greatly appreciated if you could share some suggestions with me.
dt=0.0002; % time increment
N=5000; % sample points
tp=N*dt; % total time
t=0:dt:tp; % time discretization
F=1000e3*(stepfun(t,0)-stepfun(t,0.01)); % force duration= 0.01s
f=1/dt; % maximum frequency
fre=0:f/N:f; % frequency discretization
y=fft(F); % FFT amplitude
A=0.01; % area
E=2.1e11; % Young’s modulus
rho=7850; % density
l=10; % length
k=fre*2*pi*(rho/E)^0.5; % wave number
u2f=y.*tan(k*l)./(E*A*k); % displacement in frequency domain % solved by u1=y/k11
u2=ifft(u2f) % displacement in time domain

Answers (1)

Alan Stevens
Alan Stevens on 14 Mar 2021
I don't know if it solves your problem, but your last line should probably have ifft(u2f) not ifft(u2) on the right hand side.
  2 Comments
Foil
Foil on 14 Mar 2021
I mean the code is now fixed, but the numerical results are still wrong.

Sign in to comment.

Categories

Find more on Acoustics, Noise and Vibration in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!