I have a doubt regarding the expression of a virtual displacement using generalized coordinates. I will state the definitions I'm taking and the problem.

The system is composed by $n$ points with positions $\mathbf r _i$ and subject to $3n-d$ constraints of the form: $$\phi _j (\mathbf r _1, \mathbf r _2,...,\mathbf r _n,t)=0\qquad (1\leq j \leq 3n-d), \tag{1}$$ that, deriving with respect to time, gives: $$\sum _{i=1} \frac{\partial \phi _j}{\partial \mathbf r _i} \cdot \dot {\mathbf r}_i=-\frac{\partial \phi _j}{\partial t}.\tag{2}$$

According to my notes, a set of possible velocities $(\mathbf v_1,\mathbf v_2,...,\mathbf v_n)$ is one that satisfies the above system of $j$ equations (with $v_i$ in the place of $\dot r _i$), while a set of virtual velocities is one that satisfies the homogeneous system $$\sum _{i=1} \frac{\partial \phi _j}{\partial \mathbf r _i} \cdot \dot {\mathbf r}_i=0.\tag{*}$$ Finally, a virtual displacement is given by the product of a virtual velocity by a quantity $\delta t$, with the dimensions of time.

I have the following problem. Suppose that I have a parametrization of the configuration space at time $t$ in the form: $$\mathbf r _i = \mathbf r _i (q_1,\dots ,q_d;t).$$ That is: $$\phi _j(\{\mathbf r _i (q_1,\dots,q_d;t)\},t)=0$$ for all $q=(q_1,\dots,q_d)\in Q$ and $t\in [t_1,t_2]$. Now, according to my notes, if such a parametrization is given, the general form of a virtual displacement is: $$\delta \boldsymbol r _i =\sum _h \frac{\partial \mathbf r _i}{\partial q _h}\delta q _h.$$

Let $q(t)$ be a curve in the coordinate's space. By taking the total derivative of both sides of the precedent equation, I obtain: $$\sum _i \frac{\partial \phi _j}{\partial \mathbf r _i}\cdot (\sum _h \frac{\partial \mathbf r_i}{\partial q _h} \dot q _h)+\sum _i \frac{\partial \phi _j}{\partial \mathbf r _i}\cdot \frac{\partial \mathbf r _i}{\partial t} +\frac{\partial \phi _j}{\partial t}=0.$$ But the first term is zero because it is the product of the gradients $\nabla _{\mathbf r _i}\phi _j$ with the virtual velocities $\mathbf v _i$. But, in this case, it looks like that the second+third terms should be zero.

I suspect that there's an error, I don't see why the second+term should always give $0$ and I would like a proof check of what I wrote above.

  • $\begingroup$ Which text are you using? $\endgroup$
    – Qmechanic
    Oct 3 '13 at 20:19
  • $\begingroup$ They are just the notes of my professor. And possibly I am misinterpreting something. $\endgroup$
    – pppqqq
    Oct 3 '13 at 20:26

I see your question can be expressed in words as "when the virtual displacements/velocities agree with the allowed ones?" that's, as you said,

$ \frac{\partial \mathbf{x}_{i}}{\partial t} = 0 $

that is to say that the position vector $r$ is expressed in terms of $q_{k}$'s only and doesn't contain $t$ explicitly, so as the constraints. i.e. the system is scleronomic .

example of this system is the pendulum with inextensible string, you will find that virtual displacements and velocities are the same as the allowed ones, and the last term you'r asking about vanishes.

for another case, think about the same pendulum but with extensible string, say $l = 0.2 t$ .

"the virtual displacement is not always the allowed one, the same for the virtual velocity"

I hope my answer helps you and I think you'll find "Greenwood- Classical Dynamics" useful for you.

  • $\begingroup$ Dear @Ahmed El-ashry, I've changed substantially the body of this old question, since I've realized that the OP was very confused. I'm just pinging in case I you may want to modify your answer. $\endgroup$
    – pppqqq
    Sep 29 '16 at 12:11

I) The important fact is here that a virtual displacement $\delta$ only affects the generalized positions $q \in Q$,

$$ \delta q ~=~ q_1 - q_0. $$

It does by definition not affect the time variable $t\in[t_i,t_f]$,

$$\delta t~\equiv~ 0,$$

