matlab sheet 3 solution - ahmed nagib

Post on 10-Jun-2022

38 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Faculty of Engineering Spring 2017 Mechanical Engineering Department

Dr./ Ahmed Nagib Elmekawy 1 of 21 Matlab Sheet 3 – Solution

Matlab Sheet 3 - Solution

Plotting in Matlab

1. a. Estimate the roots of the following equation

π‘₯3 βˆ’ 3π‘₯2 + 5π‘₯ sin (πœ‹π‘₯

4βˆ’

5πœ‹

4) + 3 = 0

by plotting the equation.

b. Use the estimates found in part a to find the roots more accurately with

the fzero function.

The m-file:

row clc; clear;clf x = (-2:0.01:4);

y=x.^3-3*x.^2+5*x.*sin(pi*x/4-5*pi/4)+3;

plot(x,y)

xlabel('x'),ylabel('f(x)'),grid

z=fzero('x.^3-3*x.^2+5*x.*sin(pi*x/4-5*pi/4)+3',3.8)

From the plot with either method we can estimate the roots to be x = βˆ’0.5, 1.1, and 3.8. b) Then use the fzero function as follows, for the point x = 3.8. Repeating these steps for the estimates at βˆ’0.5 and 1.1, all of these methods give the roots x = βˆ’0.4795, 1.1346, and 3.8318.

In Command Window:

z =

3.8318

Figure

-2 -1 0 1 2 3 4

-25

-20

-15

-10

-5

0

5

x

f(x)

Faculty of Engineering Spring 2017 Mechanical Engineering Department

Dr./ Ahmed Nagib Elmekawy 2 of 21 Matlab Sheet 3 – Solution

2. Plot columns 2 and 3 of the following matrix A versus column 1. The data in

column 1 are time (seconds). The data in columns 2 and 3 are force (newtons).

The m-file:

A = [0,-7,6;5,-4,3;10,-1,9;15,1,0;20,2,-1];

plot(A(:,1),A(:,2:3))

xlabel('Time (seconds)'),

ylabel('Force (Newtons)')

gtext('Column 1'),gtext('Column 2')

Figure

0 2 4 6 8 10 12 14 16 18 20-8

-6

-4

-2

0

2

4

6

8

10

Time (seconds)

Forc

e (

New

tons)

Column 1

Column 2

Faculty of Engineering Spring 2017 Mechanical Engineering Department

Dr./ Ahmed Nagib Elmekawy 3 of 21 Matlab Sheet 3 – Solution

3. Many applications use the following β€œsmall angle” approximation for the

sine to obtain a simpler model that is easy to understand and analyze. This

approximation states that sin x β‰ˆ x, where x must be in radians. Investigate

the accuracy of this approximation by creating three plots. For the first, plot sin

x and x versus x for 0 ≀ x ≀ 1. For the second, plot the approximation error sin

x - x versus x for 0 ≀ x ≀ 1. For the third, plot the relative error [sin(x) - x]/sin(x)

versus x for 0 ≀ x ≀ 1. How small must x be for the approximation to be accurate

within 5 percent?

The m-file:

x = 0:0.01:1;

subplot(2,2,1)

plot(x,sin(x),x,x)

xlabel('x (radians)'),ylabel('x and sin(x)')

gtext('x'),gtext('sin(x)')

subplot(2,2,2)

plot(x,abs(sin(x)-x))

xlabel('x (radians)'),ylabel('Error: sin(x) - x')

subplot(2,2,3)

