Trying to solve and plot the non-linear pendulum equation
5 次查看(过去 30 天)
显示 更早的评论
Hi! I have the d^2/dt^2 + g/L(sinθ)=0 2nd order D.E. (Simple Pendulum) which I have seperated to two 1st order D.E.
y(1) = dθ/dt = ω = u_θ , y(2) = dω/dt = -b^2*sinθ (where b = sqrt(g/L))
I want to use ode45 to solve these equations.
I tried following the link: https://www.mathworks.com/help/matlab/ref/ode45.html but I got errors on my code.
m-file
function dydt = spendn(t,y)
dydt = [u; -sinu];
In command window:
[t,y] = ode45(@spendn,[0 7],[0; 1.57]);
I am doing something wrong here, pls help.
1 个评论
回答(1 个)
Star Strider
2017-11-16
Try this:
dydt = [u; -sin(u)];
4 个评论
Star Strider
2017-11-17
Use this:
function dudt = spendn(t,u)
dydt = [u(2); -sin(u(1))];
end
or this:
spendn = @(t,u) [u(2); -sin(u(1))];
Either of these will work.
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!