## Abstract

This paper gives the general constrained Poincaré equations of motion for mechanical systems subjected to holonomic and/or nonholonomic constraints that may or may not satisfy d'Alembert's principle at each instant of time. It also extends Gauss's principle of least constraint to include quasi-accelerations when the constraints are ideal, thereby expanding the compass of this principle considerably. The new equations provide deeper insights into the dynamics of multi-body systems and point to new ways for controlling them.

## 1. Introduction

The determination of the equations of motion for constrained mechanical systems has been an area of considerable interest among scientists and engineers ever since the problem of constrained motion was first articulated by Lagrange in the late 1800s. Yet, the determination of the explicit equations of motion, even within the restricted compass of Lagrangian dynamics (1811), in which the forces of constraint do no total work, has been a major hurdle. It has been the subject of numerous papers and books, and has garnered contributions from some of the best mathematicians, physicists and engineers over the last 200 years. The Lagrange multiplier method relies on problem-specific approaches to the determination of the multipliers, which are often difficult to obtain for systems with a large number of degrees of freedom and many non-integrable constraints. Formulations of the equations of constrained motion, when the constraints satisfy d'Alembert's principle, were independently offered by Gibbs (1879) and Appell (1899). Pars (1972) in his treatise on analytical dynamics refers to the Gibbs–Appell equations as ‘probably the most comprehensive equations of motion so far discovered’. But these equations can also easily get out of hand for systems with a large number of degrees of freedom and many non-integrable constraints, unless a felicitous choice of problem-specific quasi-coordinates is made. Gauss (1829) developed a general principle governing constrained motion for systems that satisfy d'Alembert's principle. Dirac (1964), who worked more than 10 years on the problem of constrained motion, has offered a formulation for Hamiltonian systems with singular Lagrangians where the constraints do not explicitly depend on time. In the mid-1990s, Udwadia & Kalaba (1992, 1996) obtained an explicit set of equations for constrained motion and provided a new and different perspective on the constrained motion of multi-body systems. They introduced the notion of Moore–Penrose generalized inverses (Moore 1910; Penrose 1955) in the description of such motion and, through their use, obtained a simple and explicit equation of motion for constrained multi-body mechanical systems without the use of, or any need for, the notion of Lagrange multipliers. Their approach allows us to obtain the explicit equations of motion for multi-body systems with constraints that may be: (i) nonlinear functions of the velocities, (ii) explicitly dependent on time, and (iii) functionally dependent. In 2000 (Udwadia 2000; Udwadia & Kalaba 2002), they included constraints that may or may not satisfy d'Alembert's principle at each instant of time, providing for the first time an explicit set of equations for general constrained systems, irrespective of whether or not they satisfy d'Alembert's principle. Constrained equations of motion for mechanical systems with singular mass matrices with ideal and non-ideal constraints have been obtained by Udwadia & Phohomsiri (2006), making these equations even more valuable for the analysis and control of multi-body systems.

However, all the above-mentioned general explicit set of equations for constrained motion that have been obtained to date are applicable to systems whose unconstrained description comes from the second-order, Lagrange differential equations of motion. It is often more convenient in the description of complex mechanical systems to use a state-space—first-order differential equation—form of the unconstrained equations of motion. This is especially so when rotational motion is important, as in many aerospace and mechanical engineering applications, and these first-order equations are often written in terms of quasi-velocities, which may not be integrable. The lack of a general way for obtaining the unconstrained equations of motion for general mechanical systems using quasi-velocities led Poincaré (1901) to develop such a set of equations, often referred to today as the Poincaré equations of motion (Talman 2000). Poincaré obtained the equations of motion in the first-order differential equation form, what is commonly referred to today as the state-space form, in which part of the state variable vector is formed by the quasi-velocities of the system. Chetaev (1989) expanded on Poincaré's equations and gave some examples of its use. The development of the explicit equations of motion for such systems when they are subjected to general holonomic and nonholonomic constraints that may or may not be ideal has to date been unavailable, and they are obtained for the first time in this paper.

