
Somewhere in the E.U., le 29/11/2004 Bonjour In article <41A9F3EC.6010305@chello.at>, Roland Schwarz <roland.schwarz@chello.at> wrote:
Hubert Holin wrote:
It is interesting if, for instance, you have to track an object along an orbit for a very long time. Using the canonical ("cartesian") representation usually entails transcendental functions (say sine and cosine), for which it is very hard to guaranty the accuracy (of a given, one-size-fits-all, implementation) for big values of the argument. If you integrate numerically, you all the more want to stay in the polar domain (unless we cross the singularity, but we are not modeling missiles, are we ;-) ? ).
Excuse me, but this does not convince me. First I cannot see easily how complex numbers enter into the picture (but this might be due to my lack of knowledge in that domain), and then you need to use sine and cosine only ever if you are using polar _and_ cartesian coordinates at the _same_ time. Even if so, you could formulate your algorithm in the cartesian domain and need sine and cosine only at the last stage to transform the whole trace back to polar representation (if ever needed). But I admit these arguments are all very vaguely and don't make sense as long as not refering to a concrete algorithm.
Let's look at the following problem: you have an abject in a plane (i.e., this is a two-dimensional problem), for which you know the equation of motion. As we are in a plane, and we have chosen an origin and axes, we can represent a point either by its coordinate vector or by a complex number. That's how complex numbers enter the scene. Say in our frame the equation of motion is (warning: ASCII "art"): [x]' [ 0 -1] [x] [y] = [+1 0] [y] Using complex numbers, in this case the equation is z' = iz. You can clearly find the analytic solution to this one, but were you to try and integrate numerically, you would (depending on QOI, of course, but I have yet to see an I with sufficient Q for this...) rapidly see that the cartesian version rather rapidly spouts nonsense (you can even predict how fast using the usual techniques), while the polar version would be far more accurate. This example, of course, is but a toy (though one which has real-world uses, I even published an article about some ;-) ). But is really is a model for genuine real-world problems. [Digression: we *really* need a living, standard or semi-standard free library dealing with optimization, integration, etc., in addition to (and in some cases to help with) special functions.] [SNIP]
I am somewhat knowledgeable in the domain of signal processing, and as far as I can tell one will not really benefit much from a polar representation in this field at all.
Having said this I do not think it is of no use to think about having such a type. I'd rather suggest pointing out first some concrete examples or algorithms that really benefit from it.
See the OP's other examples.
Roland
BTW.: Wouldn't tracking of an object in an orbit rather require rotations (i.e. quaternions) instead of complex numbers?
In three dimensions quaternions are useful to represent rotations (the unit sphere of the quaternions "unwraps" the rotations of R^3 in roughly the same way the unit circle of the complexes "unwraps" the rotations of R^2). Quite often an object in orbit in three dimensions around some other body is (as a first approximation, when perturbations are not too great) bound to a plane. Hubert Holin