Пример #1
0
        public void TestDefaultSample()
        {
            var myCos = new Sinusoid();

            Assert.AreEqual(1, myCos.sample(0), 0.001, "Sample failed -- default cosine -- t = 0.");
            Assert.AreEqual(0, myCos.sample((1.0 / 2) * Math.PI), 0.001, "Sample failed -- default cosine -- t = pi.");
            Assert.AreEqual(-1, myCos.sample(1 * Math.PI), 0.001, "Sample failed -- default cosine -- t = 3/2 * pi.");
            Assert.AreEqual(0, myCos.sample((3.0 / 2) * Math.PI), 0.001, "Sample failed -- default cosine -- t = 2 * pi");
        }
Пример #2
0
        public void TestSample()
        {
            // A, w, phi, y_offset
            var myCos = new Sinusoid(0.5, 20.5, 0.25, 0.1);

            double[] t = { 0.012195122, 0.088819333, 0.165443544, 0.242067755 };

            Assert.AreEqual(0.6, myCos.sample(t[0]), 0.001, "Sample failed -- example cosine -- t = 0");
            Assert.AreEqual(0.1, myCos.sample(t[1]), 0.001, "Sample failed -- example cosine -- t = 1/4 period");
            Assert.AreEqual(-0.4, myCos.sample(t[2]), 0.001, "Sample failed -- example cosine -- t = 1/2 period");
            Assert.AreEqual(0.1, myCos.sample(t[3]), 0.001, "Sample failed -- example cosine -- t = 3/4 period");
        }
Пример #3
0
        public void TestSetPhase()
        {
            var myCos = new Sinusoid();

            myCos.Phase = 90; // degrees
            Assert.AreEqual(90, myCos.Phase, 0.001, "Failed to set phase.");
            Assert.AreEqual(0, myCos.sample((1 / 2) * Math.PI), 0.001, "Sampled value of 90 deg shifted wave not expected.");
        }
Пример #4
0
        public void TestSetFrequency()
        {
            var myCos = new Sinusoid();

            myCos.Frequency = 440; // Hz.
            Assert.AreEqual(440, myCos.Frequency, 0.001, "Failed to set frequency.");
            Assert.AreEqual(-1, myCos.sample(0.001136364), 0.001, "Sampled value of 440 Hz wave not expected.");
        }
Пример #5
0
        public void TestSetOffset()
        {
            var myCos = new Sinusoid();

            myCos.Offset = 2;
            Assert.AreEqual(2, myCos.Offset, 0.001, "Failed to set offset.");
            Assert.AreEqual(3, myCos.sample(0), 0.001, "Sampled value of offset wave not expected.");
        }