Specifically, in this paper we do the following. (i) We obtain the explicit equations of motion for a mechanical system in terms of the generalized configuration coordinates, and time-varying linear functions of the generalized velocities of the system—the quasi-velocities. These quasi-velocities need not be integrable. Thus, we generalize the Poincaré equations to quasi-velocities whose definition now explicitly includes time. (ii) The main purpose of obtaining the explicit generalized Poincaré equations here is to use them to obtain the explicit equations of motion for constrained mechanical systems described in state-space form. We first obtain these equations for systems in which the constraints satisfy d'Alembert's principle. This development requires a deeper analysis of virtual displacements, and we take that up along the way. (iii) We expand the compass of Gauss's principle of least constraint, when the constraints are ideal, to include systems described by quasi-velocities. (iv) We then proceed to give the explicit constrained Poincaré equations of motion for mechanical systems in which the total work done by all the forces of constraint may not be zero. Thus, we obtain the general explicit equations of motion for systems with non-ideal constraints.

In part II of this paper we illustrate the simplicity, ease and accuracy with which the constrained equations of motion developed herein can be directly applied to the fields of multi-body dynamics and nonlinear control.

## 2. Generalized Poincaré equations of motion for unconstrained mechanical systems

The purpose of this section is to obtain the explicit equations of motion for systems whose state variables are taken to be a set of configuration coordinates and a set of generalized quasi-velocities that may explicitly depend on time. These equations will then be used to obtain the explicit equations of constrained motion when this unconstrained system is further subjected to general equality constraints.

We begin by considering an unconstrained *n* degree-of-freedom mechanical system described by the *n*-vector (*n*×1 column vector) of generalized coordinates *q*=[*q*_{1}, *q*_{2}, …, *q*_{n}]^{T} for which the Lagrange equations are given by(2.1)Here, is the kinetic energy of the system and *Q* is the *n*-vector of generalized force whose *i*th component is the total generalized force corresponding to the *i*th coordinate (including any contributions attributable to a potential). The initial conditions are specified by the *n*-vectors *q*_{0} and . By unconstrained we mean that the components of the *n*-vector can be arbitrarily specified. The state of the system at any time *t* is then described by .

We now make a change in our state-space coordinates to the *n*-vector *s* of quasi-velocities defined by the relation(2.2)where the *n*×*n* matrix *G*(*q*, *t*) is taken to be invertible so that this transformation is taken to be one-to-one, and can be equally expressed as(2.3)We note that the quasi-velocity *s* in equation (2.2) can explicitly depend on time. Using relation (2.3) for , the kinetic energy of the system can now be expressed in terms of the new state variables as(2.4)where we have placed the subscript *s* to specify that the kinetic energy is now expressed in the new state variables, *q* and *s*. Partial differentiation of *T* with respect to yields(2.5)where we have denoted *P*=*G*^{T}(*q*, *t*)=(*H*^{−1})^{T}. Hence, the first term on the left-hand side of equation (2.1) now becomes(2.6)Similarly, the second term on the left-hand side of equation (2.1) can be written as(2.7)where we have denoted by making use of relation (2.3). Similarly, we obtain, for the term on the right-hand side of equation (2.1),(2.8)where now *Q*_{s} is the generalized force *n*-vector in terms of our state variables, *q* and *s*.

Using relations (2.6)–(2.8), Lagrange's equation can be rewritten as(2.9)In equation (2.9) and the rest of this paper, for brevity, we shall drop the arguments of various quantities such as *P*, *R*_{s} and *Q*_{s}, unless they are necessary to ensure clarity. Pre-multiplying equation (2.9) by *P*^{−1}, we obtain the relation(2.10)In order to make use of equation (2.10), we need to further understand the kinetic energy of the system as expressed in our new state variables.

The kinetic energy of the unconstrained mechanical system with *n* degrees of freedom can be expressed in generalized coordinates as (Pars 1972)(2.11)or, in short as,(2.12)where the *n*×*n* matrix *M* is positive definite; its *i*–*j*th element being *m*_{ij}(*q*, *t*); and *μ* is an *n*-vector whose *i*th component is *μ*_{i}(*q*, *t*). Thus,(2.13)where *M*_{s}(*q*, *t*)=*H*^{T}(*q*, *t*)*M*(*q*, *t*)*H*(*q*, *t*) is a positive definite *n*×*n* matrix.

Using equation (2.13) in equation (2.10), we obtain the relation(2.14)where(2.15)and *G*^{−T}≔(*G*^{−1})^{T}. To equation (2.14) we append equation (2.3), which is(2.16)so that equations (2.14) and (2.16) then give the first-order differential equations that describe the motion of the unconstrained mechanical system in terms of the state of the system described by (*q*, *s*). The initial state of the system is given by *q*(*t*=0)=*q*_{0} and .

## 3. Explicit Poincaré equations for constrained motion

