Skip to main content

The Calculus of Variations and Hamilton's Principle from the Top Down

This installment of “It’s Obvious. Not!” looks at:

Book: “Classical Dynamics of Particles and Systems”

Edition: third

Authors: Jerry B. Marion and Stephen T. Thornton

Publisher: Harcourt Brace Jovanovich

Page: 172-177

Chapter Five in the third edition is titled "The Calculus of Variations" The book does a great job of giving a very detailed bottom-up derivation of Euler's equation and a second form of Euler's equation. I had a much easier time with the material once I figured out that Euler's equation was actually the goal of the derivation and how Euler's equation is used. Since the top-down view made things simple for me, I decided to post it here for other top-down thinkers.

Chapter five is simply building a set of tools to be used in chapter six with regard to Hamilton's Principle and Lagrangian mechanics. So, maybe the first question should be, 'Why are Hamilton's Principle and Langrangian mechanics important?'

Newtonian Mechanics essentially says that given information about all the forces acting on a system, the equations of motion can be derived for that system. It doesn't, however, say that the derivation will be easy. Especially in systems where there are forces due to constraints, (a particle moving on the surface of a sphere for example), the derivation can be quite complex.

Very broadly stated, Hamilton's Principle says that given two states of a physical system, nature will choose the allowable path between the two states that minimizes the time integral of the difference between the potential and kinetic energies of the two states. As it turns out, this alternate view of mechanics makes solving for the equations of motion of constrained systems much simpler in some cases. But this alternative view leads to finding equations, y(x), that minimize integrals that look like:

where f depends on x, y as a function of x and y prime, the first derivative of y with respect to x.

The book launches into a rather detailed and abstract derivation regarding varying y(x) to find a maximum or minimum value for the above integral. It's easy to get caught up in the derivation and wander off into the weeds, and I did. But, the derivation is headed somewhere. It turns out that if you have a y(x) that will produce a max or min of the integral, then it obeys Euler's equation:

And that's the real crux of the matter! If you wind up with an integral in the form of
rather than actually solving the integral equation, you can plug f into Euler's equation and solve the resulting differential equation to find the y(x) that produces a minimum.

The book presents a concrete example where the minimum of the integral:

is found by substituting f:
into Euler's equation. I'll cover that example in more detail in my next post. But, for now I just wanted to reveal the point of the rather lengthy initial derivation from the book. Euler's equation makes solving integral equations of the form shown above simpler!


Popular posts from this blog

Cool Math Tricks: Deriving the Divergence, (Del or Nabla) into New (Cylindrical) Coordinate Systems

The following is a pretty lengthy procedure, but converting the divergence, (nabla, del) operator between coordinate systems comes up pretty often. While there are tables for converting between common coordinate systems, there seem to be fewer explanations of the procedure for deriving the conversion, so here goes!

What do we actually want?

To convert the Cartesian nabla

to the nabla for another coordinate system, say… cylindrical coordinates.

What we’ll need:

1. The Cartesian Nabla:

2. A set of equations relating the Cartesian coordinates to cylindrical coordinates:

3. A set of equations relating the Cartesian basis vectors to the basis vectors of the new coordinate system:

How to do it:

Use the chain rule for differentiation to convert the derivatives with respect to the Cartesian variables to derivatives with respect to the cylindrical variables.

The chain rule can be used to convert a differential operator in terms of one variable into a series of differential operators in terms of othe…

The Valentine's Day Magnetic Monopole

There's an assymetry to the form of the two Maxwell's equations shown in picture 1.  While the divergence of the electric field is proportional to the electric charge density at a given point, the divergence of the magnetic field is equal to zero.  This is typically explained in the following way.  While we know that electrons, the fundamental electric charge carriers exist, evidence seems to indicate that magnetic monopoles, the particles that would carry magnetic 'charge', either don't exist, or, the energies required to create them are so high that they are exceedingly rare.  That doesn't stop us from looking for them though!

Keeping with the theme of Fairbank[1] and his academic progeny over the semester break, today's post is about the discovery of a magnetic monopole candidate event by one of the Fairbank's graduate students, Blas Cabrera[2].  Cabrera was utilizing a loop type of magnetic monopole detector.  Its operation is in concept very simpl…

The Javascript Google URL Shortener Client API

I was working with the Google API Javascript Client this week to shorten the URLs of Google static maps generated by my ham radio QSL mapper. The client interface provided by Google is very useful. It took me a while to work through some of the less clear documentation, so I thought I'd add a few notes that would have helped me here. First, you only need to authenticate your application to the url shortener application if you want to track statistics on your shortened urls. If you just want the shortened URL, you don't need to worry about this. The worst part for me was that the smaple code only showed how to get a long url from an already shortened rul. If you follow the doucmentaiotn on the insert method, (the method for getting a shortened url from a long one), there is a reference to a rather nebulous Url resource required argument. It's not at all clear how to create one of these in Javascript. The following example code shows how:
var request = gapi.clie…