0
Fixed

# Airy Functions of Imaginary Argument

Tom Wallace 7 jaar geleden bijgewerkt door Pavel Holoborodko 7 jaar geleden

There appears to be an error in computing the values of Airy functions and their derivatives of purely imaginary argument unless z is exactly 0. For example:

>> z = 1i; [ airy(0, z) airy(1, z) airy(2, z) airy(3, z) ].'

ans =

0.331493305432141 -     0.317449858968444i
-0.432492659841807 +    0.0980478562292432i
0.648858208330395 +     0.344958634768048i
0.135026646710819 -     0.128837386781255i

>> z = mp('1i'); [ airy(0, z) airy(1, z) airy(2, z) airy(3, z) ].'

ans =

0
0
0
0

This bug seems to affect only values of z with exactly zero real part:

>> z = mp('1e-100+1i'); [ airy(0, z) airy(1, z) airy(2, z) airy(3, z) ].'

ans =

0.3314933054321411889845293326171343 -      0.3174498589684437734776429279092585i
-0.4324926598418070993062086217182285 +     0.09804785622924323238379104639440311i
0.648858208330394944584847653172865 +      0.3449586347680483702471086086672932i
0.1350266467108189726991698591958052 -       0.128837386781254879039817640967921i

Mathematica, for comparison

In[9]:= N[ { AiryAi[I], D[AiryAi[x], x] /. x -> I,  AiryBi[I],  D[AiryBi[x], x] /. x -> I }, 34]

Out[9]= {0.3314933054321411889845293326171343 -   0.3174498589684437734776429279092585 I,
-0.4324926598418070993062086217182286 +   0.0980478562292432323837910463944031 I,
0.6488582083303949445848476531728650 +   0.3449586347680483702471086086672933 I,
0.1350266467108189726991698591958051 -   0.1288373867812548790398176409679211 I}

Fixed

Thank you very much for the bug report!

It has been fixed in development trunk. Updated toolbox installations will be available soon.

As a quick workaround, please copy file [1] into toolbox_root\private folder.

Thank you!

New version of toolbox is available for Windows: http://goo.gl/pMXV3

It includes fix for the bug.