holonomic versus nonholonomic constraints

42
Karlstads universitet 651 88 Karlstad Tfn 054-700 10 00 Fax 054-700 14 60 [email protected] www.kau.se Faculty of Technology and Science Mattias Flygare Holonomic versus nonholonomic constraints Physics C-level thesis Date: 2012-05-30 Supervisor: Jürgen Fuchs Examiner: Claes Uggla

Upload: truongquynh

Post on 04-Jan-2017

252 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Holonomic versus nonholonomic constraints

Karlstads universitet 651 88 Karlstad

Tfn 054-700 10 00 Fax 054-700 14 60

[email protected] www.kau.se

Faculty of Technology and Science

Mattias Flygare

Holonomic versus nonholonomicconstraints

     

PhysicsC-level thesis

Date: 2012-05-30

Supervisor: Jürgen Fuchs

Examiner: Claes Uggla

Page 2: Holonomic versus nonholonomic constraints

Abstract

Courses in analytical mechanics for undergraduate students are often limited

to treatment of holonomic constraints, which are constraints on coordinates. The

concept of nonholonomic constraints, constraints on velocities, is usually only men-

tioned brie�y and it is easy to get a wrongful idea of what they are and how to treat

them. This text explains and compares the methods of deriving the Euler-Lagrange

equations and the consequences when imposing di�erent kinds of constraints. One

way to properly treat both holonomic and nonholonomic constraints is given, pin-

pointing the di�culties and common errors. Along the way, the treatment in local

coordinates is also put in more modern terms, in the language of di�erential geom-

etry, which is the language most commonly used in modern texts on the subject.

2

Page 3: Holonomic versus nonholonomic constraints

Acknowledgements

My biggest thanks to my supervisor Jürgen Fuchs, always interested and always

interesting! I would also like to thank Jonatan Andersson for our long discussions

and all your helpful comments. Thanks also to David, So�e, Jessica and Joakim

for your willingness to listen and help. Last but not least, thank you to my wife

Anna-Lena and my two sons Sixten and Alexander!

3

Page 4: Holonomic versus nonholonomic constraints

Contents

1 Introduction 5

2 Mathematical tools 9

2.1 Linear and a�ne functions . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2.2 Projection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2.3 Manifolds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2.4 Tangent vectors, spaces . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

2.5 Fibre bundles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

2.6 Di�erential k-forms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.7 Wedge product between di�erential forms . . . . . . . . . . . . . . . . . 13

2.8 Exterior derivative . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.9 Jacobi-Lie bracket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.10 Ehresmann connection . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

3 D'Alembert's principle 15

4 Constraints 17

4.1 Holonomic constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

4.2 Nonholonomic constraints . . . . . . . . . . . . . . . . . . . . . . . . . . 18

5 Structure of the equations of motion 22

5.1 Imposing the constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

5.2 Obtaining the equations of motion . . . . . . . . . . . . . . . . . . . . . 22

5.3 Constrained Lagrangian . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

5.4 Interpretation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

5.5 Conservation laws . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

5.6 An Ehresmann connection . . . . . . . . . . . . . . . . . . . . . . . . . . 26

5.7 Curvature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

6 An example: The falling disc 32

6.1 Writing the Lagrangian . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

6.2 Change of coordinates . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

6.3 Nonholonomic constraints . . . . . . . . . . . . . . . . . . . . . . . . . . 34

6.4 Equations of motion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

6.5 Interpretation and stable solutions . . . . . . . . . . . . . . . . . . . . . 37

7 Results and conclusion 39

4

Page 5: Holonomic versus nonholonomic constraints

1 Introduction

In the late 17th century, the German mathematician Gottfried Leibniz introduced the

concept of vis viva, the living force, to be the mass times the square of the velocity, mv2.

This is today referred to as kinetic energy (di�ering only by the unimportant factor

2)[11]. He also replaced Isaac Newton's concept of force with the work of the force, later

replaced by an even more basic quantity, the work function. This marks the starting

point of a new branch of mechanics, often called analytical mechanics, where the vector

quantities of force and momentum are no longer important, but instead these two scalar

quantities, the kinetic energy T and the work function U completely describe the motion

of the system.

Through the work of Leonard Euler, Joseph-Louis Lagrange and others in the second

half of the 18th century, a new formalism was developed, called Lagrangian mechanics.

Euler and Lagrange were the �rst to discover and formulate the principle of least action,

stating that given a start point and an end point, assuming the energy of the system is

conserved, a time-integral of the kinetic energy over any possible path between the start

and end points has a stationary value, and that nature �will choose� the path with the

smallest of these values. Thus, to �nd the actual motion of the system one only needed

to �nd the minimum value for this integral. This was achieved by using calculus of

variations, a �eld of mathematics that deals with maximizing or minimizing functionals,

analogous to �nding extremal points of functions in ordinary calculus.

In 1834 and 1835, William Rowan Hamilton published two papers titled On a General

Method in Dynamics where he was able to generalize the principle of least action to

include nonconservative systems. The integrand in the action integral was no longer the

kinetic energy alone, but the di�erence between kinetic energy T and potential energy V ,

the most fundamental quantity in Lagrangian mechanics, later named the Lagrangian,

L = T − V. (1.1)

This variational principle was named Hamilton's principle. Numerous other formulations

of the principle of least work were also developed (by Lagrange, Euler, Jacobi) but they

are all similar and all originate from the principle of least action. These principles

all lead to the equations of motion in the Lagrangian formalism, the Euler-Lagrange

equationsd

dt

∂L

∂qj− ∂L

∂qj= 0, (1.2)

for any generalized coordinate qj where j = 1, ..., n and n is the total number of coordi-

nates.

There is however another way to arrive at these equations, and that is d'Alembert's

principle, sometimes called the Lagrange-d'Alembert principle, introduced 1743 in Traité

de Dynamique by Jean-Baptiste le Rond d'Alembert. This principle does not rely on the

least action principle at all, but instead starts with Newton's second law and applies the

principle of virtual work, stating that a system is in equilibrium if and only if the total

virtual work (the work done by a force along a spacial displacement when time is kept

�xed) of all applied forces vanish. The principle thus assumes that all the work done by

5

Page 6: Holonomic versus nonholonomic constraints

constraint forces cancel. The new addition by d'Alembert (startlingly simple and still

very important) to this principle was to take the right hand side of Newton's second

law, the mass times the acceleration, and move it to the left hand side and treat it as

if it were a force, called the force of inertia. In this way, the principle of virtual work

could be extended to include systems with non-trivial dynamics and not only statical

systems.

The d'Alembert principle also leads to the Euler-Lagrange equations and it is actually

the most general principle of them all, and indeed it can quite easily be mathematically

reformulated as Hamilton's principle. Hamilton's principle (and the same goes for all

the mentioned least action principles) is thus equivalent to d'Alembert's principle in all

applications where both can be applied [11]. The latter half of the previous statement is

very important but sometimes forgotten. To get a quick appreciation of how the two

principles di�er we �rst need to collect some more information.

As previously mentioned, in analytical mechanics, the quantities of importance are

the kinetic energy and the work function. The forces that gives rise to a virtual work

are commonly classi�ed as conservative or nonconservative, or sometimes as potential

or nonpotential. A more general classi�cation and a terminology used in [11], divides

the forces into two categories:

1. Monogenic. Forces that are derivable from a scalar function U called the work

function, of the coordinates, the coordinate velocities and time explicitly.

2. Polygenic. Forces that are not monogenic, but when it is still relevant to talk

about the virtual work done by the force (such as frictional forces).

Conservative forces are now the special case when U does not depend on time explicitly.

Potential forces are then the special case of conservative forces but when the work

function neither depends on time explicitly, nor the coordinate velocities. The negative

of such a work function is what we normally call a scalar potential.

Hamilton's variational principle actually has many advantages over d'Alembert's

principle, in areas such as optimal control and when dealing with systems of curvilinear

coordinates, although it turns out that Hamilton's principle is invalid when dealing

with polygenic forces while d'Alembert's still works. To see what this means, let us also

classify forces of constraint into two categories:

1. Holonomic constraints. Integrable constraints, meaning that given some con-

straints depending on time-derivatives of coordinates, these constraints can be

integrated as to express the constraints in only the coordinates themselves, a ter-

minology �rst introduced by Heinrich Hertz in 1894.

2. Nonholonomic constraints. Constraints that are not holonomic. These might

be constraints that are expressed in terms of coordinate velocities that are not

derivable from coordinate constraints (thereby unintegrable) or constraints not

given as an equation at all.

There is also a connection between the two above classi�cations; Holonomic con-

straints give rise to monogenic forces and nonholonomic constraints give rise to polygenic

6

Page 7: Holonomic versus nonholonomic constraints

forces[11]. From this we can immediately deduce the important fact that Hamilton's

principle is applicable only to systems subject to holonomic constraints and that for

treatment of nonholonomic constraints only d'Alembert's principle is applicable.

Probably due to the elegance and wide areas of use of Hamilton's principle on systems

with holonomic constraints there has sometimes arisen some confusion when nonholo-

nomic systems are to be treated. One way to do this properly was �rmly established

already in 1900 in [10] but still today one can �nd books for students in analytical me-

chanics, as pointed out by [1] and [6], where the topic is treated in an uncareful manner,

such as when generality is claimed for results applying only to holonomic constraints,

