if the result of solve is very large, you could try using inpart instead of
part.
there is also a flag called, I think, keepsolve, which will in fact assign
to k4 the value that solve finds.
RJF
----- Original Message -----
From: "Robert Dodier" <robert.dodier at gmail.com>
To: "Gloeckner, Robert" <RGloeckner at dki.tu-darmstadt.de>
Cc: "Maxima List" <maxima at math.utexas.edu>
Sent: Thursday, January 12, 2006 11:01 PM
Subject: Re: [Maxima] solving strategy, getting float-numbers?
> hi robert,
>
>> /* k1 k2 k3 k4 k7 v1a v2a v2b v3 v5a */
>> k4 : part( part( solve( ev( v6), k4), 1), 2);
>
> this step (in the symbol solving stuff) seem to take forever.
> v6 is a very large expression. i don't see that there is anything
> wrong with it, except its size.
>
>> for f in ['k1, 'k2, 'k3, 'k4, 'k5, 'k6, 'k7] do print( f = ev( f,
>> numer));
>
> try this instead:
>
> for f in ['k1, 'k2, 'k3, 'k4, 'k5, 'k6, 'k7] do block ([g: ev(f)],
> print(f=ev(g,numer)));
>
> (i.e., cause another evaluation.) for that i get the following:
>
> k1 = - 791.5556605291486
> k2 = 172.9346332263238
> k3 = - 1979.889151322858
> k4 = 881.3195572771623
> k5 = - 0.0029595779733675
> k6 = 0.05 (6.283185307179586 %i + 3.356897122765576)
> k7 = 1.0580991179958923E-15
>
> maybe the imaginary unit in k6 is due to choosing a complex
> root at some step of the calculation instead of a real root.
> i didn't investigate that.
>
> hope this helps,
> robert dodier
>
> _______________________________________________
> Maxima mailing list
> Maxima at math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima
>