%o10 I mean
2009/7/28 Richard Hennessy <richhen2008 at gmail.com>
> Maxima does not work well with abs() function, I noticed. There is the
> abs_integrate.mac package and also pw.mac which can handle this function.
> (%i1) load(pw)$
> ...
>
> (%i8) display2d:false;
> (%o8) false
> (%i9) abs2signum(abs(x) - abs(x^2-1));
> (%o9) x*signum(x)-(x^2-1)*signum(x^2-1)
> (%i10) simpsignumargs(%,x);
> (%o10) x*signum(x)-(x^2-1)*signum(x-1)*signum(x+1)
> (%i11)
>
> pw.mac can work well with %o11.
>
> Rich
>
>
> 2009/7/28 Rafa? Topolnicki <rtopolnicki at o2.pl>
>
>
>> > You need to overcome the evaluation rules in sum. Here is one way to do
>> > this using a lambda-function:
>> >
>> > (%i2) load("fourie");
>> > (%o2) "/home/work/maxima/maxima-5.18.1-clisp/share/calculus/fourie.mac"
>> > (%i3) f(x):=abs(sin(x));
>> > (%o3) f(x):=abs(sin(x))
>> > (%i4) flist : fourier(f(x),x,%pi);
>> > (%t4) a[0] = 2/%pi
>> >
>> > (%t5) a[n] =
>> > 2*(cos(%pi*n)/(2*n+2)-cos(%pi*n)/(2*n-2)+1/(2*n+2)-1/(2*n-2))/%pi
>> >
>> > (%t6) b[n] = 0
>> >
>> > (%o6) [%t4,%t5,%t6]
>> > (%i7) %t5 : a[n] = 'apply(lambda([s], if s=1 then 0 else
>> > rhs(''%t5)),[n]);
>> > (%o7) a[n] = 'apply(lambda([s],
>> > if s = 1 then 0
>> > else rhs(
>> > a[n] = 2*(cos(%pi*n)/(2*n+2)
>> > -cos(%pi*n)/(2*n-2)+1/(2*n+2)
>> > -1/(2*n-2))
>> > /%pi)),[n])
>> > (%i8) fourexpand(flist,y,%pi,3)$
>> > (%i9) ev(%,nouns);
>> > (%o9) 2/%pi-4*cos(2*y)/(3*%pi)
>> >
>> >
>> > Leo
>> >
>> Thanks. I'll study your solution. I've another problem with fourie.mac
>> when expanding function with abs() - abs(x^2-1). I get coefficients for
>> x^2-1 rather then abs(x^2-1):
>>
>> a[n]=(2*((%pi^2*sin(%pi*n))/n-sin(%pi*n)/n-(2*sin(%pi*n))/n^3+(2*%pi*cos(%pi*n))/n^2))/%pi;
>> is it bug or am I doing sth wrong?
>>
>> RT
>> _______________________________________________
>> Maxima mailing list
>> Maxima at math.utexas.edu
>> http://www.math.utexas.edu/mailman/listinfo/maxima
>>
>
>