cf. Ref. 1. In other words, a virtual displacement always refers to the same time $t$.

II) Let us realize a virtual displacement $\delta q$ with the help of a curve $$ [0,1]~\ni~s~~\stackrel{\gamma}{\mapsto}~~ \gamma(s)~\in~Q$$ with endpoints

$$\gamma(s=0)~=~q_0\qquad\text{and}\qquad \gamma(s=1)~=~q_1,$$

and where $s\in[0,1]$ is the curve parameter. For instance, let

$$ \gamma(s) ~=~(1\!-\! s)q_0 + sq_1. $$

Then one can not identify the curve parameter $s$ with time $t$. In particular, if one writes (infinitesimally)

$$ \delta q ~=~ \frac{\partial q}{\partial s}\delta s, $$

then $\frac{\partial q}{\partial s}$ can not be identified with the generalized velocities $\dot{q}\equiv\frac{\partial q}{\partial t} $.

TL;DR: In conclusion, OP's question seems spurred by a conflation of the physical time variable $t$ and the virtual curve parameter $s$.


  1. H. Goldstein, Classical Mechanics. See the first two sentences after eq. (1.47).
  • $\begingroup$ So I am wrong when I write an equality like: $$\delta \mathbf r = \sum _{h=1} ^d \frac {\partial \mathbf x}{\partial q}\delta q = \sum _{h=1} ^d \frac {\partial \mathbf x}{\partial q} \dot q \delta t?$$ How does the equality $\delta \mathbf r = \sum _{h=1} ^d \frac {\partial \mathbf x}{\partial q}\delta q $ meet with the first definition I gave of virtual displacement? Also, in my text there's no mention to homotopy, I'm pretty sure that it's taking a different point of view. Is my definition a good/working one? $\endgroup$
    – pppqqq
    Oct 3 '13 at 21:48
  • $\begingroup$ I updated the answer. $\endgroup$
    – Qmechanic
    Oct 4 '13 at 13:00
  • $\begingroup$ Dear @Qmechanic, I've changed substantially the body of this old question, since I've realized that the OP was very confused. I'm just pinging in case I you may want to modify your answer. $\endgroup$
    – pppqqq
    Sep 29 '16 at 12:11

When I wrote this question some years ago, I was very confused about those "virtual displacements". Now I realize that analytical mechanics is one of those parts of physics where knowing the proper mathematical language, differential geometry in this case, can make your life incredibly easier.

Virtual displacements and generalized coordinates.

Lagrangian mechanics takes place on a manifold $M$, which is embedded in $\mathbb R^{3N}$ via a (possibly non constant) mapping $\iota _t$. Virtual displacements are nothing but tangent vectors to $\iota _t (M)$. When $\iota _t=\iota _0$ is constant, virtual displacements also coincide with the velocity vectors of curves on $\iota _0 (M)$.

Generalized coordinates are the charts of the base manifold $M$; my above parametrization $\mathbf r _i(q_h;t)$ can be understood as a composition: $$Q\times \mathbb R \mapsto M\times \mathbb R \mapsto \mathbb R ^{3N},$$

$$(q,t)\mapsto (x(q),t)\mapsto \iota _t(x(q))\equiv r(q,t).$$

For fixed $t_0$, $r(q,t_0)$ parametrizes $\iota _{t_0} (M)$ and therefore $\frac{\partial r}{\partial q _i}$ is a tangent vector to $\iota _{t_0} (M)$, that is, it is a virtual displacement.

To make contact with the OP, the embedding $\iota _t (M)$ is directly defined via cartesians equations: $$\phi _j (r,t)=0\qquad r\in \mathbb R ^{3N}, j=1,2,\dots ,3N-d,$$ virtual displacements are orthogonal to the $3N-d$ gradients $\nabla \phi _j$, as in equation $(*)$ of the OP. [Here $r$ denotes the $N$-tuple $r=(\mathbf r_1,\dots, \mathbf r _N)\in \mathbb R ^{3N}$]

There's actually no problem with what I said after my last equation in the OP. The first term vanishes because each $\frac{\partial r}{\partial q _i}$ is separately a tangent vector. The second term vanishes because $\frac{\partial r}{\partial t}$ is the actual velocity of a point that is stationary with respect to the base manifold $M$ (e.g., a material point stationary at $\theta =0$ of a rotating ring).


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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