or the author may simply have misunderstood how the treatment of nonholonomic con-

straints di�ers from holonomic.

Although there still is some confusion remaining, there are numerous publications

where the importance of using the d'Alembert principle is stressed and the main dif-

ferences are pointed out. One of the most active contemporary author within the �eld

is A.M. Bloch (for example in [1], [12], [3] or [2]), but there are also other authors (for

example W.S. Koon and J.E. Marsden in [9] and M.R. Flannery in [6]).

The main purpose of this text is to create a reasonably straight path through the

process of obtaining equations of motion for systems with both holonomic and nonholo-

nomic constraints, starting with the d'Alembert principle, deriving the Euler-Lagrange

equations and then applying constraints, both holonomic and nonholonomic. By do-

ing this in a very straightforward and transparent way (the ambition was to include

almost all equations and calculations) it becomes fairly easy to pinpoint the di�erences

between the two types of constraints, and how they appear explicitly in the equations

when imposing the constraints.

A large part of the more recent literature in the �eld is written, not in terms of local

coordinates, but in terms of di�erential geometry. Since this text is intended for last

year undergraduate level and up, one of the bi-purposes of the text was to open the

door (but never completely walk through it) to describing mechanical systems in the

coordinate free language of geometry.

Finally the formulas developed are put to use on the mechanical system of a rolling

disc (such as a coin) on a horizontal plane, a good example of how rolling constraints

leads to linear nonholonomic constraint equations. The example has (of course) been

treated before in a similar way, but is included to illustrate the process of obtaining

the equations of motion by the process developed in the foregoing sections and it also

demonstrates some of the di�erences between holonomic and nonholonomic systems.

By pure necessity, and sometimes to avoid confusing the reader more than necessary,

there are some restrictions to generality in the text. To begin with we only treat sys-

tems where there are no nonpotential forces acting, which in this context means that

we only consider forces that arise from constraints. We also only treat systems where

the constraints are not depending on time explicitly (so called scleronomic systems, as

opposed to rheonomic, constraints that are depending on time explicitly). The nonholo-

nomic constraints we treat are all linear in the velocities, disregarding both constraints

that also have a term depending only on the coordinates (a�ne constraints) and also

7

Page 8: Holonomic versus nonholonomic constraints

completely nonlinear constraints.

Many of these restrictions can quite easily be lifted so that the results can be extended

in generality. In these cases the reader will be referred to external literature where this is

treated. In other cases, such as not treating completely nonlinear constraints, it is simply

outside the scope of either principle mentioned in this text to treat such constraints.

This text draws heavily from the above mentioned authors and follows closely their

argumentations and derivations, sometimes �lling in missing equations and sometimes

adding comments or conclusions that help tie together all loose ends. While no single

detail in this text is completely new, its main contribution is to gather all these loose

ends and tie them together in a way that cannot be located in the literature and that

hopefully provides the reader with new or refreshed knowledge and understanding of

Lagrangian mechanics.

8

Page 9: Holonomic versus nonholonomic constraints

2 Mathematical tools

In this section, de�nitions and explanations of some of the mathematical tools and

concepts used in this text are given. Some clarifying examples are also included to make

some of the more abstract concepts a bit more concrete. The section can be read straight

through, used as a reference or skipped altogether depending on the reader.

To read more about these mathematical tools and concepts, the reader is referred to

for instance [1] and [15].

2.1 Linear and a�ne functions

De�nition 1. A function f : Rn → Rm is said to be linear if

1. f(X+Y) = f(X) + f(Y), ∀X,Y ∈ Rn,

2. f(aX) = af(X), ∀X ∈ Rn,∀a ∈ R.

De�nition 2. A function g : Rn → Rm is said to be a�ne if there exists a linear

function f : Rn → Rm and a vector b ∈ Rm such that

g(X) = f(X) + b, ∀X ∈ Rn (2.1)

In plainer language, an a�ne transformation is a linear transformation followed by

a translation.

2.2 Projection

De�nition 3. A projection P is a linear transformation

P : Rn → Rn (2.2)

such that if u ∈ Rn and v = P (u) then

P (v) = v. (2.3)

In other words, if P is applied to a vector that is already transformed by P , the

result is the same vector. P is thus said to be idempotent, which is to say that

P 2 = P. (2.4)

2.3 Manifolds

To describe the positional state of a given mechanical system we �nd a minimum number

n of generalized coordinates, not necessarily coordinates in position space but any quan-

tity that describes the position of the system. All possible values of these coordinates

make up a set of points Q. This set may not resemble Euclidean space as a whole, but

locally (on a small enough scale) there exists a homeomorphism from Q to Rn. All theselocal charts to Rn overlap smoothly with each other so that the whole set of points can

be described in terms of these charts. Q is then called a di�erentiable manifold. More

explicitly, the de�nition is:

9

Page 10: Holonomic versus nonholonomic constraints

De�nition 4. A di�erentiable manifold of dimension n is a set Q together with a

�nite or countably in�nite set of subsets Uα ⊂ Q and with one-to-one mappings ϕα :

Uα → Rn such that

1. The union of all Uα is Q,

2. If I = Uα∩Uβ is a nonempty intersection of Uα and Uβ, then there exists a smooth

function ϕαβ : ϕα(I)→ ϕβ(I).

Figure 1: An example of a manifold with mappings to local coordinates

A simple illustration is to see the manifold as the earth and each chart as one of the

pages of an atlas. Although two di�erent pages may be scaled and rotated di�erently,

in the areas where they overlap it is easy to �nd points that correspond to each other.

Trivial cases of manifolds are when Q is Rn itself. An example of a non-trivial

manifold of dimension one is the circle S1. The generalized coordinate is usually the

angle θ which varies from 0 to 2π. This example also illustrates the need for more than

one chart to describe the manifold, since the coordinate values 0 and 2π describe the

same point on the circle.

Another example of a manifold is the two dimensional sphere S2, illustrated by �gure

1, which consists of all the points lying on the surface of a three dimensional ball, which is

a useful manifold to describe a spherical pendulum. Here the two generalized coordinates

would typically be the usual spherical coordinates θ and φ, with θ ranging from 0 to 2π

and φ from 0 to π. Also in this example we have several values of coordinates describing

the same point.

These examples of some possible manifolds are included to provide a better feeling

for what manifolds are.

2.4 Tangent vectors, spaces

Let c(t) and d(t) be smooth curves on the manifold Q that go through a point q ∈ Q so

that

c(0) = d(0) = q. (2.5)

10

Page 11: Holonomic versus nonholonomic constraints

Now assume a map ϕ from an open subset containing q to Rn so that ϕ(c(t)) and ϕ(d(t))

describe curves on the chart corresponding to the curves on the manifold. The curves c

and d are said to be N -tangent at q if

di

dtiϕ(c(t))

∣∣∣∣t=0

=di

dtiϕ(d(t))

∣∣∣∣t=0

, ∀i = 1, ..., N. (2.6)

In this text we only consider N = 1. Nth-order tangency is useful for instance when

considering constraints given in higher order time derivatives of the coordinates. Further

information can be found on the topic in [5, p. 566-570] and [4, p. 2785-2787].

Now we de�ne the tangent vector u to a manifold Q of dimension n at a point q to

be an n-dimensional vector with the components given by

ui =d

dt(ϕ(c(t)))i

∣∣∣∣t=0

, ∀i = 1, ..., n. (2.7)

In short, the tangent vector is the time derivative of the curve once it is mapped to

local coordinates.

If we take the span of all the tangent vectors of all possible curves through a point

q ∈ Q we get the tangent space of Q at the point q, denoted TqQ which is the vector

space Rn.If we now take all points in Q and bundle them together with all the attached tangent

spaces, we get the tangent bundle TQ. The tangent bundle is thus a 2n-dimensional

manifold that is suited to describe a system completely, and for example, since the

Lagrangian L is a function of both position and velocity, it is de�ned on TQ.

The tangent space to a point on a circle is simply the tangent line to the circle through

that point. The tangent bundle would then be the circle itself with lines coming out

of each point. This can be visualized as an in�nite cylinder with the manifold at the

bottom and the cylinder itself being made up by all the tangent spaces.

Figure 2: The tangent lines of a circle are placed over the point of tangency in a non-

intersecting manner. All tangent lines are �nally joined smoothly to make up the cylin-

der.

The tangent space to a point lying on a sphere is a tangent plane. The bundle in

this case has four dimensions so it is hard to visualize.

Mathematically, TQ, Q and the TqQ's form a �bre bundle, with each tangent space

TqQ called a �bre. In section 2.5 we explore this concept further.

11

Page 12: Holonomic versus nonholonomic constraints

2.5 Fibre bundles

A �bre bundle consists of four pieces of data, three topological spaces, such as manifolds,

B, T, F and a continuous surjection

π : T → B, (2.8)

where B is called the base space, T is called the total space and F is called the �bre.

The map π is called the bundle projection of the bundle which locally is a continuous

surjection which projects any element of T to B. For every q ∈ T there exists an open

neighbourhood U ⊂ B of the projection π(q) such that the inverse image π−1(U) is

homeomorphic to the product space U × F . The bundle projection πq at each point

q ∈ Q should also be a submersion, that is to say that the di�erential dπq should be a

surjection for every q ∈ Q. The bundle projection is thus also often called the submersion

of the �bre bundle.