In this section we begin by stating the problem of constrained motion in terms of the state variables (*q*, *s*) of the system. We then go on to describe virtual displacements in terms of these state variables and enunciate d'Alembert's principle. The explicit equations of constrained motion of the system when it obeys d'Alembert's principle are then obtained. We next extend Gauss's principle to apply to quasi-accelerations. Finally, we look at dynamical systems where the constraints may or may not be ideal and in which the constraint forces may or may not satisfy d'Alembert's principle. We thus obtain the general equation of motion for constrained mechanical systems whether or not they satisfy d'Alembert's principle.

### (a) Statement of the problem of constrained motion

Let us again consider the unconstrained system described by equation (2.1). Suppose that the system is constrained by the equations(3.1)and(3.2)The superscript ‘c’ indicates that these are the equations describing the constraints. These *m* relations may thus include, in general, both holonomic and nonholonomic constraints. We shall assume that these constraints are sufficiently smooth to allow differentiation with respect to time. On differentiating relation (3.1) once with respect to time, all *m* constraints can then be written as(3.3)and, by using relation (2.16), they can be expressed as(3.4)This relation upon further differentiation with respect to time yields(3.5)where *A*_{s} is an *m*×*n* matrix whose rank is *k*≤*m* and *b*_{s} is an *m*-vector. The initial conditions of the constrained system—*q*(*t*=0)=*q*_{0}, and *s*(*t*=0)=*s*_{0}—satisfy the *m* relations (3.4) at *t*=0.

The *m* constraints (3.1) and (3.2) (or alternatively, the constraints expressed by equations (3.4) and (3.5)) bring into play forces of constraint that must be added to the right-hand side of equation (2.1), and, correspondingly, equation (2.9) gets modified to(3.6)where we have denoted the force of constraint as(3.7)Using relations (2.14) and (2.15), equation (3.6) can be rewritten in brief aswhere(3.8)The problem of constrained motion then reduces to finding the constraint force *S*^{c}(*q*, *s*, *t*), so that the constraints (3.5) are satisfied, where *s* is defined by equation (2.2).

### (b) Virtual displacements and d'Alembert's principle

Let us suppose that of the dynamical system are known at time *t*. A virtual displacement *w* at the time immediately following time *t*, namely at time *t*^{+}, is any non-zero *n*-vector from the actual configuration at time *t*^{+} to a *possible* configuration at that time. A ‘*possible* configuration’ is one that satisfies the constraints. Hence,(3.9)where the subscripts ‘pos’ and ‘a’ stand for *possible* and *actual* configurations, respectively.

Since , upon differentiation with respect to time, we get(3.10)where is an *n*-vector.

Since we assume that we know *q* and at time *t*, we have(3.11)Hence, the virtual displacement(3.12)Since the *actual* and *possible* positions and velocities must satisfy the constraints, we get(3.13)and(3.14)Subtracting equation (3.14) from equation (3.13) and using relations (3.11), then multiplying both sides by d*t*^{2}/2 and using (3.12), we get, as d*t*→0,(3.15)Thus, every virtual displacement *w* at time *t*^{+} must satisfy the relation(3.16)where we have denoted *v*≔*Gw*. Now, for every virtual displacement, d'Alembert's principle requires that(3.17)Equation (3.17) can be recast as(3.18)where we have used equation (3.8) and our definition of the *n*-vector *v*. d'Alembert's principle then says that for all non-zero *w* at time *t*, such that relation (3.16) is satisfied, we must have relation (3.18) satisfied. Since *G* is invertible, this can be rephrased as:(3.19)Constraints that satisfy (3.19) at each instant of time will be called ideal constraints.

### (c) Explicit equations for constrained motion of a mechanical system with ideal constraints

We are now ready to state and handle the problem of constrained motion of a mechanical system in terms of the state-space representation provided by the generalized Poincaré equations as follows.

Consider an unconstrained mechanical system described by the equations(3.20)(3.21)We shall denote the quasi-acceleration of the unconstrained system by(3.22)We are required to find the constraint force *S*^{c}(*q*, *s*, *t*), such that the system of equations(3.23)(3.24)satisfy, at each instant of time, (i) the constraint equation and (ii) d'Alembert's principle as stated in equation (3.19). The initial conditions *q*(*t*=0)=*q*_{0} and *s*(*t*=0)=*s*_{0} of the constrained system are assumed to satisfy the prescribed constraints (3.4) (or equivalently, equations (3.1) and (3.2)) at *t*=0.

We begin by stating our result.

