octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Can we freely use AMOS in Octave?


From: Steven G. Johnson
Subject: Re: Can we freely use AMOS in Octave?
Date: Sat, 18 Aug 2012 09:36:31 -0400
User-agent: Thunderbird 2.0.0.24 (Macintosh/20100228)

Dmitri A. Sergatskov wrote:
On Fri, Aug 10, 2012 at 12:14 PM, Steven G. Johnson
<address@hidden> wrote:

As an alternative, I am evaluating a package called COULCC (also written
in the 1980s).  COULCC, like AMOS, was also posted without a copyright
license, and later published in a journal (Computer Physics Communications, CPC:
see http://dx.doi.org/10.1016/0010-4655(85)90025-6 ) that distributes
code under a semi-free (non-commercial-use) license.  However, CPC (unlike
ACM) explicitly says that authors retain the copyright on the code, and
I was able to contact the COULCC author yesterday and graciously provided
me with a version of his code under the MIT/X11 license.

COULCC has some potential technical advantages over AMOS, separate from
the legal questions.  It can evaluate Bessel functions of complex order
in addition to complex arguments (AMOS only handles complex arguments
and real orders), and has routines to compute J and Y simultaneously,
as well as variants (modified Bessel functions, spherical Bessel
functions, Hankel functions, exponentially scaled Bessel and Hankel
functions, and Coulomb wavefunctions).

(COULCC was originally written in Fortran 77, but the version I now have
has been updated with a little bit of Fortran 90 code.  It probably
requires a bit of work to make it convenient to call from C/C++, and is
currently non-reentrant.)


It appears to me that COULCC is a part of the Fresco coide
http://www.fresco.org.uk/download.htm
with a FRES version available "for public distribution"
(I do not see an explicit licensing):

http://www.fresco.org.uk/source/fres-v29.html

I received a copy of COULCC with an explicit MIT/X11 license directly from the original author. This version of the code (including the permission email from the author), along with a re-entrant C++ translation that I created (semi-automated, but not f2c), is available at:

    http://jdj.mit.edu/~stevenj/coulcc-20120813.tgz

However, the code (both the Fortran original and my C++ translation) has a problem that turned up in my evaluation: it has significantly worse accuracy than AMOS for some moderate-size Bessel orders (~ 10). The original author is taking a look at this, but at the moment it may be problematic as a drop-in replacement for AMOS.

However, AMOS's inclusion in SLATEC, which has an explicit public-domain statement by the national laboratories, seems like it may fix the licensing problem with AMOS and eliminate the need for ACM permission.

Steven




reply via email to

[Prev in Thread] Current Thread [Next in Thread]