Yup, we've decided to write custom concatenate & where methods. Thanks for all the help.


Pierre GM wrote:
On Thursday 29 March 2007 14:09:38 Bryce Hendrix wrote:
I really should widen my tests before proclaiming success... If you
change the default units to "feet", the result of concatenating two
UnitArrays instances with "meters" units is a UnitArray with "feet".

Not a surprise at all, and I should have thought about it:

concatenate creates a plain ndarray first and ends up calling 
Unit_array.__array_finalize__. As the caller has no unit yet 
(it's a plain ndarray), the result gets the Unit_array.default_unit. 

That's why you should really write a custom concatenate function that checks 
the units of its inputs, and sets the unit of the output accordingly.
Numpy-discussion mailing list