check_eps ("jn (10, 1.0) = 2.630...*10^-11", FUNC(jn) (10, 1.0), 0.26306151236874532070e-9,
check_eps ("jn (10, 1.0) = 2.630...*10^-10", FUNC(jn) (10, 1.0), 0.26306151236874532070e-9,
jn_test (void){  errno = 0;  FUNC(jn) (1, 1);  if (errno == ENOSYS)    /* Function not implemented.  */    return;  /* jn is the Bessel function of the first kind of order n.  */  /* jn (0, x) == j0 (x)  */  check_isnan ("jn (0, NaN) = NaN", FUNC(jn) (0, nan_value));  check ("jn (0, +Inf) = 0", FUNC(jn) (0, plus_infty), 0);  check ("jn (0, -1.0) = 0.76519...", FUNC(jn) (0, -1.0), 0.76519768655796655145);  check ("jn (0, 0.0) = 1", FUNC(jn) (0, 0.0), 1.0);  check ("jn (0, 0.1) = 0.99750...", FUNC(jn) (0, 0.1), 0.99750156206604003228);  check ("jn (0, 0.7) = 0.88120...", FUNC(jn) (0, 0.7), 0.88120088860740528084);  check ("jn (0, 1.0) = 0.76519...", FUNC(jn) (0, 1.0), 0.76519768655796655145);  check_eps ("jn (0, 1.5) = 0.51182...", FUNC(jn) (0, 1.5),	     0.51182767173591812875, CHOOSE (0, 0, 6e-8));  check_eps ("jn (0, 2.0) = 0.22389...", FUNC(jn) (0, 2.0), 0.22389077914123566805,	     CHOOSE(0, 3e-17, 3e-8));  check_eps ("jn (0, 8.0) = 0.17165...", FUNC(jn) (0, 8.0), 0.17165080713755390609,	     CHOOSE(0, 0, 1.5e-8));  check_eps ("jn (0, 10.0) = -0.24593...", FUNC(jn) (0, 10.0), -0.24593576445134833520,	     CHOOSE(0, 6e-17, 4.5e-8));  /* jn (1, x) == j1 (x)  */  check_isnan ("jn (1, NaN) = NaN", FUNC(jn) (1, nan_value));  check ("jn (1, +Inf) = 0", FUNC(jn) (1, plus_infty), 0);  check_eps ("jn (1, -1.0) = -0.44005...", FUNC(jn) (1, -1.0),	     -0.44005058574493351596, CHOOSE (0, 0, 3e-8));  check ("jn (1, 0.0) = 0", FUNC(jn) (1, 0.0), 0.0);  check ("jn (1, 0.1) = 0.049937...", FUNC(jn) (1, 0.1), 0.049937526036241997556);  check ("jn (1, 0.7) = 0.32899...", FUNC(jn) (1, 0.7), 0.32899574154005894785);  check_eps ("jn (1, 1.0) = 0.44005...", FUNC(jn) (1, 1.0),	     0.44005058574493351596, CHOOSE (0, 0, 3e-8));  check_eps ("jn (1, 1.5) = 0.55793...", FUNC(jn) (1, 1.5),	     0.55793650791009964199, CHOOSE (0, 0, 6e-8));  check_eps ("jn (1, 2.0) = 0.57672...", FUNC(jn) (1, 2.0), 0.57672480775687338720,	     CHOOSE(0, 2e-16, 0));  check_eps ("jn (1, 8.0) = 0.23463...", FUNC(jn) (1, 8.0), 0.23463634685391462438,	     CHOOSE(0, 3e-17, 1.5e-8));  check_eps ("jn (1, 10.0) = 0.04347...", FUNC(jn) (1, 10.0), 0.043472746168861436670,	     CHOOSE(0, 2e-17, 7.5e-9));  /* jn (3, x)  */  check_isnan ("jn (3, NaN) = NaN", FUNC(jn) (3, nan_value));  check ("jn (3, +Inf) = 0", FUNC(jn) (3, plus_infty), 0);  check_eps ("jn (3, -1.0) = -0.01956...", FUNC(jn) (3, -1.0),	     -0.019563353982668405919, CHOOSE (0, 0, 1.9e-9));  check ("jn (3, 0.0) = 0", FUNC(jn) (3, 0.0), 0.0);  check_eps ("jn (3, 0.1) = 2.082...*10^-6", FUNC(jn) (3, 0.1), 0.000020820315754756261429,	     CHOOSE(0, 4e-21, 0));  check_eps ("jn (3, 0.7) = 0.00692...", FUNC(jn) (3, 0.7), 0.0069296548267508408077,	     CHOOSE(0, 2e-18, 5e-10));  check_eps ("jn (3, 1.0) = 0.01956...", FUNC(jn) (3, 1.0),	     0.019563353982668405919, CHOOSE (0, 0, 1.9e-9));  check_eps ("jn (3, 2.0) = 0.12894...", FUNC(jn) (3, 2.0), 0.12894324947440205110,	     CHOOSE(0, 3e-17, 3e-8));  check_eps ("jn (3, 10.0) = 0.05837...", FUNC(jn) (3, 10.0), 0.058379379305186812343,	     CHOOSE(0, 3e-17, 1.9e-8));  /*  jn (10, x)  */  check_isnan ("jn (10, NaN) = NaN", FUNC(jn) (10, nan_value));  check ("jn (10, +Inf) = 0", FUNC(jn) (10, plus_infty), 0);  check_eps ("jn (10, -1.0) = 2.6306...*10^-10", FUNC(jn) (10, -1.0), 0.26306151236874532070e-9,	     CHOOSE(0, 0, 5.6e-17));  check ("jn (10, 0) = 0", FUNC(jn) (10, 0.0), 0.0);  check_eps ("jn (10, 0.1) = 2.6905...*10^-20", FUNC(jn) (10, 0.1), 0.26905328954342155795e-19,	     CHOOSE(0, 2e-35, 9.7e-27));  check_eps ("jn (10, 0.7) = 7.517...*10^-12", FUNC(jn) (10, 0.7), 0.75175911502153953928e-11,	     CHOOSE(0, 7e-27, 1.8e-18));  check_eps ("jn (10, 1.0) = 2.630...*10^-11", FUNC(jn) (10, 1.0), 0.26306151236874532070e-9,	     CHOOSE(0, 0, 5.6e-17));  check_eps ("jn (10, 2.0) = 2.515...*10^-7", FUNC(jn) (10, 2.0), 0.25153862827167367096e-6,	     CHOOSE(0, 2e-22, 1.2e-13));  check_eps ("jn (10, 10.0) = 0.20748...", FUNC(jn) (10, 10.0), 0.20748610663335885770,	     CHOOSE(0, 2e-16, 1.4e-7));}