> From: Dan Hatton [mailto:vi5u0-maxima at yahoo.co.uk]
> Subject: Re: [Maxima] how to allocate more memory?
>
>
> On Mon, 5 Jun 2006, Robert Dodier wrote:
>
> > You will probably have to help Maxima find a solution, by
> (say) applying
> > some kind of divide and conquer. I don't know if that's
> possible in the
> > problem that you are working on.
>
> Thanks for the advice. By "divide and conquer," do you mean something
> like:
>
> x^2+y = x/(1-y^2) ;
> solve(%, x) ;
> x : ev(x, %) ;
> (3*x+y^3)/(1+x) = x*y-x^3 ;
> solve(%, y) ;
> y : ev(y, %) ;
>
> as opposed to
>
> x^2+y = x/(1-y^2) ;
> (3*x+y^3)/(1+x) = x*y-x^3 ;
> solve([%th(1), %th(2)], [x, y]) ;
>
> ?
>
> The former is what I'm doing at the moment, although I've also tried
> the latter in the past. Maxima has managed to come up with
> expressions for nine of the eleven variables I'm trying to solve for,
> and is currently working on the tenth. Still no sign of out-of-memory
> errors with the recompiled GCL. I'm not inclined to give up on the
> current run yet: although Maxima has been running the calculation for
> four days, it's only applied about half an hour of CPU time to it,
> presumably because it's having to spend most of the time waiting for
> swap, due to the huge memory demand.
>
>
I have found an Axiom function called groebnerFactorize has helped me a lot
in a case where my problem produced a lot of physically unrealistic
branches. It basically was more stable than solve(). Although a subsequent
solve() call was required, a lot of dead ends (solutions of no interest)
were avoided.
A reference is:
http://www.ricam.oeaw.ac.at/srs/groeb/download/06_02_Solver.pdf
RayRogers