2011/6/30 Thomas K Gamble <tkgam...@windstream.net> > I'm trying to convert some IDL code to python/numpy and i'm having some > trouble understanding the rules for boradcasting during some operations. > example: > > given the following arrays: > a = array((2048,3577), dtype=float) > b = array((256,25088), dtype=float) > c = array((2048,3136), dtype=float) > d = array((2048,3136), dtype=float) > > do: > a = b * c + d > > In IDL, the computation is done without complaint and all array sizes are > preserved. In ptyhon I get a value error concerning broadcasting. I can > force it to work by taking slices, but the resulting size would be a = > (256x3136) rather than (2048x3577). I admit that I don't understand IDL > (or > python to be honest) well enough to know how it handles this to be able to > replicate the result properly. Does it only operate on the smallest > dimensions ignoring the larger indices leaving their values unchanged? Can > someone explain this to me? > > -- > Thomas K. Gamble tkgam...@windstream.net > _______________________________________________ > NumPy-Discussion mailing list > NumPy-Discussion@scipy.org > http://mail.scipy.org/mailman/listinfo/numpy-discussion >
It should be all explained here: http://docs.scipy.org/doc/numpy/user/basics.broadcasting.html -=- Olivier
_______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion