MathGroup Archive 2006

[Date Index] [Thread Index] [Author Index]

Search the Archive

RE: Re: Dot Product in Cylindrical Coordinates


I still want to keep this alive. Perhaps the terminology is ambiguous?

In vector calculus it is usually conventional to erect an orthonormal frame
at each point in space. So for cylindrical coordinates at the point {r,
theta, z}, we would have an orthonormal frame with unit axes pointing in the
r, theta and z directions.

Then if someone specifies a vector, its components are in terms of the
orthonormal frame. This is not the same as a set of cylindrical coordinates
with respect to the origin. When I use Sergio's vectors in that sense I
obtain 2 as the answer.

In fact, if we have an orthonormal frame field the dot product is just the
ordinary dot product. If we used a coordinate basis, which is ortho but not
normal, and specified components in terms of it, then the result would
depend on the point of application, specifically on r in this case. So it is
much more convenient to use an orthonormal frame field, and that is what is
usually done.

I don't think that is a quixotic interpretation.

So I think the VectorAnalysis DotProduct used directly on vectors is a
little trap that people can fall into.

David Park
djmp at

From: Paul Abbott [mailto:paul at]
To: mathgroup at

In article <edadqd$pgc$1 at>,
 Sergio Miguel Terrazas Porras <sterraza at> wrote:

> When I calculate the dot product of vectors {1,Pi/4,0} and {2,0,1} in
> Cylindrical Coordinates Mathematica 5.1 returns the result Sqrt[2], when
> result should be 2.

Notwithstanding several of the other responses, the result _is_ Sqrt[2].
When you write {1,Pi/4,0}, surely you mean

  {rho, phi, z} == {1, Pi/4, 0}

and _not_ that

  {x, y, z} == {1, Pi/4, 0} ?

After loading


and selecting Cylindrical coordinates,


then in cartesian coordinates, this point is

  p1 = CoordinatesToCartesian[{1, Pi/4, 0}]

  {1/Sqrt[2], 1/Sqrt[2], 0}


  p2 = CoordinatesToCartesian[{2, 0, 1}]

  {2, 0, 1}

Hence the dot product of the coordinate vectors (relative to the origin
{0,0,0}), computed in cartesian coordinates, is

  p1 . p2


This is the same result that you got, presumably using,

  DotProduct[ {1, Pi/4, 0}, {2, 0, 1} ]


Of course, if you really mean

  {x, y, z} == {1, Pi/4, 0}

then there is no need to load Calculus`VectorAnalysis`: the dot product
is just

  {1, Pi/4, 0} . {2, 0, 1}


Note that Dot is _not_ modified when this package is loaded so
Jean-Marc's response,

  {1, Pi/4, 0} . {2, 0, 1}

is bogus -- the first two lines have no effect on the third.

Modifying Andrzej's code, we have

 Simplify[(JacobianMatrix[] . p1) . (JacobianMatrix[] . p2)]



Paul Abbott                                      Phone:  61 8 6488 2734
School of Physics, M013                            Fax: +61 8 6488 1014
The University of Western Australia         (CRICOS Provider No 00126G)

  • Prev by Date: Re: Using FullSimplify to check hand algebra
  • Next by Date: Re: 2nd attempt at post with corrected code
  • Previous by thread: Re: Dot Product in Cylindrical Coordinates
  • Next by thread: RE: Re: Dot Product in Cylindrical Coordinates