0% found this document useful (0 votes)
49 views17 pages

Section3 9

jlk

Uploaded by

sonti11
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
49 views17 pages

Section3 9

jlk

Uploaded by

sonti11
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

3-

72

Problems and Solutions from Section 3.9 (3.57-3.64)


3.57*. Numerically integrate and plot the response of an underdamped system
determined by m = 100 kg, k = 1000 N/m, and c = 20 kg/s, subject to the initial
conditions of x0 = 0 and v0 = 0, and the applied force F(t) = 30(t -1). Then plot the
exact response as computed by equation (3.17). Compare the plot of the exact solution to
the numerical simulation.
Solution: First the solution is presented in Mathcad:

The Matlab code to provide similar plots is given next:

3%Numerical Solutions
%Problem #57
clc
clear
close all
%Numerical Solution
x0=[0;0];
tspan=[0 15];
[t,x]=ode45('prob57a',tspan,x0);
figure(1)
plot(t,x(:,1));
title('Problem #57');
xlabel('Time, sec.');
ylabel('Displacement, m');
hold on
%Analytical Solution
m=100;
c=20;
k=1000;
F=30;
w=sqrt(k/m);
d=c/(2*w*m);
wd=w*sqrt(1-d^2);
to=1;
phi=atan(d/sqrt(1-d^2));
%for t<to
t=linspace(0,1,3);
x=0.*t;
plot(t,x,'*');
%for t>=to
t=linspace(1,15);
x=F/k-F/(k*sqrt(1-d^2)).*exp(-d.*w.*(t-to)).*cos(wd.*(t-to)-phi);
plot(t,x,'*');
legend('Numerical', 'Analytical')
%M-file for Prob #50
function dx=prob(t,x);
[rows, cols]=size(x);dx=zeros(rows, cols);
m=100;
c=20;
k=1000;
F=30;
if t<1
dx==0;
else
dx(1)=x(2);
dx(2)=-c/m*x(2) - k/m*x(1) + F/m;
end

73

3-

74

3.58*. Numerically integrate and plot the response of an underdamped system


determined by m = 150 kg, and k = 4000 N/m subject to the initial conditions of x0 = 0.01
m and v0 = 0.1 m/s, and the applied force F(t) = F(t) = 15(t -1), for various values of the
damping coefficient. Use this program to determine a value of damping that causes the
transient term to die out with in 3 seconds. Try to find the smallest such value of
damping remembering that added damping is usually expensive.
Solution: First the solution is given in Mathcad followed by the equivalent Matlab code.

A value of c = 710 kg/s will do the job.

3%Vibrations
%Numerical Solutions
%Problem #51
clc
clear
close all
%Numerical Solution
x0=[0.01;0];
tspan=[0 15];
[t,x]=ode45('prob51a',tspan,x0);
figure(1)
plot(t,x(:,1));
title('Problem #51');
xlabel('Time, sec.');
ylabel('Displacement, m');
hold on
%Analytical Solution
m=150;
c=0;
k=4000;
F=15;
w=sqrt(k/m);
d=c/(2*w*m);
wd=w*sqrt(1-d^2);
to=1;
phi=atan(d/sqrt(1-d^2));

%for t<to
t=linspace(0,1,10);
x0=0.01;
v0=0;
A=sqrt(v0^2+(x0*w)^2)/w;
theta=pi/2;
x=A.*sin(w.*t + theta);
plot(t,x,'*')
%for t>=to
t=linspace(1,15);
x2=F/k-F/(k*sqrt(1-d^2)).*exp(-d.*w.*(t-to)).*cos(wd.*(t-to)-phi);
x1=A.*sin(w.*t + theta);
x=x1+x2;
plot(t,x,'*');
legend('Numerical', 'Analytical')
%Clay
%Vibrations
%Solutions

75

3%M-file for Prob #51


function dx=prob(t,x);
[rows, cols]=size(x);dx=zeros(rows, cols);
m=150;
c=0;
k=4000;
F=15;

if t<1
dx(1)=x(2);
dx(2)=-c/m*x(2)- k/m*x(1);
else
dx(1)=x(2);
dx(2)=-c/m*x(2) - k/m*x(1)+ F/m;
end

76

3-

3.59*. Solve Example 3.3.2, Figure 3.9 by numerically integrating rather then using
analytical expressions, and plot the response.
Solution: Both Mathcad and Matlab solutions follow:

%Numerical Solutions
%Problem #53
clc
clear
close all
%Numerical Solution

77

