#1094 limit atanh @ -1 / 1 all wrong...

closed
nobody
None
5
2007-02-21
2007-01-29
No

limit(atanh(x),x,1) => minf NO
This should be complex infinity (INFINITY) since for x>1, the imagpart = -%pi/2

limit(2*atanh(x),x,1) =>
ERROR: The number 1 isn't in the domain of atanh
Well, that's why I'm trying to take the limit!

limit( atanh(a-1)-log(a)/2 , a, 0) => domain error
but as taylor will show you, it is finite: -log(2)/2.

Same problems at -1.

Discussion

  • Barton Willis

    Barton Willis - 2007-01-30

    Logged In: YES
    user_id=895922
    Originator: NO

    By the way, for atanh(1.0) or atanh(1.0), GCL prints a
    silly message:

    (%i45) atanh(-1.0);
    Maxima encountered a Lisp error:
    Error in PROGN [or a callee]: The argument, -1.0, is a logarithmic singularity.
    Don't be foolish, GLS.

     
  • Raymond Toy

    Raymond Toy - 2007-02-19

    Logged In: YES
    user_id=28849
    Originator: NO

    For the first limit do you really mean minf? Mine says inf. A change to simplim%atanh to take an extra arg indicating the direction and the corresponding change in simplimit to pass the extra arg fixes this issue. Maxima returns infinity for the first limit above.

    For the second, the message comes from domain-error. Changing no-err-sub to bind $errormsg to nil gets rid of the message.

    Don't know what to do about the third limit.

     
  • Raymond Toy

    Raymond Toy - 2007-02-19

    Logged In: YES
    user_id=28849
    Originator: NO

    Oh, the last limit can't be taken because HYPEREX1 doesn't bind $logarc (or $exponentialize) to T anymore. The comment says the complex plane isn't handled right. However, binding $logarc to t would allow maxima to compute the limit correctly:

    limit(atanh(a-1)-log(a)/2,a,0,'plus),logarc:true;
    -> -log(2)/2

     
  • Raymond Toy

    Raymond Toy - 2007-02-21
    • status: open --> closed
     
  • Raymond Toy

    Raymond Toy - 2007-02-21

    Logged In: YES
    user_id=28849
    Originator: NO

    Fixed in limit.lisp, rev 1.29

     

Log in to post a comment.