We can think of B as a subspace of T and π as a projection to only the base variables.

Since π is not a bijection there is no inverse, but we can still speak of the �bre, de�ned

for any element r ∈ B as

π−1(r) = {q ∈ T : π(q) = r}, (2.9)

or in words, the set of points in T whose projection through π equals r ∈ B. This set

is called the �bre at r and when π−1(r) is homeomorphic to F for all r ∈ B, the totalspace, the base space, the �bre and the submersion π together form the �bre bundle.

Fibre bundles where the spaces B, T and F are vector spaces are called vector bundles.

A bundle where T = B × F is called a trivial bundle.

To see that the tangent bundle TQ is a �bre bundle, we call TQ the total space and

the con�guration manifold Q the base space and de�ne a submersion

π : TQ→ Q (2.10)

that locally projects each element in TQ onto the corresponding q ∈ Q.An example of a trivial bundle is again the circle S1 with each �bre a copy of the real

line R, so that the total space is simply S1×R. An example of a nontrivial �bre bundle

is the same base space, the circle S1, but instead of having the �bres make up a cylinder

we have them make up a Möbius strip, a sort of twisted cylinder such that going one

revolution around the strip reverses the sign. This �bre bundle locally resembles the

product space S1 × R but di�ers from it when considering what lies above the entire

circle [14]. Both these examples can be seen in �gure 3.

12

Page 13: Holonomic versus nonholonomic constraints

Figure 3: To the left a trivial �bre bundle involving a cylinder and to the right a nontrivial

bundle involving a Möbius strip.

2.6 Di�erential k-forms

A k-form α on a di�erentiable manifold Q is a smooth map from the products space

TQ×· · ·×TQ with k factors of TQ, to R and at any point q ∈ Q de�nes an alternating

multilinear map αq to R,αq : TqQ× · · · × TqQ︸ ︷︷ ︸

k factors

→ R, (2.11)

where αq is linear.

For example, a one-form can locally be expressed as

αq =

n∑i=1

fi(q)dqi (2.12)

for any q ∈ Q and some functions fi, where dqi are the exterior derivatives (section 2.8)

of each coordinate.

A two-form βq is alternating bilinear (or anti-symmetric). This means that

βq(X,Y) = −βq(Y,X), ∀X,Y ∈ TqQ. (2.13)

It can locally be expressed as

βq =

n∑i=1

n∑j=1

gij(q)dqi ∧ dqj (2.14)

for any q ∈ Q and some anti-symmetric matrix of functions gij . The symbol ∧ denotes

the wedge product which will be explained in section 2.7.

2.7 Wedge product between di�erential forms

The wedge product of a k-form α and an l-form β is a (k + l)-form denoted α ∧ β and

has the property

α ∧ β = (−1)klβ ∧ α. (2.15)

In particular, the wedge product α ∧ β between two one-forms α and β is a two-form

whose value at a point q ∈ Q is an alternating bilinear form de�ned by

(α ∧ β)q(X,Y) = α(X)β(Y)− β(Y)α(X). (2.16)

13

Page 14: Holonomic versus nonholonomic constraints

2.8 Exterior derivative

The exterior derivative of a function f(q1, ..., qn) is given in local coordinates by

df =

n∑i=1

∂f

∂qidqi. (2.17)

If a function is considered to be a di�erential zero-form, then for any k-form α, with k

a natural number, the exterior derivative is

d(α ∧ β) = (dα ∧ β) + (−1)k(α ∧ dβ). (2.18)

In local coordinates, the exterior derivative of a one-form expressed as

αq =

n∑i=1

fi(q)dqi, (2.19)

is the sum

dαq =

n∑i=1

n∑j=1

∂fi∂qj

dqj ∧ dqi. (2.20)

Comparing with (2.14) we see that the exterior derivative of a one-form is a two-form.

In the same way, the exterior derivative of a zero-form is a one-form. In general, if k is a

natural number, a (k+1)-form that is the exterior derivative of a k-form is called exact

and a k-form whose exterior derivative is zero is called closed. It can also be shown that

all exact k-forms are also closed.

2.9 Jacobi-Lie bracket

Any vector �eld on a manifold Q can be regarded as a di�erential operator acting on

smooth functions on Q. The Jacobi-Lie bracket is then de�ned as follows;

De�nition 5. The Jacobi-Lie bracket (sometimes called the Lie bracket) [X,Y] of

two vector �elds X and Y acting on a function f is then de�ned by

[X,Y](f) := X(Y(f))−Y(X(f)). (2.21)

In local coordinates, if {q1, q2, ..., qn} are coordinates, and { ∂∂q1 ,

∂∂q2 , ...,

∂∂qn } denotes

the basis for vector �elds, then

[X,Y] :=

n∑i=1

n∑j=1

(Xj ∂Y

i

∂qj− Y j ∂X

i

∂qj

)∂

∂qi. (2.22)

2.10 Ehresmann connection

De�nition 6. An Ehresmann connection A is a vector-valued one-form on Q that

satis�es:

1. A is vertical valued: Aq : TqQ→ Vq is a linear map for each point q ∈ Q.

2. A is a projection: A(u) = u, ∀u ∈ Vq.

Vq is called the vertical space, which is a subspace of TqQ, and it is determined by the

�bre bundle submersion π. If Tqπ is the projection from TqQ to the tangent space of the

base space of a speci�c �bre bundle, then Vq is the kernel of Tqπ.

14

Page 15: Holonomic versus nonholonomic constraints

3 D'Alembert's principle

In this section the equations of motion for a mechanical system with n independent

generalized coordinates will be derived using the d'Alembert principle, similarly to how

it is done in [1].

Starting from Newtons second law and splitting up the forces into applied forces Fiand constraint forces fci according to

Fi + fci = pi, (3.1)

we take the sum of the virtual work (the work done by a force upon a virtual displacement

δri, a displacement only in the coordinate but not in time, all consistent with the forces

and constraints at the time of the displacement)∑i

(Fi − pi) · δri +∑i

fci · δri = 0. (3.2)

Now we make our �rst assumption, which is that the virtual work of all constraint forces

vanishes (the virtual displacements must all satisfy any constraint equations). This is

true for many (but far from all) mechanical systems, such as rigid bodies. By applying

this assumption to (3.2) we arrive at∑i

(Fi − pi) · δri = 0. (3.3)

This is called d'Alembert's principle. Since the δri are, in general, not independent of

each other we switch to the generalized coordinates by the transformation

ri = ri(q1, q2, ..., qn; t) (3.4)

with n independent qj 's. The indices of q are given as an upper index to conform with

mathematical conventions and are not to be confused with powers of q. Introducing T

as the kinetic energy and V as the potential energy we can now de�ne the Lagrangian

L(q, q; t) = T − V, (3.5)

which now leads us to the following equation, equivalent to (3.3);

n∑j=1

[d

dt

(∂L

∂qj

)− ∂L

∂qj− F (NP )

j

]δqj = 0, (3.6)

where F (NP )j are all applied nonpotential forces acting on the system. For simplicity we

will hereafter assume that

F(NP )j = 0, ∀j = 1, ..., n, (3.7)

so that (3.6) becomesn∑j=1

[d

dt

(∂L

∂qj

)− ∂L

∂qj

]δqj = 0. (3.8)

15

Page 16: Holonomic versus nonholonomic constraints

When all n coordinates in (3.8) are independent of each other, the terms of the sum

in (3.8) must all equal zero individually, so the n equations needed to describe the

motion of the system are immediately obtained from (3.8). These are the Euler-Lagrange

equations,d

dt

(∂L

∂qj

)− ∂L

∂qj= 0, ∀j = 1, ..., n. (3.9)

16

Page 17: Holonomic versus nonholonomic constraints

4 Constraints

In section 3 we saw that (3.8) gives us (3.9) when all coordinates are independent, or

unconstrained. In this section we explore how to treat systems with constraints.

4.1 Holonomic constraints

We now consider systems where some of the coordinates are dependent of some of the

others (holonomic constraints), the dependence being described by some functions1

fa = fa(q), a = 1, ..., p, p < n, (4.1)

and the equations

fa(q) = 0, ∀a = 1, ..., p. (4.2)

In some cases it might be most practical to use these equations to eliminate all

dependent variables in the Lagrangian directly, and thus end up with a system of n− pindependent variables which can then be treated by (3.8).

In other cases it may be di�cult to perform such eliminations, or the forces pro-

duced by these constraints might be of interest. In such cases the constraints can be

incorporated into (3.8) and even be included in the Lagrangian itself. By d'Alembert's

principle, all the virtual displacements δq in (3.8) must satisfy the constraint equations.

In practice, this condition can be written as an equation by �rst di�erentiating (4.2),

giving the p equations

dfa =

n∑j=1

∂fa

∂qjdqj = 0, (4.3)

so when taking a virtual displacement (time is kept �xed) we get

n∑j=1

∂fa

∂qjδqj = 0. (4.4)

After multiplying each of these sums with a function

λa = λa(t), (4.5)

which are called Lagrange multipliers, we may subtract the sum of all variations of the

constraints from the left hand side of (3.8) to obtain

n∑j=1

[d

dt

(∂L

∂qj

)− ∂L

∂qj−

p∑a=1

λa(t)∂fa

∂qj(q)

]δqj = 0. (4.6)

Now we denote the dependent coordinates with

s1, s2, ..., sp (4.7)

