Problem running symmgrp2009.max with recent versions of Maxima
Subject: Problem running symmgrp2009.max with recent versions of Maxima
From: Dieter Kaiser
Date: Wed, 09 Nov 2011 21:51:07 +0100
Am Mittwoch, den 09.11.2011, 08:42 +0000 schrieb Wiltshire R J (AT):
> Dear Maxima
>
>
> First - it's a great package!
>
>
> My problem relates to the package symmgrp2009.max which runs fines
> using Maxima versions up to 5.20.1 but does not work for recent
> versions because of an apparent problem with the 'depends' function.
> Details of this package can be found at:
>
>
>
>
> http://inside.mines.edu/~whereman/software.html
>
>
> The following section gives a little more detail about the problem:
>
>
>
>
>
>
>
W. Hereman and B. Huard, symmgrp2009.max : A Macsyma/Maxima program for
the calculation of Lie point symmetries of large smstems of differential
equations (2009). The package symmgrp2009.max works under both the
commercial computer algebra system Macsyma and Maxima, a computer
algebra system which can be freely downloaded from SourceForge.
> Notes: Maxima v. 5.16.3 is prefered because wmMaxima (0.7.6) is easier
> to work with. The code symmgrp2009.max has been tested (and works
> fine) for Maxima versions 5.16.3 through 5.20.1. WARNING: the code
> does NOT WORK under Maxima v. 5.21.0 through 5.23.2 (due to a problem
> with the depends function which hopefully will be fixed in v. 5.24.0).
> Data and command files are available for either Macsyma
> (MacsymaFiles)or Maxima (MaximaFiles). The package symmgrp.max
> (written in 1991) was updated in 2006.
>
>
>
> Are you aware of this problem and if so do you know how to fix it. Any
> help would be greatly appreciated.
>
>
> Best regards - Ron Wiltshire
The problem is that the functionality of the Maxima function depends in
versiosn before Maxima 5.21 had several bugs, e.g.
ID: 893633 - depends(a,[b,b,b])
ID: 2805600 - depends() partially prevents diff() to work
One point was that depends did not correctly recurse over indirect
dependencies. Another point was, that Maxima could crash, when
expressions were part of the declared dependencies.
The dependencies are stored as a property of a symbol on the Lisp
property-list. Because of this, a clean implementation which take into
account indirect dependencies can only accept symbols, but no
expressions in dependencies.
I had no look into the code which has problems with the implementation
of depends. Perhaps we can get a small example which shows the problem.
In the Maxima tensor packages the Maxima functions for a the derivative
are replaced with own versions, because of problems with the standard
functions. Perhaps, this might be a way to solve the described problem.
Dieter Kaiser