var bessely/*:BesselF*/ = (function() { var W = 0.636619772; var b0_a1a = [-2957821389.0, 7062834065.0, -512359803.6, 10879881.29, -86327.92757, 228.4622733].reverse(); var b0_a2a = [40076544269.0, 745249964.8, 7189466.438, 47447.26470, 226.1030244, 1.0].reverse(); var b0_a1b = [1.0, -0.1098628627e-2, 0.2734510407e-4, -0.2073370639e-5, 0.2093887211e-6].reverse(); var b0_a2b = [-0.1562499995e-1, 0.1430488765e-3, -0.6911147651e-5, 0.7621095161e-6, -0.934945152e-7].reverse(); function bessel0(x/*:number*/)/*:number*/ { var a=0, a1=0, a2=0, y = x * x, xx = x - 0.785398164; if(x < 8) { a1 = _horner(b0_a1a, y); a2 = _horner(b0_a2a, y); a = a1/a2 + W * besselj(x,0) * M.log(x); } else { y = 64 / y; a1 = _horner(b0_a1b, y); a2 = _horner(b0_a2b, y); a = M.sqrt(W/x)*(M.sin(xx)*a1+M.cos(xx)*a2*8/x); } return a; } var b1_a1a = [-0.4900604943e13, 0.1275274390e13, -0.5153438139e11, 0.7349264551e9, -0.4237922726e7, 0.8511937935e4].reverse(); var b1_a2a = [0.2499580570e14, 0.4244419664e12, 0.3733650367e10, 0.2245904002e8, 0.1020426050e6, 0.3549632885e3, 1].reverse(); var b1_a1b = [1.0, 0.183105e-2, -0.3516396496e-4, 0.2457520174e-5, -0.240337019e-6].reverse(); var b1_a2b = [0.04687499995, -0.2002690873e-3, 0.8449199096e-5, -0.88228987e-6, 0.105787412e-6].reverse(); function bessel1(x/*:number*/)/*:number*/ { var a=0, a1=0, a2=0, y = x*x, xx = x - 2.356194491; if(x < 8) { a1 = x*_horner(b1_a1a, y); a2 = _horner(b1_a2a, y); a = a1/a2 + W * (besselj(x,1) * M.log(x) - 1 / x); } else { y = 64 / y; a1=_horner(b1_a1b, y); a2=_horner(b1_a2b, y); a=M.sqrt(W/x)*(M.sin(xx)*a1+M.cos(xx)*a2*8/x); } return a; } return _bessel_wrap(bessel0, bessel1, 'BESSELY', 1, -1); })();