and the independent ones with

r1, r2, ..., rn−p (4.8)

1The constraint functions may also be dependent on time explicitly but for simplicity we disregard

this case. The following results may be extended to such cases, see [6].

17

Page 18: Holonomic versus nonholonomic constraints

and choose the functions λa such that

d

dt

(∂L

∂sb

)− ∂L

∂sb−

p∑a=1

λa∂fa

∂sb= 0, ∀b = 1, ..., p. (4.9)

Equation (4.6) now reduces to

n−p∑α=1

[d

dt

(∂L

∂rα

)− ∂L

∂rα−

p∑a=1

λa∂fa

∂rα

]δrα = 0 (4.10)

where the δr's are all independent and arbitrary. Each term must therefore individually

vanish, which gives

d

dt

(∂L

∂rα

)− ∂L

∂rα=

p∑a=1

λa∂fa

∂rα, ∀α = 1, ..., n− p. (4.11)

Together with the original constraint equations, expressed in the new labelling of coor-

dinates, as

fa(s1, s2, ..., sp, r1, r2, ..., rn−p) = 0 (4.12)

we now have n independent equations that completely describe the motion of the system.

In addition we also get, as a bonus, the constraint forces given by∑a=1

λa∂fa

∂rα, ∀α = 1, ..., n− p. (4.13)

This also enables us, since the fa's are independent of q, to introduce the modi�ed

Lagrangian L∗, de�ned by

L∗ := L+

p∑a=1

λafa (4.14)

so that (4.6) becomesn∑j=1

[d

dt

(∂L∗

∂qj

)− ∂L∗

∂qj

]δqj = 0. (4.15)

This indeed shows that the holonomic constraint equations can be added to the La-

grangian with Lagrange multipliers and then use (4.15) to get the constrained equations

of motion. Equation (4.15) is sometimes referred to as d'Alembert's generalized principle,

and what this shows is that it does not matter whether we impose the constraints before

or after we take variations of the Lagrangian. This is however only true for holonomic

constraints, as we shall see in the next section.

4.2 Nonholonomic constraints

The treatment of constraint equations in which only the generalized coordinates and

time are present is well known and fairly straightforward. However, in some systems the

constraints are not expressible only in terms of coordinates, but also with coordinate

velocities (nonholonomic constraints). Consider constraints that can be expressed by p

functions of the form

ga = ga(q, q; t), a = 1, ..., p, p < n, (4.16)

18

Page 19: Holonomic versus nonholonomic constraints

and the equations

ga(q, q; t) = 0, ∀a = 1, ..., p. (4.17)

In general there is no guarantee that constraints of this type are treatable with the

d'Alembert principle. In particular, when the ga's are nonlinear in the velocities we

can't take variations of the constraints that are linear in the δq's. In many mechanical

systems, however, the constraints only depend on position or are linear in velocities.

Therefore we now focus on the interesting special case where

ga(q, q) =

n∑i=1

Aai (q)qi, (4.18)

commonly occurring, for example in systems with rolling constraints. We again disregard

explicit time dependence and now also disregard constraints with an additional term

involving only the coordinates (a�ne constraints, see section 2.1). The following results

can be extended to include also a�ne constraints, as seen in [1, p. 219-220].

Multiplying (4.18) with dt we get

ga(q, q)dt =

n∑i=1

Aai (q)dqi, (4.19)

and, when taking a virtual displacement (that is when dt = 0 and dqi becomes δqi), in

accordance with the d'Alembert principle we have

n∑i=1

Aai δqi = 0, ∀a = 1, ..., p. (4.20)

Multiplying with λa as before, we may now write

n∑j=1

[d

dt

(∂L

∂qj

)− ∂L

∂qj−

p∑a=1

λaAai

]δqj = 0. (4.21)

and proceed as in the holonomic case, denoting dependent and independent coordinates

with (4.7) and (4.8) and choosing the λa's appropriately to get

d

dt

(∂L

∂rα

)− ∂L

∂rα=

p∑a=1

λaAaα, ∀α = 1, ..., n− p, (4.22)

which is the analogue to equation (4.11) for holonomic constraints.

In (4.22) the functions Aaα have been reordered in the lower index so that

Aa1 , Aa2 , ..., A

an−p (4.23)

corresponds to the independent coordinate velocities that were relabelled as

r1, r2, ..., rn−p. (4.24)

Equation (4.22) gives the correct equations of motion in terms of Lagrange multipli-

ers, and we may now pose the question if it is possible to include the constraint functions

19

Page 20: Holonomic versus nonholonomic constraints

in the Lagrangian, thus imposing the constraints before taking the variation, to form an

equivalent generalized principle as we saw was possible in the holonomic case.

As before, we take the modi�ed Lagrangian to be

L∗ = L+

p∑a=1

µaga, (4.25)

with µa instead of λa to distinguish these functions from the ones used previously. Now

we get∂L∗

∂qj=∂L

∂qj+

p∑a=1

µaAaj , (4.26)

with time derivative

d

dt

∂L∗

∂qj=

d

dt

∂L

∂qj+

p∑a=1

(µaAaj + µa

n∑i=1

∂Aaj∂qi

qi

), (4.27)

and∂L∗

∂qj=∂L

∂qj+

p∑a=1

n∑i=1

µa∂Aai∂qj

qi. (4.28)

Using this L∗ in (4.15), combined with (4.27) and (4.27) gives us

n∑j=1

[d

dt

∂L

∂qj− ∂L

∂qj+

p∑a=1

µaAaj +

p∑a=1

n∑i=1

µa(∂Aaj∂qi− ∂Aai∂qj

)qi

]δqj = 0. (4.29)

Comparing (4.29) with (4.21) it becomes apparent that

µa(t) = −λa(t) (4.30)

and that the termp∑a=1

n∑i=1

µa(∂Aaj∂qi− ∂Aai∂qj

)qi (4.31)

needs to vanish in order to obtain the correct equations of motion (4.22). Since this

procedure works for holonomic constraints it might be expected that if the constraint

functions ga are simply the total time derivatives of some other functions depending

only on the coordinates, in other words, the constraints are really holonomic2, then

this term is zero for every j. It turns out that this is indeed the case, as shown in [6].

Generally these terms are not zero however, which shows that this procedure is generally

an incorrect approach.

The failure of obtaining the correct equations of motion by including them in the

Lagrangian also provides an explanation as to why Hamilton's variational principle does

not work when dealing with nonholonomic constraints, since Hamilton's principle o�ers

no option to impose the constraints after taking the variation. In fact, imposing the

constraints after taking the variations on the Lagrangian is crucial for nonholonomic

mechanical systems and shows that imposing constraints before taking the variation,

2These kind of constraints (when the linear velocity constraints are integrable, so that they can be

expressed in terms of only coordinates) are sometimes called semi-holonomic.

20

Page 21: Holonomic versus nonholonomic constraints

however useful in its proper context, is allowed only for holonomic systems. This �proper

context� has been pointed out by several authors on the subject ([1, p. 208], [3, p. 325])

to be optimal control systems, whereas the correct approach for mechanics is the one

given by equations (4.18) through (4.22).

21

Page 22: Holonomic versus nonholonomic constraints

5 Structure of the equations of motion

We now explore in more detail the structure of the equations determined by (4.21) of

nonholonomic systems with constraints linear in the velocities. The following passage

follows closely the path of [3, p. 325-326] but with added explanations and equations.

5.1 Imposing the constraints

We consider a con�guration manifold (section 2.3) Q with local coordinates

q1, q2, ..., qn (5.1)

constrained by a nonintegrable (nonholonomic), linear in velocities, constraint distribu-

tion D on Q that is given by a linear subset of the tangent space (section 2.4) TqQ at

each point q ∈ Q.Assume there are p constraint equations and that there is a choice of coordinates3

q = (r, s), (r ∈ Rn−p, s ∈ Rp) (5.2)

such that s represents the dependent generalized velocities and r the independent ones.

The constraints can now be described locally by the p equations

sa = −n−p∑α=1

Aaα(r, s)rα, ∀a = 1, ..., p. (5.3)

5.2 Obtaining the equations of motion

After taking the variations of the curves in con�guration space as before, we get

n∑j=1

(d

dt

∂L

∂qj− ∂L

∂qj

)δqj = 0. (5.4)

Now we impose the constraints. Because of (5.3), and the d'Alembert principle, the

variations must satisfy the equations

δsa +

n−p∑α=1

Aaα(r, s)δrα = 0, ∀a = 1, ..., p. (5.5)

Substituting q with r and s in (5.4)

n−p∑α=1

(d

dt

∂L

∂rα− ∂L

∂rα

)δrα +

p∑a=1

(d

dt

∂L

∂sa− ∂L

∂sa

)δsa = 0 (5.6)

and combining with (5.5)

n−p∑α=1

(d

dt

∂L

∂rα− ∂L

∂rα

)δrα +

p∑a=1

(d

dt

∂L

∂sa− ∂L

∂sa

)(−n−p∑α=1

Aaαδrα

)= 0. (5.7)

3According to [1, p. 217] this choice of coordinates is always possible.

22

Page 23: Holonomic versus nonholonomic constraints

Rearranging, we get

n−p∑α=1

[(d

dt

∂L

∂rα− ∂L

∂rα

)−

p∑a=1

Aaα

(d

dt

∂L

∂sa− ∂L

∂sa

)]δrα = 0. (5.8)