For the unconstrained mechanical system described by equations (3.20) and (3.21) in which the initial conditions *q*_{0}, *s*_{0} satisfy the constraints (3.4) (or alternatively (3.5)), the unique *n*-vector, *S*^{c}, that satisfies d'Alembert's principle and causes the motion to satisfy these constraints for all time is given by(3.25)where and *X*^{+} denotes the Moore–Penrose generalized inverse (Moore 1910; Penrose 1955) of the matrix *X*.

The constraint implies(3.26)Denoting(3.27)the solution of equation (3.26) can be written as(3.28)where *X*^{+} is the Moore–Penrose generalized inverse of the matrix *X* and *u* is any arbitrary *n*-vector. Our aim is to determine uniquely the second member on the right-hand side of equation (3.28).

Denoting , d'Alembert's principle as stated in equation (3.19) can be rewritten asBut the solution to the equation *B*_{s}*η*=0 is simply(3.29)where *y* is any arbitrary *n*-vector. Hence, using equation (3.24), the condition implies that(3.30)In the first equality above we have used relations (3.24) and (3.29), in the second equality, the relation (3.28) and in the third, the facts that (*I*−*B*^{+}*B*)*B*^{+}=0 and (*I*−*B*^{+}*B*) are idempotent (Udwadia & Kalaba 1996). Since *y* is an arbitrary *n*-vector, the last equality in equation (3.30) then requires(3.31)Using relation (3.31) in equation (3.28), we obtain(3.32)which further simplifies upon pre-multiplication by to(3.33)where we have made use of relations (3.22) and (3.27) in the second equality.

The explicit equation of motion for the constrained mechanical system thus becomes(3.34)or alternately,(3.35)

### (d) Gauss's principle of least constraint for mechanical systems described using quasi-accelerations

Gauss (1829) gave a general principle of mechanics dealing with the evolution of constrained motion in nature. He stated that in the presence of ideal constraints, at each instant of time, the norm of the weighted deviation of the acceleration of a mechanical system from its unconstrained acceleration is minimized by nature from among all the *possible* accelerations. More precisely, among all the accelerations, , that satisfy the constraints (3.1) and (3.2) at the time *t*, the acceleration, , that nature chooses is the one that minimizes(3.36)where *a* is the unconstrained acceleration of the system and *M* is the mass matrix given in equation (2.12).

We shall now generalize Gauss's principle to encompass systems that satisfy d'Alembert's principle and are described by first-order differential equations using quasi-accelerations, .

Consider a mechanical system whose unconstrained motion is described by equations (3.20) and (3.21). When the ideal constraints given by equation (3.4) (or equation (3.5)) are imposed on the mechanical system at time *t*, the quasi-acceleration of the system is altered from what it would have been in their absence. Then, from among all *possible* quasi-accelerations, , at time *t*, nature chooses that quasi-acceleration, , that minimizes the scalar Gaussian(3.37)where is the quasi-acceleration of the unconstrained system.

Let us consider a *possible* quasi-acceleration , where is the actual quasi-acceleration of the system and *u* is an arbitrary non-zero vector. We shall show that .

We assume that the state (*q*, *s*) of the system is known at time *t*. Since is a *possible* quasi-acceleration at *t*, it must satisfy the constraint relation(3.38)and since , which is given in equation (3.35), is the actual quasi-acceleration that nature chooses, it must also satisfy the constraint equation(3.39)Subtracting equation (3.39) from (3.38), we then get the relation , which then implies that (Udwadia & Kalaba 1996)(3.40)Now,(3.41)But the first member following the last equality is simply and, by relation (3.40), the second member is zero. The third is also zero, being the transpose of the second. We therefore have(3.42)from which it follows that , since *M*_{s} is a positive definite matrix. We note that the extended Gauss's principle provides a global minimum principle, since the non-zero vector *u* can have any magnitude.

*For systems where the constraints are ideal, the constraint force S*^{c}(*t*) *acting on the mechanical system is such that it minimizes* *at each instant of time over all possible constraint forces* *that cause the constraints to be satisfied*.

Since the quasi-acceleration is such that at each instant of time is minimized over all *possible* accelerations, we find that(3.43)is minimized over all constraint forces that ensure the satisfaction of the constraints.

### (e) Generalized d'Alembert's principle and explicit equations for constrained motion of mechanical systems with non-ideal constraints

