On Thu, Mar 1, 2012 at 10:43 AM, Edwin Woollett <woollett at charter.net>wrote:
> On Feb. 29, 2012, Raymond Toy wrote
>
> Still need to make bessel_i(n,%i*float)
>> return a purely imaginary result, though. bessel_j apparently already
>> does this.
>>
>
> I use the blunt force tool fchop in my work:
>
>
That is pretty blunt. :-)
Anyway, I've checked in a couple of changes. Thus, since %iargs defaults
to true,
(%i2) bessel_j(1,%i*x);
(%o2) %i*bessel_i(1,x)
(%i3) bessel_i(1,%i*x);
(%o3) %i*bessel_j(1,x)
(%i4) %iargs:false;
(%o4) false
(%i5) bessel_j(1,%i*x);
(%o5) bessel_j(1,%i*x)
(%i6) bessel_i(1,%i*x);
(%o6) bessel_i(1,%i*x)
(%i7) quad_qags(imagpart(bessel_i(1,%i*x)),x,1,2);
(%o7) [.5413069074167308,6.009713920026927e-15,21,0]
I think in this case you can download src/bessel.lisp and compile and load
it into your lisp to test it. That's what I did when developing this.
Ray