Forced vibration response Ode45

12 views (last 30 days)
Ryan
Ryan on 24 Apr 2014
Answered: Mohammed Siraj on 23 Sep 2021
I am suck on a question for an assignment. I can not get matlab to work the following function I keep getting error messages.
function f=t
F=940*sin(10*pi*t);
k=50000;
damping=0.05;
r=3.224;
x(1+t)=(F/k)/sqrt((1-R^2)^2+4*(damping^2)*r^2);
t=1/(10*pi);
[x,t]=ode45('f',[T,T*50],0);
plot(x)
  4 Comments
A Jenkins
A Jenkins on 25 Apr 2014
Edited: A Jenkins on 25 Apr 2014
Perhaps you should start with an example that works and slowly make modifications to it until you get to your final result?
Then you will know exactly what change you made and therefore only one line will be incorrect at a time.
(We try not to do people's homework for them, so we only answer specific questions here.)
Ryan
Ryan on 26 Apr 2014
I didn't ask for you to do it for me as you don't have the assignment question. I asked for help with the code I wrote. I have figured out how to do the problem any way.
function [du]=QuestionE(t,u);
du=zeros(2,1);
Damping=0.05;
wn=9.74;
du(1)=-2*Damping*wn*u(1)-u(2)*(wn^2)+(940/530)*sin(10*pi*t);
du(2)=u(1);
end
Damping=0.05;
wn=9.75;
omega=10*pi;
k=50000
m=527.1;
g=9.81;
r=omega/wn;
F=940
wd=wn.*sqrt(1-Damping.^2);
timespan=(50*2*pi)/omega
xst=-(m*g)/k;
v0=0;
A=xst;
B=(v0+Damping*wn*xst)/wd;
[t,u]=ode45(@QuestionE1,[0 timespan],[v0,xst]);
u=exp(-Damping.*wn.*t).*(A.*cos(wd.*t)+B.*sin(wd.*t));
y=(2*Damping*r)/(1-r^2);
fi=atan(y);
X=((F/k)/(sqrt((1-(r^2))^2+4*(Damping^2)*(r^2))))
u1=X.*cos(omega.*t-fi)+u;
plot(t,u,'k')
hold on
plot(t,u1,'b')
title('Forced Vibration Responce')
xlabel('Time')
ylabel('x(t)')

Sign in to comment.

Answers (1)

Mohammed Siraj
Mohammed Siraj on 23 Sep 2021
Write the program for the task given: The motion of the forced vibratory system with spring-
mass system is modeled by the following equation, solve the differential equation and find the
displacement, velocity with respect to time (from 0 to 120 seconds).Analyze the system by
MATLAB Programming and validate the solution by using SIMULINK. Assume m=1 kg, k=2
N/m, F=120N and ω=1 rad/sec.

Tags

Community Treasure Hunt

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

Start Hunting!