Chronology Current Month Current Thread Current Date
[Year List] [Month List (current year)] [Date Index] [Thread Index] [Thread Prev] [Thread Next] [Date Prev] [Date Next]

Re: [Phys-l] solving an energy equation



Carl Mungan wrote:
I am working on a problem involving a particle sliding frictionlessly on a particular shape of surface. An analysis using Newton's second law is very messy because it is complicated to write down the normal force. A Lagrangian analysis is straightforward and gives me a second-order D.E. I can solve numerically. But suppose I wanted to tackle this problem with students who haven't had Lagrange's equation yet.

Well, I can use energy conservation. BUT... I now have a first-order differential equation for the SQUARE of the speed. I can't see any way to tell Maple (or whatever your favorite mathematical software package may be) how to choose the correct sign for the square root in each segment of the motion.

There is a profound physics lesson here. The energy (aka the Hamiltonian)
is fundamentally less informative than the Lagrangian.

If you tell me the Lagrangian (and tell me your choice of coordinate)
I can tell you the Hamiltonian ... but the converse does *not* hold:
if you give me the Hamiltonian (and the coordinate) I cannot in general
tell you the Lagrangian; you would need to tell me what momentum-variable
is conjugate to your position-variable.

"The Lagrangian knows all and tells all."

Physically I imagine I step the solution forward until I reach a turning point and then I reverse the sign of velocity. But surely there must be some way to instruct Maple to do this.

If I were timestepping the equations of motion, I would keep track
of two variables:
-- the position, and
-- the momentum.

Given (x,p) at a given time, I can use the equation of motion to calculate
(x,p) at a slightly later time ... and then iterate. I need to keep two
variables. This can be explained by the fact that the equation of motion is
a *second*-order differential equation. Each step in the time-stepping process
is an initial-value problem, requiring two "initial" values.