Subject: Maxima: simplification function error message.
From: C. Frangos
Date: Tue, 11 Sep 2007 09:44:42 +0200
I am applying my own simplification function mysimprec.mac (in Maxima 5.10
and 5.12) to a complicated expression and running the program in the
backround under suse linux 10.2.
After some time I obtain the following error at the linux command line:
*A2 gc_alloc_new_region failed, nbytes=8.
CMUCL has run out of dynamic heap space (512 MB).
You can control heap size with the -dynamic-space-size commandline option.
Help! 12 nested errors. KERNEL:*MAXIMUM-ERROR-DEPTH* exceeded.
Received EOF on *standard-input*, switching to *terminal-io*.
*
For the same function mysimprec.mac and another error reported to the list
recently, Stavros suggested the global settings: gcd : spmod,
algebraic : true. I am now using this and have obtained a significant
improvement. Thanks again Stavro !
Maybe setting other global variables, or possibly applying the built-in
Maxima simplification functions in a different manner in mysimprec.mac ,
can help in the simplification of very large expressions ?
Any assistance would be very much appreciated.
C. Frangos.
mysimprec(s) := block(
[indexlist,sx,nf,listsimpf,nsx,nmin,simpf,sxnew],
/*listsimpf : [trigexpand, fullratsimp, trigsimp, factor, trigreduce],*/
/*listsimpf : [fullratsimp, trigrat, trigsimp, factor, trigreduce,
dividethru],*/
listsimpf : [fullratsimp, trigsimp, factor, trigreduce, dividethru],
/*listsimpf : [fullratsimp, trigsimp, factor, trigreduce],*/
nf : length(listsimpf),
sx : s,
nmin : length(string(sx)),
indexlist : [nmin],
for i1 : 1 thru nf do (
simpf : listsimpf[i1],
sxnew : apply(simpf,[sx]),
nsx : length(string(sxnew)),
if (nsx < nmin) then (
indexlist : endcons(simpf,indexlist),
indexlist : endcons(nsx,indexlist),
sx : sxnew,
nmin : nsx
)
),
display(indexlist),
return(sx)
);