Boost logo

Boost :

From: Ken Hagan (K.Hagan_at_[hidden])
Date: 2004-06-11 06:23:50


Johannes Brunen wrote:
>
> I see a time comming that you learn GA in high school. Every physics
> student will be learning GA once it has found its way to the
> theoretical courses. Thereafter GA will gain room in the engineering
> fields.

I'm inclined to agree. I don't know of any calculations which are
made more complicated by GA and plenty that are simplified, so it
is really only a matter of time. Still, I've been holding my breath
for well over a decade now and I'm starting to feel funny. :)

> If you are pleased with your tools that is fine. But there are other
> people which could benefit a lot from a well shaped GA package.

Again, agreed. I made the remark simply because I couldn't, with
any honesty, promise to give my time to help. Happily, other people
seem to be better placed in this respect.

> At first I wrote 'I second that!', but I have a problem with the part
> about complex numbers. GA is not a replacement for std::complex.

Why not? Complex numbers are simply 2D spinors. From a mathematical
standpoint, there's nothing I can do with std::complex that I wouldn't
be able to do with a full GA library. My question was simply whether
something like a templated typedef could be used to redirect existing
uses of std::complex to the 2D spinor provided by Jaap's library.

Existing code would not (by assumption) require any changes and so
programmers who only know about std::complex would not have to be
aware of the larger library. However, those who were aware of GA
would be saved the pain of interfacing to other code that had been
written for std::complex.

A year or so ago, there was a discussion/request in either csc++ or
clc++m about whether std::complex was or should be layout compatible
with Fortran's COMPLEX type. This sort of thing is a real issue for
many scientific programmers. Presumably Jaap's 2D spinor is layout
compatible with any other "complex" type. I'm suggesting that it
would be desirable also to be type-compatible with the existing C++
complex type, if that can be achieved by reasonable means.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk