public void JacobiAmDoubleTest() { for (int i = 0; i < jacobiData.Length; i += 5) { var z = jacobiData[i]; var m = jacobiData[i + 1]; var sn = jacobiData[i + 3]; var ex = Math.Asin(sn); var am = Jacobi.am(z, m); var err = Math.Abs(am - ex) / Math.Abs(ex); Assert.IsTrue(err < 1e-14); var f = Jacobi.amDouble(m); var am2 = f(z); Assert.AreEqual(am, am2); } }