Why is the d'Alembert's Principle formulated in terms of virtual displacements rather than real displacements in time?

EDIT In other words, which step of the derivation of D'Alembert's principle (or Largrange's equation) will not work if one uses real displacements and why?

  • 7
    $\begingroup$ Possible duplicate: physics.stackexchange.com/q/81742 $\endgroup$
    – Courage
    Commented Oct 29, 2016 at 7:47
  • $\begingroup$ The first step i.e the D'Alembert's equation itself won't work because it is valid for virtual displacements only. $\endgroup$
    – Courage
    Commented Oct 29, 2016 at 8:11
  • $\begingroup$ That takes me back to the first question. Why would it not work for real displacements? $\endgroup$
    – SRS
    Commented Oct 29, 2016 at 8:12

3 Answers 3


Because the constraints may explicitly depend on time and real displacements take this dependence into account, whereas D'Alembert principle is "instantaneous".

Think of a smooth (frictionless) curve $\Gamma$ $$\Gamma : \vec{x}=\vec{x}(t,q)$$ whose form depends on time as stated in the formula above and a point of matter $P$ constrained to move along the curve. D'Alemebert principle says that, at fixed $t$, the virtual work of the reactive force $\vec{\phi}$ is zero for every virtual displacement $$\delta \vec{x}(t,q) = \frac{\partial \vec{x}}{\partial q}\bigg|_{t, q} \delta q\qquad \forall \delta q \in \mathbb R\tag{1}$$ exiting from every point defined by the coordinate $q$ along the curve at every fixed time $t$: $$\vec{\phi}(t,q) \cdot \delta \vec{x}(t,q) =0 \qquad \forall \delta q \in \mathbb R\tag{2}$$ Actually this statement is equivalent to saying that the reactive force is normal to the curve at every fixed time, i.e., the curve is smooth: Since $\delta \vec{x}(t,q)$ is nothing but a generic (as $\delta q$ is arbitrary) tangent vector to $\Gamma$ for the given time, (2) is equivalent to saying that $\vec{\phi}(t,q)$ may have only components orthogonal to $\Gamma$.

A virtual displacement (1) is a vector tangent to the curve at the given considered time which is the first order approximation of a secant vector to the curve, with an intuitive language, it is an "infinitesimal displacement". However $\delta \vec{x}$ cannot be considered an "infinitesimal real displacement" $\Delta \vec{x}$ of a point constrained to stay on the curve, because real displacements last an amount of time (even an infinitesimal amount of time in this case) and in that period of time the shape of the curve changes: $$\Delta \vec{x} = \frac{\partial \vec{x}}{\partial q}\bigg|_{t, q} \Delta q+ \frac{\partial \vec{x}}{\partial t}\bigg|_{t, q} \Delta t\qquad \Delta q, \Delta t \in \mathbb R\:.\tag{1'}$$ What you need, in this case to produce the Euler-Lagrange's equations from $$\vec{f}+ \vec{\phi} = m \vec{a}\tag{3}$$ is (2), $$\vec{\phi} \cdot \frac{\partial x}{\partial q}\delta q =0 \qquad \forall \delta q \in \mathbb R$$ re-written into the equivalent form (due to the fact that $\delta q$ is arbitrary), $$\vec{\phi}(t,q) \cdot \frac{\partial \vec{x}}{\partial q} =0 \tag{2'}\:.$$ that is, from (3), $$m \vec{a} \cdot \frac{\partial \vec{x}}{\partial q} = \vec{f} \cdot \frac{\partial \vec{x}}{\partial q}\:,$$ which, in turn, can be re-written as $$\frac{d}{dt}\frac{\partial T}{\partial \dot{q}}-\frac{\partial T}{\partial q} = Q$$ with $$Q = \vec{f} \cdot \frac{\partial \vec{x}}{\partial q} = - \frac{\partial U}{\partial q}\:,$$ when $\vec{f} = -\nabla_{\vec{x}} U(x(t,q))$ is conservative, giving rise to $$\frac{d}{dt}\frac{\partial L}{\partial \dot{q}}-\frac{\partial L}{\partial q} = 0$$ when defining $L= T-U$.

If you restated D'Alemebert principle replacing virtual displacements for real displacements you would obtain $$\vec{\phi}(t,q) \cdot \Delta \vec{x}(t,q) =0 \qquad \forall \Delta q, \Delta t \in \mathbb R\:,$$ but this statement would not be equivalent to (2') preventing one from deriving E.L- equations. It would be instead equivalent to the much stronger demand $$\vec{\phi}(t,q) \cdot \frac{\partial \vec{x}}{\partial q} =0 \quad\mbox{AND}\quad \vec{\phi}(t,q) \cdot \frac{\partial \vec{x}}{\partial t} =0\:.$$

Summing up, we can say that D'Alemebert principle is a complicated way (I strongly dislike it) to state the properties of reactive forces to be "orthogonal" to constraints at every fixed time (also if constraints changes in time). This orthogonality notion is the standard one provided you deal with a unique point, but it is a generalized notion formulated in the $N$-points configuration space in case you deal with $N>1$ constrained points with $n$ degrees of freedom: $$\sum_{i=1}^n \vec{\phi}_i \cdot \frac{\partial \vec{x}_i}{\partial q^k}=0 \qquad k=1,\ldots, n$$ This generalized notion is weaker than the standard notion referred to each point separately. For instance it encompasses the rigidity constraint: The reactive forces of points constrained to have fixed reciprocal distances satisfy that generalized orthogonal requirement in the configuration space of the system.


Perhaps a simple example is called for.

Example. In 2D consider a point mass $m$ with position $${\bf r}~=~\begin{pmatrix} x\cr y\end{pmatrix} ~=~ x{\bf e}_x+y{\bf e}_y\tag{1} $$ that is constrained to move on a frictionless vertical rod, which in turn has pre-determined horizontal position $$x~=~f(t),\tag{2}$$ where $f$ is a given function of time $t$ with $f^{\prime}(t)\neq 0$. Eq. (2) is by definition a holonomic constraint, and there is 1 generalized position coordinate $$q~\equiv ~y,\tag{3}$$ i.e. 1 DOF. The particle position $$ {\bf r}~=~{\bf r}(q,t)~=~\begin{pmatrix} f(t)\cr q\end{pmatrix} ~=~ f(t){\bf e}_x+q{\bf e}_y\tag{4} $$ becomes a function of the generalized coordinate $q$ and time $t$. The constraint force $${\bf F}^{(c)}\parallel {\bf e}_x\tag{5}$$ is horizontal because the $y$-direction is unconstrained. An infinitesimal displacement is of the form $$ \delta {\bf r}~=~\frac{\partial {\bf r}}{\partial q}\delta q + \frac{\partial {\bf r}}{\partial t}\delta t~\stackrel{(4)}{=}~{\bf e}_y \delta q + {\bf e}_x f^{\prime}(t)\delta t. \tag{6}$$ The virtual displacements $\delta q \equiv\delta y$ are by definition vertical with $$\delta t~=~0,\tag{7}$$ leading to that the constraint force ${\bf F}^{(c)}$ does no virtual work$^1$ $$ {\bf F}^{(c)} \cdot \delta {\bf r} ~\stackrel{(6)}{=}~{\bf F}^{(c)} \cdot \left({\bf e}_y \delta q + {\bf e}_x f^{\prime}(t)\delta t\right)~\stackrel{(5)}{=}~{\bf F}^{(c)} \cdot {\bf e}_x f^{\prime}(t)\delta t~\stackrel{(7)}{=}~0.\tag{8} $$ However if we allow $\delta t\neq 0$, then the last equality in eq. (8) will no longer hold, and this implies that we can no longer derive d'Alembert's principle from Newton's 2nd law.


$^1$It is tempting to call eq. (8) the Principle of virtual work, but strictly speaking, the principle of virtual work is just d'Alembert's principle for a static system. For d'Alembert's principle, see also this and this related Phys.SE posts.


Consider an system in equilibrium (we can consider a dynamic system too, equilibrium systems are a little simpler). The sum of forces on the system is zero, So the virtual work done is also zero.

But why isn't this true for real work?

Well, real displacements occur in a time $\mathrm dt$, where as virtual displacements occur at an instant of time.

So the real displacements may cause the forces (applied and constraints) to change in the time $\mathrm dt$ so the system will no longer be in equilibrium, and the work done will no longer be zero.

Whereas virtual displacements don't cause a change in the forces since there is no change in time, as the virtual displacements occur at an instant. So the virtual work done would still be zero.


Not the answer you're looking for? Browse other questions tagged or ask your own question.