Problem running symmgrp2009.max with recent versions of Maxima



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<http://inside.mines.edu/%7Ewhereman/software/symmetry/symmgrp2009/>; [http://inside.mines.edu/%7Ewhereman/new.gif] : A Macsyma/Maxima program for the calculation of Lie point symmetries of large systems of differential equations (2009). The package symmgrp2009.max works under both the commercial computer algebra system Macsyma and Maxima<http://maxima.sourceforge.net/>;, a computer algebra system which can be freely downloaded from SourceForge<http://sourceforge.net/projects/maxima/files/>;.
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)<http://inside.mines.edu/%7Ewhereman/software/symmetry/symmgrp2009/MacsymaFiles/>; or Maxima (MaximaFiles)<http://inside.mines.edu/%7Ewhereman/software/symmetry/symmgrp2009/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





Ron Wiltshire
Professor of Applied Mathematics
Head of Research
Faculty of Advanced Technology
University of Glamorgan
Pontypridd CF37 1DL

tel: +44 1443 482256
email: rjwiltsh at glam.ac.uk<mailto:rjwiltsh at glam.ac.uk>

On 9 Nov 2011, at 06:41, maxima-request at math.utexas.edu<mailto:maxima-request at math.utexas.edu> wrote:

Send Maxima mailing list submissions to
maxima at math.utexas.edu<mailto:maxima at math.utexas.edu>

To subscribe or unsubscribe via the World Wide Web, visit
http://www.math.utexas.edu/mailman/listinfo/maxima
or, via email, send a message with subject or body 'help' to
maxima-request at math.utexas.edu

You can reach the person managing the list at
maxima-owner at math.utexas.edu

When replying, please edit your Subject line so it is more specific
than "Re: Contents of Maxima digest..."


Today's Topics:

  1. Re: [Ecls-list]  writefile does not write
     (Juan Jose Garcia-Ripoll)
  2. Re: Helping out with Maxima (Robert Dodier)
  3. Third party code link broken (Richard Hennessy)
  4. integrate bessel_j errcatch? (Edwin Woollett)
  5. Re: integrate bessel_j errcatch? (Richard Fateman)
  6. Re: Third party code link broken (Richard Hennessy)
  7. Re: integrate bessel_j errcatch? (Raymond Toy)


----------------------------------------------------------------------

Message: 1
Date: Tue, 8 Nov 2011 10:35:52 +0100
From: Juan Jose Garcia-Ripoll <juanjose.garciaripoll at googlemail.com>
To: Oliver Kullmann <O.Kullmann at swansea.ac.uk>
Cc: maxima at math.utexas.edu
Subject: Re: [Maxima] [Ecls-list]  writefile does not write
Message-ID:
<CANejTzo974=9zaShHsuibrmQXYArQ34_0uZkJAmRjs41R+0Tow at mail.gmail.com>
Content-Type: text/plain; charset="iso-8859-1"

On Mon, Nov 7, 2011 at 11:13 PM, Oliver Kullmann
<O.Kullmann at swansea.ac.uk>wrote:

Would be good if also the input would appear (and a concluding end-of-line
after closefile() would likely also be good).


I am afraid this is Maxima's fault. For some reason it is reading for a
stream other than *standard-input* and does not allow the lisp to change
that value. Without this, dribble may not work. See below:

Maxima 5.25post http://maxima.sourceforge.net
using Lisp ECL 11.1.1
Distributed under the GNU Public License. See the file COPYING.
Dedicated to the memory of William Schelter.
The function bug_report() provides bug reporting information.
(%i1) :lisp (trace mread)

(MREAD)
(%i1) 3;

