|  |  | last edited 17 years ago by japp | 
| 1 2 3 | ||
| Editor: japp Time: 2008/10/30 08:51:21 GMT-7 | ||
| Note: | ||
added:
From japp Thu Oct 30 08:51:21 -0700 2008
From: japp
Date: Thu, 30 Oct 2008 08:51:21 -0700
Subject: 
Message-ID: <20081030085121-0700@axiom-wiki.newsynthesis.org>
Status: open => duplicate 
        
The acos and asin functions both fail when given a Complex Float argument with the value 1.0. The error message is:
>> Error detected within library code: catdef: division by zero
Presumably the problem is on line 162 of trigcat.spad, which reads:
       asin x == atan(x/sqrt(1-x**2))
Obviously, if x = 1.0, then sqrt(1-x**2) will evaluate to 0.0, resulting in division by zero. The code should probably include an explicit check for this case:
       asin x == if x = 1.0 then pi()/2 else atan(x/sqrt(1-x**2))