3x0=[0;0];
tspan=[0 10];
[t,x]=ode45('prob53a',tspan,x0);
figure(1)
plot(t,x(:,1));
title('Problem #53');
xlabel('Time, sec.');
ylabel('Displacement, mm');
hold on
%Analytical Solution
t1=0.2;
t2=0.6;
%for t<to
t=linspace(0,t1);
x=2.5*t-4.56.*sin(0.548.*t);
plot(t,x,'*');
%for t1<t<t2
t=linspace(t1,t2);
x=0.75 - 1.25.*t + 6.84.*sin(0.548*(t-t1))- 4.56.*sin(0.548.*t);
plot(t,x,'*');
%for t2<t
t=linspace(t2,10);
x=6.84.*sin(0.548.*(t-t1))-2.28.*sin(0.548.*(t-t2))4.56.*sin(0.548.*t);
plot(t,x,'*');
legend('Numerical', 'Analytical')
%Clay
%Vibrations
%Solutions
%Clay
%Vibrations
%Solutions
%M-file for Prob #52
function dx=prob(t,x);
[rows, cols]=size(x);dx=zeros(rows, cols);
m=1;
c=10;
k=1000;
Y=0.05;
wb=3;
a=c*Y*wb;
b=k*Y;
alpha=atan(b/a);
AB=sqrt(a^2+b^2)/m;
dx(1)=x(2);
dx(2)=-c/m*x(2)- k/m*x(1)+ a/m*cos(wb*t) + b/m*sin(wb*t);

78

3-

3.60*. Numerically simulate the response of the system of Problem 3.21 and plot the
response.
Solution: The solution in Matlab is
%Clay
%Vibrations
%Numerical Solutions
%Problem #53
clc
clear
close all
%Numerical Solution
x0=[0;0];
tspan=[0 10];
[t,x]=ode45('prob53a',tspan,x0);
figure(1)
plot(t,x(:,1));
title('Problem #53');
xlabel('Time, sec.');
ylabel('Displacement, mm');
hold on
%Analytical Solution
t1=0.2;
t2=0.6;
%for t<to
t=linspace(0,t1);
x=2.5*t-4.56.*sin(0.548.*t);
plot(t,x,'*');
%for t1<t<t2
t=linspace(t1,t2);
x=0.75 - 1.25.*t + 6.84.*sin(0.548*(t-t1))- 4.56.*sin(0.548.*t);
plot(t,x,'*');
%for t2<t
t=linspace(t2,10);
x=6.84.*sin(0.548.*(t-t1))-2.28.*sin(0.548.*(t-t2))4.56.*sin(0.548.*t);
plot(t,x,'*');
legend('Numerical', 'Analytical')
%Clay
%Vibrations
%Solutions

79

3%M-file for Prob #53


function dx=prob(t,x);
[rows, cols]=size(x);dx=zeros(rows, cols);
m=5000;
k=1.5e3;
ymax=0.5;
F=k*ymax;
t1=0.2;
t2=0.6;
if t<t1
dx(1)=x(2);
dx(2)= - k/m*x(1)+ F/m*(t/t1);
elseif t<t2 & t>t1
dx(1)=x(2);
dx(2)= - k/m*x(1)+ F/(2*t1*m)*(t2-t);
else
dx(1)=x(2);
dx(2)= - k/m*x(1);
end

80

3-

3.61*. Numerically simulate the response of the system of Problem 3.18 and plot the
response.
Solution: The solution in Matlab is
%Clay
%Vibrations
%Numerical Solutions
%Problem #54
clc
clear
close all
%Numerical Solution
x0=[0;0];
tspan=[0 10];
[t,x]=ode45('prob54a',tspan,x0);
figure(1)
plot(t,x(:,1));
title('Problem #54');
xlabel('Time, sec.');
ylabel('Displacement, m');
hold on
%Analytical Solution
to=4;
%for t<to
t=linspace(0,to);
x=5*(t-sin(t));
plot(t,x,'*');
%for t>=to
t=linspace(to,10);
x=5*(sin(t-to)-sin(t))+20;
plot(t,x,'*');
legend('Numerical', 'Analytical')
%Clay
%Vibrations
%Solutions
%M-file for Prob #54

function dx=prob(t,x);
[rows, cols]=size(x);dx=zeros(rows, cols);
m=1;
k=1;
F=20;

81

3to=4;
if t<to
dx(1)=x(2);
dx(2)= - k/m*x(1)+ F/m*(t/to);
else
dx(1)=x(2);
dx(2)= - k/m*x(1)+ F/m;
end

82

3-

