Boost logo

Boost :

From: Jens Maurer (Jens.Maurer_at_[hidden])
Date: 2001-01-06 06:39:09

Dean Calver wrote:
> I think quaternions would be a good library to add to Boost. I (like
> everybody else it seems) have my own (well several actually).

I also support adding more numerics to boost. We already have
rational numbers for a start.

 - This is the first time I hear about quarternions and octonions. You
may consider that a defect in my education. Anyhow, any such submission
should include some not too formal introduction telling what they are.
For example, for complex numbers, I would expect at least

  z = a + b*i is a complex number for some reals a and b; treat "i" as
any variable and apply usual arithmetic rules except that i*i = -1.

(You may want to elaborate on sqrt and ln and exp as well.)

 - In general, I prefer simple, platform-independent implementations
over overly complex ones, even though these may have better performance.
For example, a boost "bigint" library should use the obvious algorithms
and possibly optionally provide an interface to the GNU MP library for
those who need serious performance.

 - All math classes should work together seamlessly: quarternions of
rationals of bigint's should be no problem.

> I also am wondering about numeric classes being added to Boost, I have
> numerous times written vector (mathematical) and matrix templates classes
> and they would seem to be obvious additions (I mean relatively simple matrix
> classes rather than blitz++ complexity) ideally we would want a generic
> tensor class. In almost all mathematically complex fields (personally I've
> needed them for graphics, physics, combinatrics, numerical analysis and even
> quantum computing) the need for the more complex (no pun intended) maths
> classes often occur.

The STL valarray specification seems to require some surgery (read: bug-fixing)
as well. I would be pleased if any effort regarding boost vector/matrix
classes could have an eye on that (or state that valarray is completely
obsoleted by the vector/matrix classes).

Jens Maurer

Boost list run by bdawes at, gregod at, cpdaniel at, john at