Since all the δrα are independent we can write(d

dt

∂L

∂rα− ∂L

∂rα

)=

p∑a=1

Aaα

(d

dt

∂L

∂sa− ∂L

∂sa

), ∀α = 1, ..., n− p. (5.9)

This is one way to eliminate the Lagrange multipliers and a comparison with equation

(4.22) shows us that the multipliers here are given by

λa =d

dt

∂L

∂sa− ∂L

∂sa, ∀a = 1, ..., p. (5.10)

Together with the constraint equations

sa = −n−p∑α=1

Aaα(r, s)rα, ∀a = 1, ..., p (5.11)

we now have n equations that are the complete equations of motion.

5.3 Constrained Lagrangian

Now we eliminate the s dependence in the Lagrangian L, thus getting a �constrained

Lagrangian�

Lc(r, s, r) := L(r, s, r, s(r, s, r)) (5.12)

where the components of s(r, s, r) are given by (5.11).

Then we have

∂L

∂rα=∂Lc∂rα

+

p∑b=1

n−p∑β=1

∂Abβ∂rα

rβ∂L

∂sb, ∀α = 1, ..., n− p (5.13)

∂L

∂sa=∂Lc∂sa

+

p∑b=1

n−p∑β=1

∂Abβ∂sa

rβ∂L

∂sb, ∀a = 1, ..., p (5.14)

and∂L

∂rα=∂Lc∂rα

+

p∑b=1

Abα∂L

∂sb, ∀α = 1, ..., n− p. (5.15)

The time derivative of (5.15) is

d

dt

∂L

∂rα=

d

dt

∂Lc∂rα

+

p∑b=1

n−p∑β=1

[∂Abα∂rβ

−p∑a=1

Aaβ∂Abα∂sa

]rβ∂L

∂sb+

p∑a=1

Aaαd

dt

∂L

∂sa. (5.16)

Inserting (5.13), (5.14) and (5.16) into (5.9), the left hand side becomes

d

dt

∂Lc∂rα

+

p∑b=1

n−p∑β=1

[∂Abα∂rβ

−p∑a=1

Aaβ∂Abα∂sa

]rβ∂L

∂sb+

+

p∑a=1

Aaαd

dt

∂L

∂sa− ∂Lc∂rα−

p∑b=1

n−p∑β=1

∂Abβ∂rα

rβ∂L

∂sb(5.17)

23

Page 24: Holonomic versus nonholonomic constraints

and the right hand side becomes

p∑a=1

Aaαd

dt

∂L

∂sa−

p∑a=1

Aaα∂Lc∂sa−

p∑a=1

p∑b=1

n−p∑β=1

Aaα∂Abβ∂sa

rβ∂L

∂sb. (5.18)

The term∑pa=1A

aαddt

∂L∂sa cancels out and by grouping all terms with rβ ∂L

∂sbwe write

d

dt

∂Lc∂rα− ∂Lc∂rα

+

p∑a=1

Aaα∂Lc∂sa

=

=

p∑b=1

n−p∑β=1

[(∂Abβ∂rα

− ∂Abα∂rβ

)+

p∑a=1

(Aaβ

∂Abα∂sa

−Aaα∂Abβ∂sa

)]rβ∂L

∂sb(5.19)

or

d

dt

∂Lc∂rα− ∂Lc∂rα

+

p∑a=1

Aaα∂Lc∂sa

= −p∑b=1

n−p∑β=1

Bbαβ rβ ∂L

∂sb, ∀α = 1, ..., n− p (5.20)

where

Bbαβ :=

(∂Abα∂rβ

−∂Abβ∂rα

)+

p∑a=1

(Aaα

∂Abβ∂sa

−Aaβ∂Abα∂sa

). (5.21)

5.4 Interpretation

In section 5.3, the equations of motion were rewritten in terms of the constrained La-

grangian Lc. To be able to make further interpretations we try to rewrite once more,

following the general path of [9, p. 24].

By writing the constraint equations as p one-forms (section 2.6) we have

ωb = dsb +

n−p∑α=1

Abα(r, s) drα, ∀b = 1, ..., p. (5.22)

Taking the exterior derivative (section 2.8) of the ωb's, we get the two-forms

dωb =

n−p∑α=1

n−p∑β=1

∂Abα∂rβ

drβ ∧ drα +

p∑a=1

∂Abα∂sa

dsa ∧ drα . (5.23)

Using the constraints in the form

dsb = −n−p∑α=1

Abα(r, s)drα (5.24)

we can eliminate ds:

dωb =

n−p∑α=1

n−p∑β=1

(∂Abα∂rβ

−p∑a=1

Aaβ∂Abα∂sa

)drβ ∧ drα. (5.25)

Now, using the fact that the wedge product is alternating bilinear (section 2.7) we have

drβ ∧ drα(r, δr) = rβδrα − δrβ rα (5.26)

24

Page 25: Holonomic versus nonholonomic constraints

and thus

dωb(r, δr) =

n−p∑α=1

n−p∑β=1

(∂Abα∂rβ

−p∑a=1

Aaβ∂Abα∂sa

)rβδrα−

−n−p∑α=1

n−p∑β=1

(∂Abα∂rβ

−p∑a=1

Aaβ∂Abα∂sa

)rαδrβ . (5.27)

Changing the role of the summation variables α and β in the second term we get

dωb(r, δr) =

n−p∑α=1

n−p∑β=1

[∂Abα∂rβ

−∂Abβ∂rα

+

p∑a=1

(Aaα

∂Abβ∂sa

−Aaβ∂Abα∂sa

)]rβδrα (5.28)

or

dωb(r, δr) =

n−p∑α=1

n−p∑β=1

Bbαβ rβδrα, ∀b = 1, ..., p. (5.29)

So the variation of the constrained Lagrangian Lc can be written as

δLc = −n−p∑α=1

[d

dt

∂Lc∂rα− ∂Lc∂rα

+

p∑a=1

Aaα∂Lc∂sa

]δrα =

p∑b=1

∂L

∂sbdωb(r, δr). (5.30)

This equation isolates the e�ects of the constraints and also shows that when dω = 0 the

right hand side of (5.29) vanishes. This is the case when the constraints are integrable

(holonomic), that is when the one-form ω is closed (section 2.8), once again con�rming

what can be seen in equation (4.29). This equation thus also provides an alternate way

to obtain the equations of motion for holonomic systems, especially when the constraints

are initially given as functions linear in velocities, by substituting the constraints into

the Lagrangian and setting the variation of Lc to zero [1]. In cases where the constraints

truly are nonholonomic however, there are additional forces generated by the constraints,

given by the right hand side of (5.30). In sections 5.6 and 5.7 we shall explore how these

terms can be treated in terms of geometry.

5.5 Conservation laws

It is customary to de�ne an associated momentum (often called the conjugate momen-

tum) to each generalized coordinate. The conjugate momentum of a coordinate rk is

de�ned as

pk :=∂L

∂rk. (5.31)

This also means that for a holonomic system the equations of motion are given by (4.11)

in the new form of conjugate momenta;

pα −∂L

∂rα=

p∑a=1

λa∂fa

∂rα, ∀α = 1, ..., n− p. (5.32)

Now, if the Lagrangian L along with all the constraint equations f is independent of a

certain coordinate rk, then rk is said to be cyclic. For such a coordinate, (5.32) becomes

pk = 0, (5.33)

25

Page 26: Holonomic versus nonholonomic constraints

which means that

pk = constant, (5.34)

or, it is said to be conserved. Indeed, �the generalized momentum conjugate to a cyclic

coordinate is conserved� is stated in [7, p. 56] to be a general conservation theorem and

there are several other examples (for instance in [8, p. 568]) where similar statements

imply that this conservation law always holds. However, this is only true for holonomic

constraints, as we shall see below.

If we instead look at the equations of motion that we derived for nonholonomic

constraints of the form (5.3), the conjugate momentum is now

pk :=∂Lc∂rk

, (5.35)

so when inserting this into (5.20) we get

pα −∂Lc∂rα

= −p∑b=1

n−p∑β=1

Bbαβ rβ ∂L

∂sb−

p∑a=1

Aaα∂Lc∂sa

, ∀α = 1, ..., n− p. (5.36)

In this context, if rk is cyclic, then all the quantities L, Lc, Bbαβ and all the constraint

functions Aaα are independent of rk. If we also assume, as is often the case, that the

dependent coordinates s are also cyclic, then (5.36) becomes

pk = −p∑b=1

n−p∑β=1

Bbkβ rβ ∂L

∂sb, (5.37)

and we can clearly see, even with this last assumption, that the conjugate momentum of a

cyclic variable is generally not conserved for nonholonomic systems. Further discussion

of this fact can be found for instance in [17] and [3].

5.6 An Ehresmann connection

We now try to formulate the results derived so far in section 5 in geometrical terms.

The idea of an Ehresmann connection (section 2.10) is to think of the tangent space

TqQ at the point q ∈ Q as a the sum of a horizontal part and a vertical part, where the

horizontal part of the space is exactly the subspace of TqQ de�ned by the constraints.

Using our previous notation of r's and s's, the basis of TqQ is

B =

{∂

∂r1,∂

∂r2, ...,

∂rn−p,∂

∂s1,∂

∂s2, ...,

∂sp

}(5.38)

and any vector u ∈ TqQ can be written as