1> (MREAD #<input stream "stdin"> (NIL))
<1 (MREAD ((DISPLAYINPUT (0 "stdin" SRC)) NIL 3))
(%o1)                                  3
(%i2) :lisp (defparameter *my-echo* (make-echo-stream *standard-input*
*standard-output*))

*MY-ECHO*
(%i2) :lisp (setf *standard-input* *my-echo*)

#<echo stream 0000000004b53e60>
(%i2) 4;

1> (MREAD #<input stream "stdin"> (NIL))
<1 (MREAD ((DISPLAYINPUT (0 "stdin" SRC)) NIL 4))
(%o2)                                  4


--
Instituto de F?sica Fundamental, CSIC
c/ Serrano, 113b, Madrid 28006 (Spain)
http://juanjose.garciaripoll.googlepages.com

------------------------------

Message: 2
Date: Tue, 8 Nov 2011 10:17:24 -0800
From: Robert Dodier <robert.dodier at gmail.com>
To: Conrad Schiff <gravmath at yahoo.com>
Cc: Maxima Mailing List <maxima at math.utexas.edu>
Subject: Re: [Maxima] Helping out with Maxima
Message-ID:
<CAAsY_sRaL766ss=vb2cyzW01phOtC=+CxFg8mzNoa3M3nqDN4Q at mail.gmail.com>
Content-Type: text/plain; charset=ISO-8859-1

Hi Conrad, thanks for offering to help out.

I've taken the liberty of forwarding your message to the Maxima
mailing list. If anyone would like to help Conrad figure out some
things to work on, that would be terrific.

There are two general directions that come to mind. One is that
Maxima needs continuous maintenance to ensure that its
multitude of pieces, assembled over many years and touched
by many hands, continues to function as a whole. The other is
that you may have some particular experience to work on a
particular topic. Perhaps you can tell us a little bit about your
background.

Lisp is not too terribly different from other programming languages
so if you have experience in programming, I think you'll be able
to grasp Lisp as well.

All the best,

Robert Dodier


On 11/5/11, Conrad Schiff <gravmath at yahoo.com> wrote:
Robert,

 Hello my name is Conrad Schiff.  I very much appreciate the effort that
all of you put into Maxima as an open source CAS.  I was wondering if there
was any way that I might be able to help.  I've got a great deal of
experience with the development of scientific software and while I'm only a
beginner at Lisp but I might be able to help with documentation and testing.


Thanks,
Conrad


------------------------------

Message: 3
Date: Tue, 08 Nov 2011 13:58:05 -0500
From: "Richard Hennessy" <rich.hennessy at verizon.net>
To: "Maxima List" <maxima at math.utexas.edu>
Subject: Third party code link broken
Message-ID: <C22F5B68B8A24CC9BA10017497EA26E6 at RichsLaptop>
Content-Type: text/plain; charset="iso-8859-1"

I used to go to http://maxima.sourceforge.net/3rdpartycode.html and I could click on pw.mac and it would take me to a page I wrote about pw.mac.  The link is now broken and clicking it takes you to some page in Russian that says this domain name is available.  Has someone moved this page.

Rich

------------------------------

Message: 4
Date: Tue, 8 Nov 2011 12:55:38 -0800
From: "Edwin Woollett" <woollett at charter.net>
To: "maxima mailing list" <maxima at math.utexas.edu>
Subject: integrate bessel_j errcatch?
Message-ID: <E11D00BE3A7A42DB8CAA9691C9BE82DA at edwinc367e16bd>
Content-Type: text/plain; format=flowed; charset="iso-8859-1";
reply-type=original

Is it possible to return an error in bessel.lisp
when, for example, the numerical value of
a bessel function is so large that the code/system
can't cope, and the answer returned for a calculation
is completely wrong?

The example below deals only with integrate
with bessel_j, but the same problem can occur
with other bessel functions.

Here we compute the integral of bessel_j(1,%i*x)
over larger and larger ranges, until we get an
obscure error message and a completely wrong
answer.
------------------------------
(%i29) float(integrate(bessel_j(1,%i*x),x,1,10));
(%o29) 2814.450562588503*%i

(%i30) float(integrate(bessel_j(1,%i*x),x,1,100));
(%o30) 1.0737517071310738E+42*%i

(%i31) float(integrate(bessel_j(1,%i*x),x,1,500));
(%o31) 2.5048094765700785E+215*%i

(%i32) float(integrate(bessel_j(1,%i*x),x,1,700));
(%o32) 1.5295933476718737E+302*%i

(%i33) float(integrate(bessel_j(1,%i*x),x,1,800));
zbesj ierr = 2
(%o33) -1.266065877752008*%i

(%i34) errcatch (float(integrate(bessel_j(1,%i*x),x,1,800)));
zbesj ierr = 2
(%o34) [-1.266065877752008*%i]
---------------------------------------
The actual answer is about %i*3.8e345, whereas
the returned answer is the wrong sign and magnitude.

Ted Woollett





------------------------------

Message: 5
Date: Tue, 08 Nov 2011 13:42:24 -0800
From: Richard Fateman <fateman at eecs.berkeley.edu>
To: maxima at math.utexas.edu
Subject: Re: [Maxima] integrate bessel_j errcatch?
Message-ID: <4EB9A240.3010601 at eecs.berkeley.edu>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

On 11/8/2011 12:55 PM, Edwin Woollett wrote:
Is it possible to return an error in bessel.lisp
when, for example, the numerical value of
a bessel function is so large that the code/system
can't cope, and the answer returned for a calculation
is completely wrong?

The "right" solution is to roll over to another computer program that
uses bigfloats and an appropriate algorithm for the argument values, and
gives the right answer.  (This is one of the things that Mathematica
claims to do.)

RJF



------------------------------

Message: 6
Date: Tue, 08 Nov 2011 20:17:12 -0500
From: "Richard Hennessy" <rich.hennessy at verizon.net>
To: "Maxima List" <maxima at math.utexas.edu>
Subject: Re: [Maxima] Third party code link broken
Message-ID: <BD775D2DBE8A4C5693AFF72A10AB1EFB at RichsLaptop>
Content-Type: text/plain; charset="iso-8859-1"

Well, I guess the wiki is dead.  There is an older copy of the page in question at http://sourceforge.net/apps/mediawiki/piecewisefunc/index.php?title=Main_Page  I have to update it but not much has changed.  Can the link on third party code be updated to link to this page instead?

Rich


From: Richard Hennessy
Sent: Tuesday, November 08, 2011 1:58 PM
To: Maxima List
Subject: Third party code link broken

I used to go to http://maxima.sourceforge.net/3rdpartycode.html and I could click on pw.mac and it would take me to a page I wrote about pw.mac.  The link is now broken and clicking it takes you to some page in Russian that says this domain name is available.  Has someone moved this page.

Rich



--------------------------------------------------------------------------------
_______________________________________________
Maxima mailing list
Maxima at math.utexas.edu
http://www.math.utexas.edu/mailman/listinfo/maxima

------------------------------

Message: 7
Date: Tue, 08 Nov 2011 22:41:38 -0800
From: Raymond Toy <toy.raymond at gmail.com>
To: maxima at math.utexas.edu
Subject: Re: [Maxima] integrate bessel_j errcatch?
Message-ID: <4EBA20A2.10804 at gmail.com>
Content-Type: text/plain; charset=ISO-8859-1

On 11/8/11 1:42 PM, Richard Fateman wrote:
On 11/8/2011 12:55 PM, Edwin Woollett wrote:
Is it possible to return an error in bessel.lisp
when, for example, the numerical value of
a bessel function is so large that the code/system
can't cope, and the answer returned for a calculation
is completely wrong?

The "right" solution is to roll over to another computer program that
uses bigfloats and an appropriate algorithm for the argument values,
and gives the right answer.  (This is one of the things that
Mathematica claims to do.)

On the other hand, I think there's an expectation that floats are
reasonably fast.  If they automatically overflowed to bfloats, then
suddenly everything gets slower.   That would go against my expectations.

But if we signaled an error, as Ted suggests, then the user could catch
it and do something about it, including conversion to bfloats.

Ray



------------------------------

_______________________________________________
Maxima mailing list
Maxima at math.utexas.edu
http://www.math.utexas.edu/mailman/listinfo/maxima


End of Maxima Digest, Vol 64, Issue 16
**************************************