Challenge

Week 3 - Solving second order ODEs

AIM

TO EXECUTE THE SECOND ORDER ORDINARY DIFFERENTIAL EQUATION BY USING MAT LAB

OBJECTIVES

* USING THE BOB MASS , STRING LENGTH AND INITIAL VELOCITY TAKEN AS INPUT VARIABLES

* USING THE SECOND ORDER DIFFERENTIAL EQUATION AND DERIVED INTO FIRST ORDER EQUATIONS.

* BY CONVERTING INTO FIRST ORDER ODE ,CALCULATIONS AND PLOTTING TO BE DONE.

*A SIMPLE PENDULUM CAN BE DESCRIBED AS A DEVICE WHERE ITS POINT MASS IS ATTACHED TO A LIGHT INEXTENSIBLE STRING AND SUSPENDED FROM A FIXED SUPPORT.

*THE VERTICAL LINE PASSING THROUGH THE FIXED SUPPORT IS THE MEAN POSITION OF A SIMPLE PENDULUM.

*THE VERTICAL DISTANCE BETWEEN THE POINT OF SUSPENSION AND THE CENTRE OF MASS OF THE SUSPENDED BODY (WHEN IT IS IN MEAN POSITION) IS CALLED THE LENGTH OF THE SIMPLE PENDULUM DENOTED BY L.

*THIS FORM OF THE PENDULUM IS BASED ON THE RESONANT SYSTEM HAVING A SINGLE RESONANT FREQUENCY.

ORDINARY DIFFERENTIAL EQUATION (ODE)

* ACCORDING TO THE NEWTON’S SECOND LAW OF MOTION, FORCE IS DIRECTLY PROPOTIONAL TO THE MASS AND VELOCTIY. FROM THIS LAW CONVERT INTO THE DIFFERENTIAL EQUATIONS WHICH KNOWN AS SECOND ORDER ODE.

* AN ORDINARY DIFFERENTIAL EQUATIONS CONTAINS ONE REAL OR COMPLEX VARIABLE. THE UNKNOWN FUNCTION WHICH CAN BE REPRESENTED BY THE VARIABLE.

`dy/dx=F(x)`

`(d^2 y)/(dx^2 )=F(y)`

SECOND ORDER DIFFERENTIAL EQUATION FOR SIMPLE PENDULUM

THE SECOND ORDER ODE FOR SIMPLE PENDULUM WILL BE AS FOLLOWS,

`(d^2 θ)/(dt^2 )+b/m.dθ/dt+g/l.sinθ=0`

Where, b = damping coefficient

M = mass of the bob kg

g = gravity

l = length of the string m.

`θ= θ1`

`( (dθ)/dt)=((dθ1)/dt)=θ_2`

`(d^2 θ)/(dt^2 )= (d^2 θ1)/(dt^2 )= d/dt ( (dθ1)/dt)=d(θ1)`

`(d^2 θ)/(dt^2 )+b/m.(dθ)/dt+g/l.sinθ=0`

`((d^2 θ)/(dt^2 )+b/m.(dθ1)/dt)+g/l.sinθ1=0`

`(dθ2)/dt+b/m.θ2+g/l.sinθ1=0`

`(dθ1)/dt=θ_2`

`(dθ2)/dt=-b/m.θ2+g/l.sinθ`

`d/dt (θ_1¦θ_2 )=[θ_2¦(-b/m.θ2+g/l.sinθ)]`

BY USING THIS ABOVE CONVERTED SINGLE ORDER ODE, REPRESENT THE PROGRAMMING CODES.

SYNTAX:

clear all
close all
clc
% INPUTS
b = 0.05; % DAMPING COEFFICIENT
g= 9.81; % ACCLERATION DUE TO GRAVITY
m= 1; % MASS OF THE BOB
l = 1; % LENGTH OF THE STRING


dis_velo = [0;3]; % DISPLACEMENT & ANGULAR VELOCITY

t_span = linspace( 0,20,200); %TIME WHICH REPRESENTS 0 TO 20 HAS 200 VALUES

% ODE FUNCTION
[t,results] = ode45(@(t,theta) ode_function(t,theta,b,g,l,m), t_span, dis_velo);

%PLOTTING
figure (1)

plot (t,results(:,1)); %(:,1) REPRESENTS DISPLACEMENT VALUES
hold on
plot (t,results(:,2)); %(:,2) REPRESENTS ANGULAR VELOCITY VALUES
xlabel('time')
ylabel(' velocity&displacement')
hold off

figure(2)
plot (results(:,1), results(:,2)) %PLOTTING THE DISPLACEMENT AND ANGULAR VELOCITY
xlabel('position');
ylabel('angular_velocity');

% ANIMATION PROGRAM
theta2 = results(:,1);
ct = 1;
for i=1:length(theta2) %FOR LOOP USED HERE
x0 = 0;
y0 = 0;

x1 = l*sin(theta2(i));
y1 = -l* cos(theta2(i));

%PLOTTING
plot ([-1.5 1.5],[0 0],'linewidth',3,'color','b');
hold on
plot ([x0 x1], [y0 y1],'linewidth',5);
hold on
plot (x1, y1, 'o', 'markers',20,'markerfacecolor','g')
hold off
grid on
axis([-1.5 1.5 -1.5 0.5])
title('ANIMATION OF SIMPLE PENDULUM')
grid on
M(ct) = getframe(gcf); %GETTING THE MOVIE FRAME
ct = ct + 1;
end
movie(M)
videofile = VideoWriter('pendulum.avi','uncompressed avi'); %CONVERSION OF AVI FILE
open(videofile)
writeVideo(videofile,M)
close(videofile)

ERRORS FACED WHILE PROGRAMMING

movie(M)
videofile = videoWriter('pendulum.avi','uncompressed avi');

IN THIS ABOVE MENTIONED, 'videoWriter' TYPED INSTEAD OF 'VideoWriter' AND GOT THE ERROR.

VIDEO LINK

YOU TUBE :https://youtu.be/Fy_raPusMSY

CONCLUSION

USING THE ODE EQUATION AND MATLAB FUNCTION CREATED THE ANIMATION SIMPLE PENDULUM. FOR HIGHEST ORDER ODE'S FOLLOWS THE PROCEDURE SAME AS FOLLOWS. HERE, COCNCLUDING THAT PLOTTED THE DISPALACEMENT AND ANGULAR VELOCTIY WITH RESPECT TO TIME AND ANIMATED THE MOTION OF SIMPLE PENDULUM.

Your portfolio, next

Ship work like this
in your own course.

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.