83

3.62*. Numerically simulate the response of the system of Problem 3.19 for a 2 meter
concrete wall with cross section 0.03 m2 and mass modeled as lumped at the end of 1000
kg. Use F0 = 100 N, and plot the response for the case t0 =0.25 s.
Solution The solution in Matlab is:
%Numerical Solutions
%Problem #3.62
clc
clear
close all
%Numerical Solution
x0=[0;0];
tspan=[0 0.5];
[t,x]=ode45('prob55a',tspan,x0);
figure(1)
plot(t,x(:,1));
title('Problem #55');
xlabel('Time, sec.');
ylabel('Displacement, m');
hold on
%Analytical Solution
m=1000;
E=3.8e9;
A=0.03;
l=2;
k=E*A/l;
F=100;
w=sqrt(k/m);
to=0.25;

%for t<to
t=linspace(0,to);
x=F/k*(1-cos(w*t))+ F/(to*k)*(1/w*sin(w*t)-t);
plot(t,x,'*');
%for t>=to
t=linspace(to,0.5);
x=-F/k*cos(w*t)- F/(w*k*to)*(sin(w*(t-to))-sin(w*t));
plot(t,x,'*');
legend('Numerical', 'Analytical')
%Clay
%Vibrations
%Solutions
%M-file for Prob #3.62

3-

function dx=prob(t,x);
[rows, cols]=size(x);dx=zeros(rows, cols);
m=1000;
E=3.8e9;
A=0.03;
l=2;
k=E*A/l;
F=100;
w=sqrt(k/m);
to=0.25;

if t<to
dx(1)=x(2);
dx(2)= - k/m*x(1) + F/m*(1-t/to);
else
dx(1)=x(2);
dx(2)= - k/m*x(1);
end

84

33.63*. Numerically simulate the response of the system of Problem 3.20 and plot the
response.
Solution The solution in Matlab is:
%Clay
%Vibrations
%Numerical Solutions
%Problem #56
clc
clear
close all
%Numerical Solution
x0=[0;0];
tspan=[0 2];
[t,x]=ode45('prob56a',tspan,x0);
figure(1)
plot(t,x(:,1));
title('Problem #56');
xlabel('Time, sec.');
ylabel('Displacement, m');
hold on
%Analytical Solution
t=linspace(0,2);
x=0.5*t-0.05*sin(10*t);
plot(t,x,'*');
legend('Numerical', 'Analytical')

%Clay
%Vibrations
%Solutions
%M-file for Prob #56

function dx=prob(t,x);
[rows, cols]=size(x);dx=zeros(rows, cols);
m=1;
k=100;
F=50;

dx(1)=x(2);
dx(2)= - k/m*x(1) + F/m*(t);

85

3-

86

3-

87

3.64*. Compute and plot the response of the system of following system using numerical
integration:
! + 1500x(t) = 20sin 25t + 10sin15t + 20sin 2t
10!!
x(t) + 20 x(t)
with initial conditions of x0 = 0.01 m and v0 = 1.0 m/s.
Solution The solution in Matlab is:
%Clay
%Vibrations
%Numerical Solutions
%Problem #57
clc
clear
close all
%Numerical Solution
x0=[0.01;1];
tspan=[0 5];
[t,x]=ode45('prob57a',tspan,x0);
figure(1)
plot(t,x(:,1));
title('Problem #57');
xlabel('Time, sec.');
ylabel('Displacement, m');
hold on
%Analytical Solution
m=10;
c=20;
k=1500;
w=sqrt(k/m);
d=c/(2*w*m);
wd=w*sqrt(1-d^2);

Y1=0.00419;
ph1=3.04;
wb1=25;
Y2=0.01238;
ph2=2.77;
wb2=15;
Y3=0.01369;
ph3=0.0268;
wb3=2;
A=0.1047;
phi=0.1465;

3x=A.*exp(-d*w.*t).*sin(wd*t+phi)+ Y1.*sin(wb1*t-ph1) + Y2*sin(wb2*tph2) + Y3*sin(wb3*t-ph3);


plot(t,x,'*')
legend('Numerical', 'Analytical')
%Clay
%Vibrations
%Solutions
%M-file for Prob #57

function dx=prob(t,x);
[rows, cols]=size(x);dx=zeros(rows, cols);
m=10;
c=20;
k=1500;

dx(1)=x(2);
dx(2)= -c/m*x(2) - k/m*x(1) + 20/m*sin(25*t) + 10/m*sin(15*t) +
20/m*sin(2*t) ;

88

You might also like