[Numpy-discussion] Binary ufuncs: add, subtract, multiply
Charles R Harris
charlesr.harris at gmail.com
Mon May 26 23:50:31 EDT 2008
Is it appropriate to produce a double for mixed 'Q','b' types? Or should we
raise a warning instead. There is a loss of precision going to doubles
anyway, and that will also often be the case for the lower precision types
when multiplying. I would also feel more comfortable if the output types
were symmetric in the underlying c-type, even though l,i are the same
precision on my machine. That might make things easier for folks using
c-types or trying to embed numpy.
add
not symmetric
in1 ? , b , B , h , H , i , I , l , L , q , Q , f , d ,
g , F , D , G ,
--------------------------------------------------------------------------------------
in2 ? | ? , b , B , h , H , i , I , i , I , q , Q , f , d ,
g , F , D , G ,
in2 b | b , b , h , h , i , i , q , i , q , q , d , f , d ,
g , F , D , G ,
in2 B | B , h , B , h , H , i , I , i , I , q , Q , f , d ,
g , F , D , G ,
in2 h | h , h , h , h , i , i , q , i , q , q , d , f , d ,
g , F , D , G ,
in2 H | H , i , H , i , H , i , I , i , I , q , Q , f , d ,
g , F , D , G ,
in2 i | i , i , i , i , i , i , q , i , q , q , d , d , d ,
g , D , D , G ,
in2 I | I , q , I , q , I , q , I , q , I , q , Q , d , d ,
g , D , D , G ,
in2 l | l , l , l , l , l , l , q , l , q , q , d , d , d ,
g , D , D , G ,
in2 L | L , q , L , q , L , q , L , q , L , q , Q , d , d ,
g , D , D , G ,
in2 q | q , q , q , q , q , q , q , q , q , q , d , d , d ,
g , D , D , G ,
in2 Q | Q , d , Q , d , Q , d , Q , d , Q , d , Q , d , d ,
g , D , D , G ,
in2 f | f , f , f , f , f , d , d , d , d , d , d , f , d ,
g , F , D , G ,
in2 d | d , d , d , d , d , d , d , d , d , d , d , d , d ,
g , D , D , G ,
in2 g | g , g , g , g , g , g , g , g , g , g , g , g , g ,
g , G , G , G ,
in2 F | F , F , F , F , F , D , D , D , D , D , D , F , D ,
G , F , D , G ,
in2 D | D , D , D , D , D , D , D , D , D , D , D , D , D ,
G , D , D , G ,
in2 G | G , G , G , G , G , G , G , G , G , G , G , G , G ,
G , G , G , G ,
subtract
not symmetric
in1 ? , b , B , h , H , i , I , l , L , q , Q , f , d ,
g , F , D , G ,
--------------------------------------------------------------------------------------
in2 ? | ? , b , B , h , H , i , I , i , I , q , Q , f , d ,
g , F , D , G ,
in2 b | b , b , h , h , i , i , q , i , q , q , d , f , d ,
g , F , D , G ,
in2 B | B , h , B , h , H , i , I , i , I , q , Q , f , d ,
g , F , D , G ,
in2 h | h , h , h , h , i , i , q , i , q , q , d , f , d ,
g , F , D , G ,
in2 H | H , i , H , i , H , i , I , i , I , q , Q , f , d ,
g , F , D , G ,
in2 i | i , i , i , i , i , i , q , i , q , q , d , d , d ,
g , D , D , G ,
in2 I | I , q , I , q , I , q , I , q , I , q , Q , d , d ,
g , D , D , G ,
in2 l | l , l , l , l , l , l , q , l , q , q , d , d , d ,
g , D , D , G ,
in2 L | L , q , L , q , L , q , L , q , L , q , Q , d , d ,
g , D , D , G ,
in2 q | q , q , q , q , q , q , q , q , q , q , d , d , d ,
g , D , D , G ,
in2 Q | Q , d , Q , d , Q , d , Q , d , Q , d , Q , d , d ,
g , D , D , G ,
in2 f | f , f , f , f , f , d , d , d , d , d , d , f , d ,
g , F , D , G ,
in2 d | d , d , d , d , d , d , d , d , d , d , d , d , d ,
g , D , D , G ,
in2 g | g , g , g , g , g , g , g , g , g , g , g , g , g ,
g , G , G , G ,
in2 F | F , F , F , F , F , D , D , D , D , D , D , F , D ,
G , F , D , G ,
in2 D | D , D , D , D , D , D , D , D , D , D , D , D , D ,
G , D , D , G ,
in2 G | G , G , G , G , G , G , G , G , G , G , G , G , G ,
G , G , G , G ,
multiply
not symmetric
in1 ? , b , B , h , H , i , I , l , L , q , Q , f , d ,
g , F , D , G ,
--------------------------------------------------------------------------------------
in2 ? | ? , b , B , h , H , i , I , i , I , q , Q , f , d ,
g , F , D , G ,
in2 b | b , b , h , h , i , i , q , i , q , q , d , f , d ,
g , F , D , G ,
in2 B | B , h , B , h , H , i , I , i , I , q , Q , f , d ,
g , F , D , G ,
in2 h | h , h , h , h , i , i , q , i , q , q , d , f , d ,
g , F , D , G ,
in2 H | H , i , H , i , H , i , I , i , I , q , Q , f , d ,
g , F , D , G ,
in2 i | i , i , i , i , i , i , q , i , q , q , d , d , d ,
g , D , D , G ,
in2 I | I , q , I , q , I , q , I , q , I , q , Q , d , d ,
g , D , D , G ,
in2 l | l , l , l , l , l , l , q , l , q , q , d , d , d ,
g , D , D , G ,
in2 L | L , q , L , q , L , q , L , q , L , q , Q , d , d ,
g , D , D , G ,
in2 q | q , q , q , q , q , q , q , q , q , q , d , d , d ,
g , D , D , G ,
in2 Q | Q , d , Q , d , Q , d , Q , d , Q , d , Q , d , d ,
g , D , D , G ,
in2 f | f , f , f , f , f , d , d , d , d , d , d , f , d ,
g , F , D , G ,
in2 d | d , d , d , d , d , d , d , d , d , d , d , d , d ,
g , D , D , G ,
in2 g | g , g , g , g , g , g , g , g , g , g , g , g , g ,
g , G , G , G ,
in2 F | F , F , F , F , F , D , D , D , D , D , D , F , D ,
G , F , D , G ,
in2 D | D , D , D , D , D , D , D , D , D , D , D , D , D ,
G , D , D , G ,
in2 G | G , G , G , G , G , G , G , G , G , G , G , G , G ,
G , G , G , G ,
Chuck
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20080526/a3ed2b1a/attachment.html>
More information about the NumPy-Discussion
mailing list