Solving the nonlinear pendulum equation y"=-(g/L)sin(y)

  • Context: Graduate 
  • Thread starter Thread starter mattm
  • Start date Start date
  • Tags Tags
    Integration Nonlinear
Join the discussion
Registration is free. Ask a follow-up in this thread, or start your own.
3 replies · 4K views
mattm
Messages
2
Reaction score
0
Hello

I study animation, and I wanted to make a script where I can automate pendulums in my scene with some kind of realistic physics, rather than animate them manually.

So 'right' I think, 'I need to go study some physics and maths' - but it wasnt as easy as I hoped, I've hit a wall, and it is the nonlinear integration of the second order D.E:

y" = -(g/L)sin(y)

So from my limited understanding, this equation is non-linear due to the absence of y', and because y is a function of sin.

Its seems the only hints I've been able to get is that integrating it is not a particually easy thing to do, with references only giving me parameters to enter into mathematics software for computation.The problem is, I essentially need to write my own software(script), and without understanding what is going on, I cant.

If I could get some better idea of what is involved, then I can decide if its going to be worth my while spending more time trying to do this now, or if I need a diploma in advanced mathematics first :)

thanks
 
Physics news on Phys.org
Non linear problems are best dealt with numerically. If you must solve the nonlinear equation look into a Runga Kutta method. If you keep the oscillations of your pendulum small (< .2 rad or ~10deg) you can use the usual approach and let sin [itex]\Theta[/itex] = [itex]\Theta[/itex] then the problem is linear and easily solved.
 
Thankyou Integral, I will look into the Runga-Kutta method.

I would like to be able to calculate large angle pendulums, upto 180 degrees, so unfortunately(for me) I cannot linearise the equation.
 
You should, however, integrate once:
Multiply your equation with y':
[tex]y''y'=-\frac{g}{L}\sin(y)y'[/tex]
Integrated from t=0 to some arbitrary t-value, you get:
[tex]\frac{y'(t)^{2}}{2}=\frac{g}{L}(\cos(y(t))-cos(y(0))+\frac{y'(0)^{2}}{2}[/tex]
Or:
[tex]y'(t)=\pm\sqrt{y'(0)^{2}+2\frac{g}{L}(\cos(y(t))-cos(y(0))[/tex]
 
Last edited: