On Thu, Jun 26, 2008 at 7:17 PM, Kirill Smelkov
<[EMAIL PROTECTED]> wrote:
>
> On Wed, Jun 25, 2008 at 02:59:53PM +0200, Ondrej Certik wrote:
>>
>> On Sun, Jun 22, 2008 at 5:39 PM, Riccardo Gori <[EMAIL PROTECTED]> wrote:
>> >
>> > On Sunday 22 June 2008 12:47:38 physnut wrote:
>> >> hello there, i'm only new to this project (and haven't started helping
>> >> at all
>> >> yet...) but wouldn't it be better to retain both versions and give
>> >> them
>> >> slightly different names (and explain there are two in docstrings)?  I
>> >> am
>> >> presuming that the version which modifies the matrix in situ is faster
>> >> and/or
>> >> uses lower memory for lots of large matrices?  From a CAS standpoint I
>> >> agree
>> >> with the convenience of making a new matrix, but I am probably not
>> >> alone in
>> >> wanting to use symbolic mathematics as part of the internals of my
>> >> program
>> >> and since I am running a home cluster the more efficient the code, the
>> >> smaller
>> >> my electricity bill is!!
>> >>
>> >
>> > Hello,
>> > I can suggest a solution:
>> > we could implement expand (and the other functions as applyfunc, diff, 
>> > etc...)
>> > in that way:
>> >
>> > def function(self,modint=False):
>> >        if modint:
>> >                modify(self)
>> >        else:
>> >                return new_modified
>> >
>> > The version that modify the matrix is 15-20% faster, and uses lot less 
>> > memory
>> > (I don't know how to measure it, with a big matrix and using top I can see
>> > 35-40% less memory used, but this is not a good method to measure)
>>
>> What others think about this? What does Sage/numpy and other CAS systems do?
>
> I think inplace operations are important, especially for large matrices.
>
> And also I think 'inplace' keyword is more appropriate for what we'are
> try to do:
>
>  def function(self, inplace=False):
>      ...
>
> So I'm for 'inplace' :)

Yes, me too.

Ondrej

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To post to this group, send email to sympy@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sympy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to