While many mechanical systems appear to satisfy d'Alembert's principle experimentally, the principle is actually an assumption proffered by d'Alembert and first precisely enunciated by Lagrange. There are systems where the principle does not hold (Pars 1972). Such systems are said to have non-ideal constraints. For them, the mechanician needs to provide, at each instant of time *t*, the virtual work done by the forces of constraint as (Udwadia 2000; Udwadia & Kalaba 2002)(3.44)through a proper specification of the *n*-vector *C*. This vector, *C*, is system-specific and needs to be obtained by experiment or using analogies with other systems, or otherwise. Equation (3.44) can be recast as(3.45)where we have again denoted *v*=*Gw* and *C*_{s}=*H*^{T}*C*. d'Alembert's principle then generalizes to the following statement:(3.46)The statement of the problem of constrained motion then requires that equations (3.23) and (3.24) be again satisfied under the conditions that at each instant of time, (i) the constraint equations be satisfied as before and (ii) the generalized d'Alembert principle given in equation (3.46) be satisfied.

For the unconstrained mechanical system described by equations (3.20) and (3.21) in which the initial conditions *q*_{0}, *s*_{0} satisfy the constraints (3.4) (or alternatively (3.5)), the unique *n*-vector, *S*^{c}, when the constraint forces are non-ideal and satisfy the generalized d'Alembert principle (3.46), is given by(3.47)where, again, .

The proof is identical to our previous proof up to equation (3.28). Equation (3.30), however, changes, because we need to apply the generalized d'Alembert principle now to give(3.48)Noting again that the *n*-vector *y* is arbitrary, we get(3.49)Substitution of relation (3.49) into equation (3.28) and, as before, pre-multiplication by then yields the result.

Equations (3.23), (3.24) and (3.47) constitute the Poincaré equations for general constrained systems that may or may not satisfy d'Alembert's principle.

## 4. Conclusions and remarks

The explicit equations of motion obtained to date (Udwadia & Kalaba 1996) were applicable to systems described by Lagrange's equations. However, there are numerous mechanical systems that are more advantageously modelled using a state-space representation that utilizes quasi-velocities. This state-space description using quasi-velocities was first investigated in a systematic manner by Poincaré (1901). Such descriptions are of great practical value in many situations when Newtonian principles (rather than Lagrangian) are used to obtain the equations of motion. This is especially so in dynamical studies of multi-body systems, where angular velocity, which is a quasi-velocity, appears quite naturally in the description of their motion. While significant progress has been made in recent years in obtaining explicit equations for the constrained motion of mechanical systems that are obtained using Lagrange's equations, we have hereto had no general explicit equation of motion for mechanical systems that are described in state-space form which use quasi-velocities.

The main contributions of this paper may be summarized as follows.

This paper develops the explicit constrained Poincaré equations of motion for mechanical systems. The constraints include, among others, the usual holonomic, nonholonomic, scleronomic, rheonomic, catastatic and acatastatic varieties of constraints; combinations of such constraints are also permitted. The constraints are not required to be functionally independent, and the general explicit constrained Poincaré equations developed in this paper are applicable to systems that may or may not satisfy d'Alembert's principle.

When the constraints are ideal and d'Alembert's principle is satisfied at each instant of time, the motion of a constrained dynamical system evolves, so that the deviation of the norm of the quasi-acceleration with respect to the mass matrix

*M*_{s}is minimized over all*possible*quasi-accelerations. For such systems, nature seems to choose the constraint force*S*^{c}in such a way that from all constraint forces that ensure the satisfaction of the constraints and satisfy d'Alembert's principle, it selects the one that, at each instant of time, minimizes the weighted norm . We therefore show that Gauss's principle can be extended to quasi-acceleration, thereby considerably expanding its compass of validity.It is noteworthy that the development of the explicit equations of constrained motion makes no reference to, nor uses, the notion of Lagrange multipliers. The statement of the problem of constrained motion makes no mention of Lagrange multipliers, and nor does its solution.

Part II of this paper shows the ease and simplicity with which these results can be used in the control of highly nonlinear mechanical systems. The advantage of using control methodologies that emanate from the use of these fundamental equations is that ‘exact control’ of complex, highly nonlinear, multi-body systems may be achieved without making any linearizations and/or approximations.

In this paper a new explicit equation for constrained motion of general mechanical systems that are described in state space by quasi-velocities is obtained. The equation is applicable to general holonomic and/or nonholonomic constraints that may or may not be ideal. As illustrated in part II of this paper, the equation points towards new directions in multi-body dynamics and in precision control of highly nonlinear systems.

## Footnotes

- Received September 21, 2006.
- Accepted January 24, 2007.

- © 2007 The Royal Society