public static void DifferentialSecond(double position, double expectedValueX, double expectedValueY)
        {
            CartesianParametricEquationXY parametricPrimeSecond = parametric.DifferentialSecond();

            double xValue = parametricPrimeSecond.Xcomponent.ValueAt(position);

            Assert.AreEqual(expectedValueX, xValue);
            double yValue = parametricPrimeSecond.Ycomponent.ValueAt(position);

            Assert.AreEqual(expectedValueY, yValue);

            // No third differential
            Assert.IsFalse(parametricPrimeSecond.HasDifferential());
        }
        public static void Differentiate_Differentiates_Equations(double position,
                                                                  double expectedX, double expectedY,
                                                                  double expectedXPrime, double expectedYPrime,
                                                                  double expectedXPrimePrime, double expectedYPrimePrime)
        {
            // Base function
            double xValue = parametric.Xcomponent.ValueAt(position);

            Assert.AreEqual(expectedX, xValue);
            double yValue = parametric.Ycomponent.ValueAt(position);

            Assert.AreEqual(expectedY, yValue);

            // First differential
            Assert.IsTrue(parametric.HasDifferential());
            CartesianParametricEquationXY parametricPrime = parametric.Differentiate();
            double xValuePrime = parametricPrime.Xcomponent.ValueAt(position);

            Assert.AreEqual(expectedXPrime, xValuePrime);
            double yValuePrime = parametricPrime.Ycomponent.ValueAt(position);

            Assert.AreEqual(expectedYPrime, yValuePrime);

            // Second differential
            Assert.IsTrue(parametricPrime.HasDifferential());
            CartesianParametricEquationXY parametricPrimePrime = parametricPrime.Differentiate();
            double xValuePrimePrime = parametricPrimePrime.Xcomponent.ValueAt(position);

            Assert.AreEqual(expectedXPrimePrime, xValuePrimePrime);
            double yValuePrimePrime = parametricPrimePrime.Ycomponent.ValueAt(position);

            Assert.AreEqual(expectedYPrimePrime, yValuePrimePrime);

            // No third differential
            Assert.IsFalse(parametricPrimePrime.HasDifferential());
        }
Пример #3
0
 /// <summary>
 /// Determines whether this instance can be differentiated further.
 /// </summary>
 /// <returns><c>true</c> if this instance has differential; otherwise, <c>false</c>.</returns>
 public bool HasDifferential()
 {
     return(_curveParametric.HasDifferential());
 }