#1011 integrate(t^2*log(t)/((t^2-1)*(t^4+1)), t, 0, 1) wrong?

closed
nobody
5
2006-11-05
2006-10-23
Anonymous
No

Symbolic integration seems to return an incorrect result:

(%i1) integrate(t^2*log(t)/((t^2-1)*(t^4+1)), t, 0, 1);
(sqrt(2) + 1) %pi
(%o1) ------------------
16 sqrt(2)
(%i2) float(%);
(%o2) 1.053029287545515
(%i3) romberg(t^2*log(t)/((t^2-1)*(t^4+1)), t,
0.0000001, 0.9999999);
(%o3) 0.1806718095951
(%i4) float(%pi^2/(16*(2+sqrt(2))));
(%o4) 0.18067126259065

Discussion

  • Raymond Toy

    Raymond Toy - 2006-10-23

    Logged In: YES
    user_id=28849

    Maxima uses the substitution t = exp(-y) to change the
    integral from 0 to 1 to 0 to inf. Then it uses its routine
    to handle this infinite integral by converting it to an
    integral from minf to inf, because the integrand is even.
    Finally, it uses rectzto%pi2 to integrate this final
    integrand.

    rectzto%pi2 needs to find the poles of the denominator. I'm
    guessing it's getting that wrong.

     
  • Raymond Toy

    Raymond Toy - 2006-11-03

    Logged In: YES
    user_id=28849

    The issue appears to be in log-imag-0-2%pi. Some of the
    poles are of the form (-1)^(1/4) or sqrt(-%i). The call to
    simplify %plog(pole) doesn't actually simplify and the noun
    form is returned (I think). If we replace

    (defun log-imag-0-2%pi (x)
    (let ((plog (simplify ((%plog) ,x))))

    with

    (defun log-imag-0-2%pi (x)
    (let ((plog (simplify ($rectform `((%plog) ,x)))))

    maxima returns -(sqrt(2)-2)*%pi^2/32 which is
    .1806712625906549, which corresponds pretty well with the
    numerical result from romberg and quad_qags.

    The test suite runs fine with this change.

    I think the real problem is in the simplifier for plog, but
    I'm not too motivated in fixing that.

     
  • Raymond Toy

    Raymond Toy - 2006-11-05

    Logged In: YES
    user_id=28849

    Fixed in defint.lisp as suggested.

     
  • Raymond Toy

    Raymond Toy - 2006-11-05
    • status: open --> closed
     

Log in to post a comment.