In theoretical physics, the Udwadia–Kalaba equation [1] is a method for deriving the equations of motion of a constrained mechanical system. This equation was discovered by Firdaus E. Udwadia and Robert E. Kalaba in 1992. The fundamental equation is the simplest and most comprehensive equation so far discovered [2] for writing down the equations of motion of a constrained mechanical system. Although it is mostly a restatement of Newton's second law of motion, it makes a convenient distinction between externally applied forces and the internal forces of constraint, similar to the use of constraints in Lagrangian mechanics, but without the use of Lagrange multipliers. The Udwadia–Kalaba equation applies to a wide class of constraints, both holonomic constraints and nonholonomic ones, as long as they are linear with respect to the accelerations. The equation even generalizes to constraint forces that do not obey D'Alembert's principle.[3][4]

## The central problem of constrained motion

In the study of the dynamics of mechanical systems, the configuration of a given system S is, in general, completely described by n generalized coordinates so that its generalized coordinate n-vector is given by

where T denotes matrix transpose. Using Newtonian or Lagrangian dynamics, the unconstrained equations of motion of the system S under study can be derived as a matrix equation (see matrix multiplication):

where the dots represent derivatives with respect to time:

It is assumed that the initial conditions q(0) and are known. We call the system S unconstrained because may be arbitrarily assigned.

The n-vector Q denotes the total generalized force acted on the system by some external influence; it can be expressed as the sum of all the conservative forces as well as non-conservative forces.

The n-by-n matrix M is symmetric, and it can be positive definite or semi-positive definite . Typically, it is assumed that M is positive definite; however, it is not uncommon to derive the unconstrained equations of motion of the system S such that M is only semi-positive definite; i.e., the mass matrix may be singular (it has no inverse matrix).[5][6]

### Constraints

We now assume that the unconstrained system S is subjected to a set of m consistent equality constraints given by

where A is a known m-by-n matrix of rank r and b is a known m-vector. We note that this set of constraint equations encompass a very general variety of holonomic and non-holonomic equality constraints. For example, holonomic constraints of the form

can be differentiated twice with respect to time while non-holonomic constraints of the form

can be differentiated once with respect to time to obtain the m-by-n matrix A and the m-vector b. In short, constraints may be specified that are

1. nonlinear functions of displacement and velocity,
2. explicitly dependent on time, and
3. functionally dependent.

As a consequence of subjecting these constraints to the unconstrained system S, an additional force is conceptualized to arise, namely, the force of constraint. Therefore, the constrained system Sc becomes

where Qc—the constraint force—is the additional force needed to satisfy the imposed constraints. The central problem of constrained motion is now stated as follows:

1. given the unconstrained equations of motion of the system S,
2. given the generalized displacement q(t) and the generalized velocity of the constrained system Sc at time t, and
3. given the constraints in the form as stated above,

find the equations of motion for the constrained system—the acceleration—at time t, which is in accordance with the agreed upon principles of analytical dynamics.

## Equation of motion

The solution to this central problem is given by the Udwadia–Kalaba equation. When the matrix M is positive definite, the equation of motion of the constrained system Sc, at each instant of time, is[2][7]

where the '+' symbol denotes the pseudoinverse of the matrix . The force of constraint is thus given explicitly as

and since the matrix M is positive definite the generalized acceleration of the constrained system Sc is determined explicitly by

In the case that the matrix M is semi-positive definite , the above equation cannot be used directly because M may be singular. Furthermore, the generalized accelerations may not be unique unless the (n + m)-by-n matrix

has full rank (rank = n).[5][6] But since the observed accelerations of mechanical systems in nature are always unique, this rank condition is a necessary and sufficient condition for obtaining the uniquely defined generalized accelerations of the constrained system Sc at each instant of time. Thus, when has full rank, the equations of motion of the constrained system Sc at each instant of time are uniquely determined by (1) creating the auxiliary unconstrained system[6]

and by (2) applying the fundamental equation of constrained motion to this auxiliary unconstrained system so that the auxiliary constrained equations of motion are explicitly given by[6]

Moreover, when the matrix has full rank, the matrix is always positive definite. This yields, explicitly, the generalized accelerations of the constrained system Sc as

This equation is valid when the matrix M is either positive definite or positive semi-definite! Additionally, the force of constraint that causes the constrained system Sc—a system that may have a singular mass matrix M—to satisfy the imposed constraints is explicitly given by

## Non-ideal constraints

At any time during the motion we may consider perturbing the system by a virtual displacement δr consistent with the constraints of the system. The displacement is allowed to be either reversible or irreversible. If the displacement is irreversible, then it performs virtual work. We may write the virtual work of the displacement as

The vector describes the non-ideality of the virtual work and may be related, for example, to friction or drag forces (such forces have velocity dependence). This is a generalized D'Alembert's principle, where the usual form of the principle has vanishing virtual work with .

The Udwadia–Kalaba equation is modified by an additional non-ideal constraint term to

## Examples

### Inverse Kepler problem

The method can solve the inverse Kepler problem of determining the force law that corresponds to the orbits that are conic sections.[8] We take there to be no external forces (not even gravity) and instead constrain the particle motion to follow orbits of the form

where , is the eccentricity, and l is the semi-latus rectum. Differentiating twice with respect to time and rearranging slightly gives a constraint

We assume the body has a simple, constant mass. We also assume that angular momentum about the focus is conserved as

with time derivative

We can combine these two constraints into the matrix equation

The constraint matrix has inverse

The force of constraint is therefore the expected, central inverse square law

### Inclined plane with friction

Consider a small block of constant mass on an inclined plane at an angle above horizontal. The constraint that the block lie on the plane can be written as

After taking two time derivatives, we can put this into a standard constraint matrix equation form

The constraint matrix has pseudoinverse

We allow there to be sliding friction between the block and the inclined plane. We parameterize this force by a standard coefficient of friction multiplied by the normal force

Whereas the force of gravity is reversible, the force of friction is not. Therefore, the virtual work associated with a virtual displacement will depend on C. We may summarize the three forces (external, ideal constraint, and non-ideal constraint) as follows:

Combining the above, we find that the equations of motion are

This is like a constant downward acceleration due to gravity with a slight modification. If the block is moving up the inclined plane, then the friction increases the downward acceleration. If the block is moving down the inclined plane, then the friction reduces the downward acceleration.