u =

r1

r2

...

rn−p

s1

s2

...

sp

=

n−p∑α=1

rα∂

∂rα+

p∑a=1

sa∂

∂sa, (5.39)

26

Page 27: Holonomic versus nonholonomic constraints

where the rα's and sa's are to be interpreted only as a notation for the values of the

elements of u and are not to be confused with the time derivatives of the elements of

any speci�c vector in the corresponding position space.

We now de�ne a �bre bundle (section 2.5) with total space Q and base space that

we will call R, that is locally the space of the r-variables. Thus we have a submersion

π that locally is the projection

r1

r2

...

rn−p

s1

s2

...

sp

7−→

r1

r2

...

rn−p

0

0...

0

. (5.40)

The tangent space of the base space at each point is then the space

TqR = span

{∂

∂r1,∂

∂r2, ...,

∂rn−p

}. (5.41)

The projection from TqQ to TqR is called Tqπ and the kernel of Tqπ is what we call the

vertical space, de�ned as

Vq := span

{∂

∂s1,∂

∂s2, ...,

∂sp

}. (5.42)

The space TqR is now a possible choice of horizontal space in order to have the tangent

space TqQ be a sum of the vertical and horizontal parts. This choice of horizontal space

does not, however, ful�l our second wish, that the horizontal space also is the subspace

of TqQ de�ned by our constraints. Instead we de�ne the map

A : TqQ→ Vq (5.43)

by

Aq(u) :=

p∑b=1

ωb(u)∂

∂sb. (5.44)

Inserting (5.22) in (5.44) we get

Aq(u) =

p∑b=1

(sb +

n−p∑α=1

Abαrα

)∂

∂sb. (5.45)

27

Page 28: Holonomic versus nonholonomic constraints

Written in the basis B, the resulting vector is

a := Aq(u) =

0

0...

0

s1 +n−p∑α=1

A1αrα

s2 +n−p∑α=1

A2αrα

...

sp +n−p∑α=1

Apαrα

(5.46)

so that

Aq(a) =

p∑b=1

(sb +

n−p∑α=1

Abαrα

)∂

∂sb= a. (5.47)

Aq is a projection (section 2.2) from TqQ to the vertical space Vq, or in other words, Aqis an Ehresmann connection.

The horizontal space Hq is now given by the kernel of Aq,

Hq = ker(Aq) = {u ∈ TqQ : Aq(u) = 0}, (5.48)

or more explicitly, Hq is spanned by all vectors in TqQ that satisfy

sa = −n−p∑α=1

Aaαrα, ∀a = 1, ..., p. (5.49)

This means that even if TqQ is the total space for velocity vectors at a point q, any

allowed velocity lies in the subspace Hq, determined by the Ehresmann connection that

was de�ned using the constraint equations.

To sum up, the vertical projection of a vector u ∈ TqQ, written

uV := A(u), (5.50)

is given by the map

r1

r2

...

rn−p

s1

s2

...

sp

7−→

0

0...

0

s1 +n−p∑α=1

A1αrα

s2 +n−p∑α=1

A2αrα

...

sp +n−p∑α=1

Apαrα

(5.51)

28

Page 29: Holonomic versus nonholonomic constraints

and the horizontal projection, written uH, is given by

r1

r2

...

rn−p

s1

s2

...

sp

7−→

r1

r2

...

rn−p

−n−p∑α=1

A1αrα

−n−p∑α=1

A2αrα

...

−n−p∑α=1

Apαrα

. (5.52)

From this it is easily checked that adding up the two projections gives us back the

original vector and that the constrained Lagrangian can be written as

Lc(r, s, r) = L(q, qH). (5.53)

5.7 Curvature

The curvature B of the connection A, with respect to two vector �elds X and Y on Q,

is de�ned as

B(X,Y) := −A([XH,YH]) (5.54)

where the bracket on the right hand side of (5.54) is the Jacobi-Lie bracket (section 2.9).

In local coordinates, let X and Y be described by

X =

X1

X2

...

Xn

=

r1x

r2x...

rn−px

s1x

s2x...

spx

, Y =

Y 1

Y 2

...

Y n

=

r1y

r2y...

rn−py

s1y

s2y...

spy

. (5.55)

The horizontal projections of the vector �elds, written in the basis B as before, are then

XH =

n−p∑β=1

rβx∂

∂rβ−

p∑a=1

n−p∑β=1

Aaβ(r, s)rβx

∂sa(5.56)

and

YH =

n−p∑α=1

rαy∂

∂rα−

p∑a=1

n−p∑α=1

Aaα(r, s)rαy

∂sa. (5.57)

29

Page 30: Holonomic versus nonholonomic constraints

Let XkH and Y kH denotes the k'th row of XH and YH respectively. Now we have

[XH,YH]k =

n−p∑β=1

rβx∂

∂rβY kH −

p∑a=1

n−p∑β=1

Aaβ rβx

∂saY kH −

n−p∑α=1

rαy∂

∂rαXk

H+

+

p∑a=1

n−p∑α=1

Aaαrαy

∂saXk

H, ∀k = 1, ..., n. (5.58)

The derivatives in (5.58) are

∂Y kH∂rβ

=

0 , for k = 1, ..., n− p

−n−p∑α=1

∂Ak−(n−p)α

∂rβrαy , for k = (n− p+ 1), ..., n,

(5.59)

∂Y kH∂sa

=

0 , for k = 1, ..., n− p

−n−p∑α=1

∂Ak−(n−p)α

∂sa rαy , for k = (n− p+ 1), ..., n,(5.60)

∂XkH

∂rα=

0 , for k = 1, ..., n− p

−n−p∑β=1

∂Ak−(n−p)β

∂rα rβx , for k = (n− p+ 1), ..., n(5.61)

and

∂XkH

∂sa=

0 , for k = 1, ..., n− p

−n−p∑β=1

∂Ak−(n−p)β

∂sa rβx , for k = (n− p+ 1), ..., n.(5.62)

Since [XH,YH]k = 0 for all k = 1, ..., n− p we write b = k − (n− p) so that

[XH,YH] =

p∑b=1

n−p∑α=1

n−p∑β=1

[∂Abβ∂rα

− ∂Abα∂rβ

+

p∑a=1

(Aaβ

∂Abβ∂sa

−Aaα∂Abα∂sa

)]rβx r

αy

∂sb(5.63)

or

[XH,YH] = −p∑b=1

n−p∑α=1

n−p∑β=1

Bbαβ rβx rαy

∂sb. (5.64)

Finally, recall that rβx = Xβ and rαy = Y α so, �nally, we get

[XH,YH] = −p∑b=1

n−p∑α=1

n−p∑β=1

BbαβXβY α

∂sb. (5.65)

Since this vector �eld is already in the vertical space Vq, and since A is a projection to

Vq, we also know that

A([XH,YH]) = [XH,YH]. (5.66)

Also, equations (5.25) and (5.26) imply that

dωb(XH,YH) =

n−p∑α=1

n−p∑β=1

BbαβXβY α, ∀b = 1, ..., p. (5.67)

30

Page 31: Holonomic versus nonholonomic constraints

The conclusion is that the curvature B of the Ehresmann connection A, acting on two

arbitrary vectors X and Y on Q, can be written as

B(X,Y) =

p∑b=1

dωb(XH,YH)∂

∂sb(5.68)

and that it can be seen as a measure of the failure of the constraints to be integrable [1,

p. 108]. The local expression for curvature is then given by

B(X,Y)b =

n−p∑α=1

n−p∑β=1

BbαβXβY α, ∀b = 1, ..., p, (5.69)

with the coe�cients Bbαβ given by (5.21).

31

Page 32: Holonomic versus nonholonomic constraints

6 An example: The falling disc

Now we try to make use of the method developed in the previous sections in an example, a

model of a rolling homogenous disc, such as a coin, of negligible thickness on a horizontal

plane. A similar, but not identical, model was explored as early as 1892 by Vierkandt

in [16] and further, for example, in [1] and [18].

6.1 Writing the Lagrangian

We assume a homogeneous disc of radius R and mass m. We neglect all frictional forces

and assume that the disc is not allowed to slip as it rolls and rotates on the surface.

Rolling without slipping is of course an unrealistic idealization that is commonly adopted

for these types of systems, but for our purpose in this text it is deemed to be �realistic

enough�. The disc's centre of mass is positioned at the coordinates

X,Y, Z. (6.1)

The rotation of the disc in its rolling direction measured counter clockwise by the angle

θ, (6.2)

the rotation about the disc's z-axis measured from the x-axis counter clockwise by

φ, (6.3)

and the inclination angle, measured by

ψ. (6.4)

These generalized coordinates are illustrated by �gure 4.

Figure 4: A rolling disc on a �at surface

32

Page 33: Holonomic versus nonholonomic constraints

The kinetic energy of the system is

T =1

2m(X2 + Y 2 + Z2) +

1

2(I1θ

2 + I2φ2 + I3ψ

2) (6.5)

with I1, I2 and I3 the moments of inertia of the disc about each corresponding axis from

where we measure the rotation, here given by

I1 =1

2mR2, (6.6)

corresponding to the change in rotation measured by θ,

I2 =1

4mR2, (6.7)

corresponding to φ, and

I3 =1

4mR2, (6.8)

corresponding to the angle ψ. A more detailed description on how these values can be

