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' :) -- Всего хорошего, Кирилл. --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---