plot(x,abs(100*(sin(x)-x))./sin(x)),xlabel('x

(radians)'),...

ylabel('Percent Error'),grid

Figure

0 0.5 10

0.5

1

x (radians)

x a

nd s

in(x

) x

sin(x)

0 0.5 10

0.05

0.1

0.15

0.2

x (radians)

Err

or:

sin

(x)

- x

0 0.5 10

5

10

15

20

x (radians)

Perc

ent

Err

or

Faculty of Engineering Spring 2017 Mechanical Engineering Department

Dr./ Ahmed Nagib Elmekawy 4 of 21 Matlab Sheet 3 – Solution

4. You can use trigonometric identities to simplify the equations that appear

in many applications. Confirm the identity tan(2x) = 2 tan x/(1 - tan2 x)

by plotting both the left and the right sides versus x over the range 0 ≀ x ≀ 2πœ‹.

The m-file:

x =0:0.01:2*pi;

left = tan(2*x);

right = 2*tan(x)./(1-tan(x).^2);

plot(x,left,'-rs',x,right)

xlabel('x (radians)')

ylabel('Left and Right Sides')

legend('Left','Right','location', 'best')

Figure

0 1 2 3 4 5 6 7-250

-200

-150

-100

-50

0

50

100

x (radians)

Left

and R

ight

Sid

es

Left

Right

Faculty of Engineering Spring 2017 Mechanical Engineering Department

Dr./ Ahmed Nagib Elmekawy 5 of 21 Matlab Sheet 3 – Solution

5. The following functions describe the oscillations in electric circuits and the

vibrations of machines and structures. Plot these functions on the same plot.

Because they are similar, decide how best to plot and label them to avoid

confusion.

π‘₯(𝑑) = 10 π‘’βˆ’0.5𝑑 sin(3𝑑 + 2)

𝑦(𝑑) = 7 π‘’βˆ’0.4𝑑 cos(5𝑑 βˆ’ 3)

The m-file:

t = 0:0.02:10;

x = 10*exp(-.5*t).*sin(3*t+2);

y = 7*exp(-.4*t).*cos(5*t-3);

plot(t,x,t,y,':')

xlabel('t'),ylabel('x(t), y(t)')

legend('x(t)','y(t)')

Figure

0 1 2 3 4 5 6 7 8 9 10-8

-6

-4

-2

0

2

4

6

8

10

t

x(t

), y

(t)

x(t)

y(t)

Faculty of Engineering Spring 2017 Mechanical Engineering Department

Dr./ Ahmed Nagib Elmekawy 6 of 21 Matlab Sheet 3 – Solution

6. In certain kinds of structural vibrations, a periodic force acting on the structure

will cause the vibration amplitude to repeatedly increase and decrease with

time. This phenomenon, called beating, also occurs in musical sounds. A

particular structure’s displacement is described by

𝑦(𝑑) =1

𝑓12 βˆ’ 𝑓2

2[cos(𝑓2𝑑) βˆ’ cos(𝑓1𝑑)]

where y is the displacement in mm and t is the time in seconds. Plot y versus t

over the range 0 ≀ t ≀ 20 for 𝑓1 = 8 rad/sec and𝑓2 = 1 rad/sec. Be sure to choose

enough points to obtain an accurate plot.

The m-file:

t = 0:0.02:20;

y = (1/(64-1))*(cos(8*t)-cos(t));

plot(t,y)

xlabel('t (seconds)')

ylabel('Displacement y (Inches)')

Figure

0 2 4 6 8 10 12 14 16 18 20-0.04

-0.03

-0.02

-0.01

0

0.01

0.02

0.03

0.04

t (seconds)

Dis

pla

cem

ent

y (

Inches)

Faculty of Engineering Spring 2017 Mechanical Engineering Department

Dr./ Ahmed Nagib Elmekawy 7 of 21 Matlab Sheet 3 – Solution

7. Oscillations in mechanical structures and electric circuits can often be

𝑦(𝑑) = π‘’βˆ’π‘‘ πœβ„ sin(πœ”π‘‘ + πœ™)

where t is time and πœ” is the oscillation frequency in radians per unit time.

The oscillations have a period of 2πœ‹/πœ”, and their amplitudes decay in time

at a rate determined by 𝜏, which is called the time constant. The smaller 𝜏

is, the faster the oscillations die out.

a. Use these facts to develop a criterion for choosing the spacing of the t values

and the upper limit on t to obtain an accurate plot of y(t).

(Hint: Consider two cases: 4𝜏 > 2πœ‹ πœ”β„ and 4𝜏 < 2πœ‹ πœ”β„ )

b. Apply your criterion, and plot y(t) for 𝜏 = 10, πœ” = πœ‹ and πœ™ = 2.

c. Apply your criterion, and plot y(t) for 𝜏 = 0.1, πœ” = πœ‹ and πœ™ = 2.

The m-file:

% Part a

t = 0:0.02:40;

y = exp(-t/10).*sin(pi*t+2);

plot(t,y)

xlabel('t'),ylabel('y')

title('Part a')

%Part b

figure(2)

t2 = 0:0.001:0.4;

y2 = exp(-t2/.1).*sin(8*pi*t2+2);

plot(t2,y2)

xlabel('t'),ylabel('y')

title('Part b')

Faculty of Engineering Spring 2017 Mechanical Engineering Department

Dr./ Ahmed Nagib Elmekawy 8 of 21 Matlab Sheet 3 – Solution

Figures:

0 5 10 15 20 25 30 35 40-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

t

y

Part a

0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4-0.4

-0.2

0

0.2

0.4

0.6

0.8

1

t

y

Part b

Faculty of Engineering Spring 2017 Mechanical Engineering Department

Dr./ Ahmed Nagib Elmekawy 9 of 21 Matlab Sheet 3 – Solution

8. The vibrations of the body of a helicopter due to the periodic force applied by

the rotation of the rotor can be modeled by a frictionless spring-mass-damper

system subjected to an external periodic force. The position π‘₯(𝑑) of the mass is

given by the equation:

π‘₯(𝑑) =2π‘“π‘œ

πœ”π‘›3 βˆ’ πœ”3

sin (πœ”π‘› βˆ’ πœ”

2 𝑑) sin (

πœ”π‘› + πœ”

2 𝑑)

where 𝐹(𝑑) = 𝐹0 sin πœ”π‘‘, and 𝑓0 = 𝐹0/π‘š, Ο‰ is the frequency of the applied

force, and πœ”π‘› is the natural frequency of the helicopter. When the value of πœ”

is close to the value of πœ”π‘›, the vibration consists of fast oscillation with

slowly changing amplitude called beat. Use 𝑓0 = 12 N/kg, πœ”π‘›=10 rad/s,

and πœ”=12 rad/s to plot π‘₯(𝑑) as a function of t for 0 ≀ t ≀ 10 s.

The m-file:

clc; clear;clf

f0=12; wn=10; w=12;

t=0:.1:10;

x=2*f0/(wn^3-w^3)*sin((wn-w)*t/2).*...

sin((wn+w)*t/2)

plot(t,x)

title('Helicopter Body Vibrations')

xlabel('Time, s')

ylabel('Displacement, m')

Faculty of Engineering Spring 2017 Mechanical Engineering Department

Dr./ Ahmed Nagib Elmekawy 10 of 21 Matlab Sheet 3 – Solution

Figure

0 1 2 3 4 5 6 7 8 9 10-0.04

-0.03

-0.02

-0.01

0

0.01

0.02

0.03

0.04Helicopter Body Vibrations

Time, s

Dis

pla

cem

ent,

m

Faculty of Engineering Spring 2017 Mechanical Engineering Department

Dr./ Ahmed Nagib Elmekawy 11 of 21 Matlab Sheet 3 – Solution

9. A railroad bumper is designed to slow down a rapidly moving railroad car. After

a 20,000 kg railroad car traveling at 20 m/s engages the bumper, its

displacement x (in meters) and velocity v (in m/s) as a function of time t (in

seconds) is given by:

Plot the displacement and the velocity as a function of time for 0 ≀ t ≀ 4 s. Make

two plots on one page.

The m-file:

t=0:.01:4;

x=4.219*(exp(-1.58*t)-exp(-6.32*t));

v=26.67*exp(-6.32*t)-6.67*exp(-1.58*t);

subplot(2,1,1)

plot(t,x)

title('Railroad Bumper Response')

ylabel('Position, m')

subplot(2,1,2)

plot(t,v)

ylabel('Speed, m/s')

xlabel('Time, s')

Faculty of Engineering Spring 2017 Mechanical Engineering Department

Dr./ Ahmed Nagib Elmekawy 12 of 21 Matlab Sheet 3 – Solution

Figure

0 0.5 1 1.5 2 2.5 3 3.5 40

0.5

1

1.5

2Railroad Bumper Response

Positio

n,

m

0 0.5 1 1.5 2 2.5 3 3.5 4-5

0

5

10

15

20

Speed,

m/s

Time, s

Faculty of Engineering Spring 2017 Mechanical Engineering Department

Dr./ Ahmed Nagib Elmekawy 13 of 21 Matlab Sheet 3 – Solution

10. The curvilinear motion of a particle is defined by the following parametric

equations:

π‘₯ = 52𝑑 βˆ’ 9𝑑2 m and 𝑦 = 125𝑑 βˆ’ 5𝑑2m

The velocity of the particle is given by

𝑣 = βˆšπ‘£π‘₯2 + 𝑣𝑦

2

, where 𝑣π‘₯ =𝑑π‘₯

𝑑𝑑 and 𝑣𝑦 =

𝑑𝑦

𝑑𝑑 .

For 0 ≀ t ≀ 5 s make one plot that shows the position of the particle (y versus

x), and a second plot (on the same page) of the velocity of the particle as a

function of time. In addition, by using MATLAB’s min function, determine the

time at which the velocity is the lowest, and the corresponding position of the

particle. Using an asterisk marker, show the position of the particle in the first

plot. For time use a vector with spacing of 0.1 s.

The m-file:

t=0:.1:5;

x=52*t-9*t.^2; y=125-5*t.^2;

vx=52-18*t; vy=-10*t;

v=sqrt(vx.^2+vy.^2);

[vmin indx]=min(v);

tmin=t(indx);

subplot(2,1,1)

plot(x,y,x(indx),y(indx),'*')

title('Particle Dynamics')

xlabel('x(m)')

Faculty of Engineering Spring 2017 Mechanical Engineering Department

Dr./ Ahmed Nagib Elmekawy 14 of 21 Matlab Sheet 3 – Solution

ylabel('y(m)')

text(40,80,['time of min speed = ',...

num2str(tmin,'%.1f'),' s'])

subplot(2,1,2)

plot(t,v)

xlabel('time(s)')

ylabel('speed(m/s)')

Figure

0 10 20 30 40 50 60 70 800

50

100

150Particle Dynamics

x(m)

y(m

)

time of min speed = 2.2 s

0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 520

40

60

80

time(s)

speed(m

/s)

Faculty of Engineering Spring 2017 Mechanical Engineering Department

Dr./ Ahmed Nagib Elmekawy 15 of 21 Matlab Sheet 3 – Solution

11. The demand for water during a fire is often the most important factor in the

design of distribution storage tanks and pumps. For communities with

populations less than 200,000, the demand Q (in gallons/min) can be calculated

by:

where P is the population in thousands. Plot the water demand Q as a function

of the population P (in thousands) for 0 ≀ P ≀ 200. Label the axes and provide a

title for the plot.

The m-file:

P=0:200;

Q=1020*sqrt(P).*(1-0.01*sqrt(P));

plot(P,Q)

title('Small Community Fire Fighting Water Needs')

xlabel('Population, Thousands')

ylabel('Water Demand, gal/min')

ylabel('speed(m/s)')

Figure

0 20 40 60 80 100 120 140 160 180 2000

2000

4000

6000

8000

10000

12000

14000Small Community Fire Fighting Water Needs

Population, Thousands

speed(m

/s)

Faculty of Engineering Spring 2017 Mechanical Engineering Department

Dr./ Ahmed Nagib Elmekawy 16 of 21 Matlab Sheet 3 – Solution

12. A In a typical tension test a dog bone shaped specimen is pulled in a machine.

During the test, the force F needed to pull the specimen and the length L of a

gauge section are measured. This data is used for plotting a stress-strain

diagram of the material. Two definitions, engineering and true, exist for stress

and strain. The engineering stress and strain are defined by

πœŽπ‘’ =𝐹

𝐴0 and πœ€π‘’ =

πΏβˆ’πΏπ‘œ

πΏπ‘œ where πΏπ‘œ and π΄π‘œ are the initial gauge length and the

initial cross-sectional area of the specimen, respectively. The true stress πœŽπ‘‘ and

strain πœ€π‘‘ are defined by πœŽπ‘‘ =𝐹

𝐴0

𝐿

πΏπ‘œ and πœ€π‘‘ = ln

𝐿

πΏπ‘œ .

The following are measurements of force and gauge length from a tension test

with an aluminum specimen. The specimen has a round cross section with

radius 6.4 mm (before the test). The initial gauge length is πΏπ‘œ=25 mm. Use the

data to calculate and generate the engineering and true stress-strain curves,

both on the same plot. Label the axes and use a legend to identify the curves.

Units: When the force is measured in newtons (N) and the area is calculated in

m2, the unit of the stress is pascals (Pa).

The m-file:

L0=.0254; r0=.0064; A0=pi*r0^2;

F=[0 13031 21485 31963 34727 37119 37960 39550 ...

40758 40986 41076 41255 41481 41564];

L=[25.4 25.474 25.515 25.575 25.615 25.693 25.752 25.978

...

26.419 26.502 26.600 26.728 27.130 27.441]/1000;

sigmae=F/A0; ee=(L-L0)/L0;

sigmat=F.*L/(A0*L0); et=log(L/L0);

Faculty of Engineering Spring 2017 Mechanical Engineering Department

Dr./ Ahmed Nagib Elmekawy 17 of 21 Matlab Sheet 3 – Solution

plot(ee,sigmae,et,sigmat,'--')

title('Stress-Strain Definitions')

legend('Engineering','True','location','SouthEast')

xlabel('Strain')

ylabel('Stress, Pa')

Figure

0 0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.090

0.5

1

1.5

2

2.5

3

3.5x 10

8 Stress-Strain Definitions

Strain

Str

ess,

Pa

Engineering

True

Faculty of Engineering Spring 2017 Mechanical Engineering Department

Dr./ Ahmed Nagib Elmekawy 18 of 21 Matlab Sheet 3 – Solution

13. The shape of a symmetrical four-digit NACA airfoil is described by the equation

where c is the cord length and t is the maximum thickness as a fraction of the

cord length ( tc= maximum thickness). Symmetrical four-digit NACA airfoils

are designated NACA 00XX, where XX is 100t (i.e., NACA 0012 has t=0.12 ). Plot

the shape of a NACA 0020 airfoil with a cord length of 1.5 m.

The m-file:

t=0.2; c=1.5; xc=0:.01:1;

y1=t*c/0.2*(0.2969*sqrt(xc)-0.1260*xc...

-0.3516*xc.^2+0.2843*xc.^3-0.1015*xc.^4);

y2=-y1;

plot(xc*c,y1,xc*c,y2)

axis equal

title('NACA 0020 Airfoil')

xlabel('Width, m')

ylabel('Height, m')

Figure

0 0.5 1 1.5

-0.5

-0.4

-0.3

-0.2

-0.1

0

0.1

0.2

0.3

0.4

0.5

NACA 0020 Airfoil

Width, m

Heig

ht,

m

Faculty of Engineering Spring 2017 Mechanical Engineering Department

Dr./ Ahmed Nagib Elmekawy 19 of 21 Matlab Sheet 3 – Solution

14. The position as a function of time of a squirrel running on a grass field is given

in polar coordinates by:

Plot the trajectory (position) of the squirrel for

0 ≀ t ≀ 20 s.

The m-file:

clc; clear;clf

t=0:.1:20;

r=25+30*(1-exp(sin(0.07*t)));

theta=2*pi*(1-exp(-0.2*t));

polar(theta,r)

title('Squirrel Trajectory (m)')

Figure

10

20

30

30

210

60

240

90

270

120

300

150

330

180 0

Squirrel Trajectory (m)

Faculty of Engineering Spring 2017 Mechanical Engineering Department

Dr./ Ahmed Nagib Elmekawy 20 of 21 Matlab Sheet 3 – Solution

15. Obtain the surface and contour plots for the function

𝑧 = π‘₯2 βˆ’ 2π‘₯𝑦 + 4𝑦2

showing the minimum at π‘₯ = 𝑦 =0.

The m-file:

[X,Y] = meshgrid(-4:0.4:4);

Z = X.^2-2*X.*Y+4*Y.^2;

subplot(2,1,1)

mesh(X,Y,Z)

xlabel('x'),ylabel('y')

zlabel('z'),grid

subplot(2,1,2)

contour(X,Y,Z),xlabel('x'), ylabel('y')

Figure

-4-2

0 24

-4-2

02

40

100

200

xy

z

x

y

-4 -3 -2 -1 0 1 2 3 4-4

-2

0

2

4

Faculty of Engineering Spring 2017 Mechanical Engineering Department

Dr./ Ahmed Nagib Elmekawy 21 of 21 Matlab Sheet 3 – Solution

16. A square metal plate is heated to 80Β°C at the corner corresponding to π‘₯ = 𝑦 =1.

The temperature distribution in the plate is described by

𝑇 = 80 π‘’βˆ’(π‘₯βˆ’1)2 π‘’βˆ’3(π‘¦βˆ’1)2

Obtain the surface and contour plots for the temperature. Label each axis.

What is the temperature at the corner corresponding to π‘₯ = 𝑦 =0?

The m-file:

[X,Y] = meshgrid(0:0.1:1);

T = 80*exp(-(X-1).^2).*exp(-3*(Y-1).^2);

subplot(2,1,1)

mesh(X,Y,T)

xlabel('x'),ylabel('y')

zlabel('T'),grid

subplot(2,1,2)

contour(X,Y,T)

xlabel('x'), ylabel('y')

T(1,1)

In Command Window:

ans =

1.4653

Figure

0 0.2 0.4 0.6 0.8 1

0

0.5

10

50

100

xy

T

x

y

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.2

0.4

0.6

0.8

1

top related