calculated can be found in any book on basic mechanics, such as [13, p. 663-690].

The potential energy is

V = mgZ, (6.9)

so that we obtain the Lagrangian on TQ:

L =m

2

[X2 + Y 2 + Z2 +

1

2R2θ2 +

1

4R2φ2 +

1

4R2ψ2 − 2gZ

]. (6.10)

6.2 Change of coordinates

Since rolling without slipping is better expressed as a function of the coordinates at the

point of contact between the disc and the surface, we introduce

x, y (6.11)

for this purpose, the coordinates X,Y and Z can now be expressed as functions of these

new coordinates and the angles φ and ψ. We now have

X = x−R sinφ sinψ, (6.12)

Y = y −R cosφ sinψ (6.13)

and

Z = R cosψ. (6.14)

What this actually means is that the position of the centre of mass is known as soon

as we know the point of contact, the heading angle and the inclination of the disc.

These constraints are all holonomic so we can eliminate them directly by inserting the

equations into the Lagrangian. To be able to do this we also need the time derivatives,

X = x−R(cosφ sinψφ+ sinφ cosψψ

), (6.15)

Y = y −R(sinφ sinψφ− cosφ cosψψ

), (6.16)

33

Page 34: Holonomic versus nonholonomic constraints

and

Z = −R sin(ψ)ψ (6.17)

We also calculate

X2 = x2 − 2xR(cosφ sinψφ+ sinφ cosψψ

)+

+R2(cos2 φ sin2 ψφ2 + 2 cosφ sinφ cosψ sinψφψ + sin2 φ cos2 ψψ2

), (6.18)

Y 2 = y2 − 2yR(sinφ sinψφ− cosφ cosψψ

)+

+R2(sin2 φ sin2 ψφ2 − 2 cosφ sinφ cosψ sinψφψ + cos2 φ cos2 ψψ2

)(6.19)

and

Z2 = R2 sin2 ψψ2. (6.20)

Then we have

X2 + Y 2 + Z2 = x2 + y2 +R2ψ2 +R2 sin2 ψφ2−

− 2R[φ sinψ(x cosφ+ y sinφ) + ψ cosψ(x sinφ− y cosφ)

]. (6.21)

Now insert (6.14) and (6.21) into the Lagrangian to get

L =m

2

[x2 + y2 +

5R2

4ψ2 +R2

(1

4+ sin2 ψ

)φ2 +

R2

2θ2 − 2gR cosψ − F

], (6.22)

where

F = 2R[φ sinψ(x cosφ+ y sinφ) + ψ cosψ(x sinφ− y cosφ)

]. (6.23)

In the language of geometry we now have the con�guration manifold

Q = R2 × S1 × S1 × S1+ (6.24)

where

[x, y]T ∈ R2 (6.25)

and S1 is the one-sphere, the set of all points on a circle, and it is therefore the natural

space for each of the angles θ and φ. The set of points S1+ is de�ned as

S1+ := {x, y ∈ R | x2 + y2 = 1, y ≥ 0}, (6.26)

and is the set of points of the upper half of a circle, which is to be used as the space for

the angle ψ.

6.3 Nonholonomic constraints

The condition of rolling without slipping can be described by the equations

x = R cosφθ (6.27)

and

y = R sinφθ. (6.28)

34

Page 35: Holonomic versus nonholonomic constraints

To be able to write these constraints in the language of the approach we have devel-

oped, we let

s = [x, y]T (6.29)

and

r = [θ, φ, ψ]T (6.30)

so that (6.27) and (6.28) are written as

s1 = R cos(r2)r1 (6.31)

and

s2 = R sin(r2)r1. (6.32)

This is exactly the form of (5.3) with

A11(r, s) = −R cosφ, (6.33)

A21(r, s) = −R sinφ (6.34)

and with all the other A's zero.

Now we can use (5.21) to calculate the curvature terms:

B112 =

∂A11

∂φ=

∂φ(−R cosφ) = R sinφ, (6.35)

B212 =

∂A21

∂φ=

∂φ(−R sinφ) = −R cosφ, (6.36)

B121 = −∂A

11

∂φ= − ∂

∂φ(−R cosφ) = −R sinφ (6.37)

and

B221 = −∂A

21

∂φ= − ∂

∂φ(−R sinφ) = R cosφ, (6.38)

with all other B's zero.

Remembering that the constrained Lagrangian is the Lagrangian where all veloci-

ties ful�l the nonholonomic constraint equations, we insert (6.27) and (6.28) into the

Lagrangian. First we see that when inserting the constraints into the function F we get

F = 2R2[φ sinψ(cos2 φ+ sin2 φ)θ + ψ cosψ(cosφ sinφ− sinφ cosφ)θ

]=

= 2R2 sinψθφ, (6.39)

and then we see that

x2 + y2 = R2 cos2(φ)θ2 +R2 sin2(φ)θ2 = R2θ2 (6.40)

so the constrained Lagrangian becomes

Lc = L(q, qH) = mR2

[3

4θ2 +

(1

8+

1

2sin2 ψ

)φ2 − sinψθφ+

5

8ψ2 − g

Rcosψ

]. (6.41)

Since∂Lc∂s1

=∂Lc∂x

= 0 (6.42)

35

Page 36: Holonomic versus nonholonomic constraints

and∂Lc∂s2

=∂Lc∂y

= 0, (6.43)

equation (5.20) becomes

d

dt

∂Lc∂rα− ∂Lc∂rα

+

2∑b=1

3∑β=1

Bbαβ rβ ∂L

∂sb= 0, α = 1, 2, 3 (6.44)

with

[r1, r2, r3]T = [θ, φ, ψ]T (6.45)

and

[s1, s2]T = [x, y]T . (6.46)

6.4 Equations of motion

Now we calculate the necessary derivatives to insert into (6.44):

Pθ =d

dt

∂Lc

∂θ= mR2

(3

2θ − φ sinψ − cosψφψ

), (6.47)

Pφ =d

dt

∂Lc

∂φ= mR2

[(1

4+ sin2 ψ

)φ+ sin(2ψ)φψ − sinψθ − cosψθψ

], (6.48)

Pψ =d

dt

∂Lc

∂ψ= mR2 5

4ψ, (6.49)

∂Lc∂ψ

= mR2

[1

2sin(2ψ)φ2 − cosψθφ+

g

Rsinψ

](6.50)

and∂Lc∂θ

=∂Lc∂φ

= 0. (6.51)

We also need

∂L

∂x= mx−mR

(φ sinψ cosφ+ ψ cosψ sinφ

)(6.52)

and∂L

∂y= my −mR

(φ sinψ sinφ− ψ cosψ cosφ

). (6.53)

Now we can calculate

B112φ

∂L

∂x+B2

12φ∂L

∂y= mRφ(xsinφ− ycosφ)−mR2 cosψφψ (6.54)

and

B121θ

∂L

∂x+B2

21θ∂L

∂y= mR2 cosψθψ −mRθ(xsinφ− ycosφ). (6.55)

Inserting into (6.44) gives us

mR2

[3

2θ − φ sinψ − 2 cosψφψ

]+mRφ (x sinφ− y cosφ) = 0, (6.56)

mR2

[(1

4+ sin2 ψ

)φ+ sin(2ψ)φψ − sinψθ

]−mRφ (x sinφ− y cosφ) = 0, (6.57)

36

Page 37: Holonomic versus nonholonomic constraints

and

mR2

[5

4ψ − 1

2sin(2ψ)φ2 + cosψθφ− g

Rsinψ

]= 0. (6.58)

Using the constraint equations (6.27) and (6.28) we see that

(x sinφ− y cosφ) = Rθ (cosφ sinφ− sinφ cosφ) = 0, (6.59)

so now we arrive at the �nal equations of motion

θ − 2

3

[φ sinψ + 2 cosψφψ

]= 0, (6.60)

φ+sin(2ψ)φψ − sinψθ(

14 + sin2 ψ

) = 0, (6.61)

and

ψ − 4

5

[1

2sin(2ψ)φ2 − cosψθφ+

g

Rsinψ

]= 0. (6.62)

Equations (6.60), (6.61) and (6.62) give the complete motion of the system.

6.5 Interpretation and stable solutions

In this example, θ and φ are cyclic coordinates (L, Lc, Aaα and Bbαβ are all independent

of θ and φ), so we can check whether their associated momenta are conserved, with the

help of equation (5.37). We have

Pθ = mR2 cosψφψ (6.63)

and

Pφ = −mR2 cosψθψ (6.64)

so here we see that the conjugate momenta are not conserved. This is consistent with

the statements made in section 5.5.

It is interesting to explore some special solutions to these equations. For instance

we can set θ = 0 and φ = 0, so that the rolling velocity and turning velocity are both

constant. Both equations (6.60) and (6.61) now give

φψ = 0, (6.65)

which tells us that we either have a constant direction of rolling φ or a constant tilt

angle ψ. If we assume the direction is constant, equation (6.62) then gives the solution

for ψ as the second order nonlinear di�erential equation

ψ − 4g

5Rsinψ = 0. (6.66)

Looking at equation (6.66) we see that the acceleration of the tilt angle ψ will always

have the same sign as the angle ψ itself. It follows that the only (unstable) equilibrium

solution in this case is when ψ = 0.

37

Page 38: Holonomic versus nonholonomic constraints

On the other hand, if we assume the tilt angle is constant, then equation (6.62)

