예제 #1
0
 /// <summary>
 /// Constructor specifying the modulus and parameter and their complements.
 /// </summary>
 /// <param name="k2">the square of the modulus <i>k</i>^2. <i>k</i>^2 must lie in (-∞, 1].</param>
 /// <param name="alpha2">the parameter α^2. α^2 must lie in (-∞, 1].</param>
 /// <param name="kp2">the complementary modulus squared <i>k'</i>^2 = 1 - <i>k</i>^2.  This must lie in [0, ∞).</param>
 /// <param name="alphap2">the complementary parameter α'^2 = 1 - α^2.  This must lie in [0, ∞).</param>
 /// <remarks>
 /// The arguments must satisfy <paramref name="k2"/> + <paramref name="kp2"/> = 1 and <paramref name="alpha2"/> + <paramref name="alphap2"/>
 /// = 1.  (No checking is done that these conditions are met.)  This
 /// constructor is provided to enable accuracy to be maintained, e.g., when
 /// <i>k</i> is very close to unity.
 /// </remarks>
 public EllipticFunction(double k2, double alpha2, double kp2, double alphap2) => Reset(k2, alpha2, kp2, alphap2);
 => Normalize4D0(i1, j1, k1, l1, i2, j2, k2, l2);
예제 #3
0
 /// <summary>
 /// Constructor specifying the modulus and parameter.
 /// </summary>
 /// <param name="k2">the square of the modulus <i>k</i>^2. <i>k</i>^2 must lie in (-∞, 1].</param>
 /// <param name="alpha2">the parameter α^2. α^2 must lie in (-∞, 1].</param>
 /// <remarks>
 /// If only elliptic integrals of the first and second kinds are needed,
 /// then set α^2 = 0 (the default value); in this case, we
 /// have Π(φ, 0, <i>k</i>) = <i>F</i>(φ, <i>k</i>), <i>G</i>(φ, 0, <i>k</i>) = <i>E</i>(φ, <i>k</i>),
 /// and <i>H</i>(φ, 0, <i>k</i>) = <i>F</i>(φ, <i>k</i>) - <i>D</i>(φ, <i>k</i>).
 /// </remarks>
 public EllipticFunction(double k2 = 0, double alpha2 = 0) => Reset(k2, alpha2);