Thanks for the quick help, this seems to do the trick :)
On 03/30/2011 01:30 PM, Barton Willis wrote:
> -----maxima-bounces at math.utexas.edu wrote: -----
>
>> I'm using the "intfudu" function from the "partition.mac" file for my
>> integrals (as it sometimes yields "nicer" results, see
>> http://www.math.utexas.edu/pipermail/maxima/2011/023943.html), but it
>> seems to ignore the value of the logabs-setting:
> intfudu stores antiderivatives in a Maxima hashtable, so it's possible to modify
> intfudu at a command line.
>
> (%i7) load(partition)$
>
> Find the name of the Maxima hashtable
>
> (%i8) arrays;
> (%o8) [intable,intable2]
>
> We need to modify intable; look at intable["^"]
>
> (%i9) intable["^"];
> (%o9) lambda([u,v],if freeof(%voi,u) then [u^v/log(u),diff(v,%voi)] else if freeof(%voi,v) then if v#-1 then [u^(1+v)/(1+v),diff(u,%voi)] else [log(u),diff(u,%voi)] )
>
> Cut and paste a new value for intable["^"]
>
> (%i10) intable["^"] : lambda([u,v],if freeof(%voi,u) then [u^v/log(u),diff(v,%voi)] else if freeof(%voi,v) then if v#-1 then [u^(1+v)/(1+v),diff(u,%voi)] else [log(if logabs then abs(u) else u),diff(u,%voi)] );
>
> Finally, check your work:
>
> (%i11) intfudu(1/x, x), logabs : false;
> (%o11) log(x)
>
> (%i12) intfudu(1/x,x), logabs : true;
> (%o12) log(abs(x))
>
> --Barton Willis
>