provides an equation for the possible constant values of θ and φ,

φ =θ

2 sinψ±

√θ2

4 sin2 ψ− g

R cosψ, (6.67)

which in turn gives the inequality

∣∣∣θ∣∣∣ ≥√

4g sin2 ψ

R cosψ, (6.68)

which gives the lower limit of the rolling velocity θ as a function of the constant value

of ψ.

Another example is to set ψ = 0, so that the tilt angle is constant. Here, equation

(6.60) shows that

θ =2

3sinψφ (6.69)

while equation (6.61) gives us

θ =

(14 + sin2 ψ

)sinψ

φ. (6.70)

This can only be true if both θ and φ are zero or if

sin2 ψ = −3

4, (6.71)

which of course has no real solutions. Thus we must assume that

θ = φ = 0, (6.72)

so now we are back to our �rst case again, with ψ constant.

In summary we can say that constant velocities for rolling and turning gives possible

solutions with the tilt angle either constant or nonconstant, but if we start from an

assumption of constant tilt angle, then we only have solutions where both turning and

rolling velocities are constant.

In both of these examples there are possible solutions where the equations (6.63) and

(6.64) predict conserved conjugate momenta for both θ and/or φ, which is also what we

would expect for this model of a rolling disc.

38

Page 39: Holonomic versus nonholonomic constraints

7 Results and conclusion

In this section the main results and conclusions will be reviewed.

We started from Newton's second law and used d'Alembert's principle to arrive at

the equationn∑j=1

[d

dt

∂L

∂qj− ∂L

∂qj

]δqj = 0. (7.1)

We argued that when all n generalized coordinates are independent of each other,

we get the Euler-Lagrange equations

d

dt

∂L

∂qj− ∂L

∂qj= 0, ∀j = 1, ..., n. (7.2)

We also saw that when some of the coordinates are dependent of each other, their

dependency expressed by p functions fa, the constraints can be included in the Euler-

Lagrange equations, when labelling the (n − p) independent variables with rα, to give

us the equations

d

dt

∂L

∂rα− ∂L

∂rα=

p∑a=1

λa∂fa

∂rα, ∀r = 1, ..., n− p. (7.3)

We also showed that, when the constraints are holonomic, they can be added to the

Lagrangian to form a modi�ed Lagrangian L∗ so that the constraints in e�ect can be

imposed before taking the variations to the Lagrangian, consistent with the approach

for dealing with constraints via Hamilton's principle.

Next we showed that this procedure fails when applied to nonholonomic constraint,

and that the proper equations of motion only are obtained by imposing the constraints

after taking the variations, as can only be done by d'Alembert's principle. The equations

when using Lagrange multipliers on linear nonholonomic constraints given by

ga(q, q) :=

n∑i=1

Aai (q)qi = 0, (7.4)

are the equations

d

dt

∂L

∂rα− ∂L

∂rα=

p∑a=1

λaAaα, ∀α = 1, ..., n− p. (7.5)

In particular, we showed that when the constraint equations were written in the form

sa = −n−p∑α=1

Aaα(r, s)rα, ∀a = 1, ..., p, (7.6)

we derived the Lagrange multipliers to be

λa =d

dt

∂L

∂sa− ∂L

∂sa, ∀a = 1, ..., p, (7.7)

so that the equations of motion become

d

dt

∂L

∂rα− ∂L

∂rα=

p∑a=1

(d

dt

∂L

∂sa− ∂L

∂sa

)Aaα, ∀α = 1, ..., n− p. (7.8)

39

Page 40: Holonomic versus nonholonomic constraints

Further, we introduced the concept of the constrained Lagrangian Lc, which is the

Lagrangian de�ned only on the horizontal space of TQ, or more explicitly, de�ned only

on the subset of TQ de�ned by the constraint equations. In terms of the constrained

Lagrangian we derived the equations of motion to be

d

dt

∂Lc∂rα− ∂Lc∂rα

+

p∑a=1

Aaα∂Lc∂sa

= −p∑b=1

n−p∑β=1

Bbαβ rβ ∂L

∂sb, ∀α = 1, ..., n− p (7.9)

where

Bbαβ :=

(∂Abα∂rβ

−∂Abβ∂rα

)+

p∑a=1

(Aaα

∂Abβ∂sa

−Aaβ∂Abα∂sa

). (7.10)

By rewriting the right hand side to be in terms of the exterior derivative of the two

form ω, which was the constraint �function�, we could show that the results were con-

sistent with holonomic constraints and that these extra terms involving Bbαβ , generated

by the nonholonomic constraint forces, could be seen, from a geometric perspective, as

curvature terms for a speci�c choice of connection.

This connection, called an Ehresmann connection, is a projection de�ned on the tan-

gent space TqQ of each point q ∈ Q and it is a powerful way to describe the constraints,

without using local coordinates.

We also showed that the conjugate momenta of a cyclic variable is generally not

conserved for nonholonomic systems, as it is in the holonomic case.

Finally we showed how to use some of the above mentioned results in an example.

The equations of motion for a �coin�, rolling without slipping on a plane surface, were

calculated to be

θ − 2

3

[φ sinψ + 2 cosψφψ

]= 0, (7.11)

φ+sin(2ψ)φψ − sinψθ(

14 + sin2 ψ

) = 0, (7.12)

and

ψ − 4

5

[1

2sin(2ψ)φ2 − cosψθφ+

g

Rsinψ

]= 0. (7.13)

The equations obtained were also consistent with the earlier conclusions that conju-

gate momenta are normally not conserved for nonholonomic constraints.

In conclusion it should also be said that, while being a fairly instructive example

showing how to use the developed equations, the example of the falling disc that was

considered in section 6 is arguably not very hard to solve even without the help of the

above formulas, simply with the use of Newtonian mechanics. There are of course other

examples when the Newton approach becomes too cumbersome or impractical and where

the above approach would o�er more of an advantage. More advantages still are to be

gained by developing the geometrical approach even further than was done in this text,

many of which are explored in the source literature.

40

Page 41: Holonomic versus nonholonomic constraints

References

[1] A.M. Bloch. Nonholonomic Mechanics and Control. Interdisciplinary applied math-

ematics: Systems and control. Springer, 2003.

[2] A.M. Bloch, P. Krishnaprasad, J. Marsden, and R. Murray. Nonholonomic me-

chanical systems with symmetry. Archive for Rational Mechanics and Analysis,

136:21�99, 1996.

[3] A.M. Bloch, J.E. Marsden, and D.V. Zenkov. Nonholonomic dynamics. Notices of

the AMS, 52(3):324�333, 2005.

[4] H. Cendra, A. Ibort, M. de León, and D. Martín de Diego. A generalization of

Chetaev's principle for a class of higher order nonholonomic constraints. Journal

of Mathematical Physics, 45(7):2785�2801, 2004.

[5] M. Crampin, W. Sarlet, and F. Cantrijn. Higher-order di�erential equations and

higher-order lagrangian mechanics. Mathematical Proceedings of the Cambridge

Philosophical Society, 99(03):565�587, 1986.

[6] M.R. Flannery. The enigma of nonholonomic constraints. American Journal of

Physics, 73(3):265�272, 2005.

[7] H. Goldstein, C.P. Poole, and J.L. Safko. Classical Mechanics. Addison Wesley,

2002.

[8] J.V. José and E.J. Saletan. Classical Dynamics: A Contemporary Approach. Cam-

bridge University Press, 1998.

[9] W.S. Koon and J.E. Marsden. The hamiltonian and lagrangian approaches to the

dynamics of nonholonomic systems. Reports on Mathematical Physics, 40:21�62,

1997.

[10] D. J. Korteweg. Über eine ziemlich verbreitete unrichtige Behandlungsweise eines

Problems der rollenden Bewegung, über die Theorie dieser Bewegung, und ins-

besondere über kleine rollende Schwingungen um eine Gleichgewichtslage. Nieuw

archief voor wiskunde, 24:130�161, 1900.

[11] C. Lanczos. The Variational Principles of Mechanics. Mathematical expositions.

Dover Publications, 1970.

[12] C-M. Marle. Various approaches to conservative and nonconservative nonholonomic

systems. Reports on Mathematical Physics, 42:211�229, 1998.

[13] J.L. Meriam and L.G. Kraige. Engineering Mechanics: Dynamics. Engineering

Mechanics. Wiley, 2008.

[14] R. Penrose. The Road to Reality: A Complete Guide to the Laws of the Universe.

Vintage Series. Vintage Books, 2007.

41

Page 42: Holonomic versus nonholonomic constraints

[15] R. Sjamaar. Manifolds and di�erential forms. Lecture notes from Cornell University,

2006.

[16] A. Vierkandt. Dritter Abschnitt: Das Rollen und Gleiten einer ebenen Fläche,

insbesondere einer homogenen Kreisscheibe, auf der Horizontalebene unter dem

Ein�uss der Schwere. Monatshefte für Mathematik, 3:117�134, 1892.

[17] D. V. Zenkov. Linear conservation laws of nonholonomic systems with symme-

try. Discrete and Continuous Dynamical Systems, supplementary volume:963�972,

2003.

[18] D.V. Zenkov, A.M. Bloch, and J.E. Marsden. The energy-momentum method

for the stability of non-holonomic systems. Dynamics and Stability of Systems,

13(2):123�165, 1998.

42