Week 3 - Solving second order ODEs
b=0.05;
g=9.81;
l=1;
m=0.1;
%inital conditions
theta_0 =[0;5];
%time points
t_span = linspace(0,10,500);
%solve ode
[t,results]=ode45(@(t,theta)ode_function(t,theta,b,g,l,m),t_span;theta-0);
function [dtheta_dt] = ode_func_2(t,theta,b,g,l,m)
theta 1 = theta(1);
theta 2 = theta(2);
dtheta1_dt=theta2;
dtheta2_dt = -(b/m)*theta2 - (g/l)*sin(theta1);
dtheta_dt = [dtheta1_dt;dtheta2_dt];
end
plot(t,result(:,1))
hold on
plot(t,result(:,2))
xlabel('plot')
ylabel('time')