Thanks for the reply. <br><br>Yes never mind the second issue, I had myself confused there.<br><br>Any comments on the memory leak?<br><br><div class="gmail_quote">On Tue, Mar 9, 2010 at 5:55 PM,  <span dir="ltr"><<a href="mailto:josef.pktd@gmail.com">josef.pktd@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="im">On Tue, Mar 9, 2010 at 12:31 PM, David Paul Reichert<br>
<<a href="mailto:D.P.Reichert@sms.ed.ac.uk">D.P.Reichert@sms.ed.ac.uk</a>> wrote:<br>
> Hi,<br>
><br>
> I've got two issues:<br>
><br>
> First, the following seems to cause a memory leak,<br>
> using numpy 1.3.0:<br>
><br>
> a = matrix(ones(1))<br>
><br>
> while True:<br>
>    a += 0<br>
><br>
><br>
> This only seems to happen when a is a matrix rather<br>
> than an array, and when the short hand '+=' is used.<br>
><br>
> Second, I'm not sure whether that's a bug or whether<br>
> I just don't understand what's going on, but when a is a column<br>
> array, (e.g. a = ones((10, 1))), then<br>
><br>
> a -= a[0,:]<br>
><br>
> only subtracts from a[0, 0], whereas not using the short hand<br>
> or using something else than a on the righthand side seems<br>
> to subtract from all rows as expected.<br>
<br>
</div>this is because a[0,0] is set to zero after the first inplace<br>
subtraction, then zero is subtracted from all other rows<br>
<br>
>>> a = np.ones((10, 1))<br>
>>> a<br>
array([[ 1.],<br>
       [ 1.],<br>
       [ 1.],<br>
       [ 1.],<br>
       [ 1.],<br>
       [ 1.],<br>
       [ 1.],<br>
       [ 1.],<br>
       [ 1.],<br>
       [ 1.]])<br>
>>> a += a[0,:]<br>
>>> a<br>
array([[ 2.],<br>
       [ 3.],<br>
       [ 3.],<br>
       [ 3.],<br>
       [ 3.],<br>
       [ 3.],<br>
       [ 3.],<br>
       [ 3.],<br>
       [ 3.],<br>
       [ 3.]])<br>
>>> a -= a[0,:]<br>
>>> a<br>
array([[ 0.],<br>
       [ 3.],<br>
       [ 3.],<br>
       [ 3.],<br>
       [ 3.],<br>
       [ 3.],<br>
       [ 3.],<br>
       [ 3.],<br>
       [ 3.],<br>
       [ 3.]])<br>
<br>
Josef<br>
<div><div></div><div class="h5"><br>
<br>
><br>
> Thanks a lot,<br>
><br>
> David<br>
><br>
> --<br>
> The University of Edinburgh is a charitable body, registered in<br>
> Scotland, with registration number SC005336.<br>
><br>
><br>
> _______________________________________________<br>
> NumPy-Discussion mailing list<br>
> <a href="mailto:NumPy-Discussion@scipy.org">NumPy-Discussion@scipy.org</a><br>
> <a href="http://mail.scipy.org/mailman/listinfo/numpy-discussion" target="_blank">http://mail.scipy.org/mailman/listinfo/numpy-discussion</a><br>
><br>
_______________________________________________<br>
NumPy-Discussion mailing list<br>
<a href="mailto:NumPy-Discussion@scipy.org">NumPy-Discussion@scipy.org</a><br>
<a href="http://mail.scipy.org/mailman/listinfo/numpy-discussion" target="_blank">http://mail.scipy.org/mailman/listinfo/numpy-discussion</a><br>
<br>
</div></div></blockquote></div><br>