public void Negative()
        {
            Series s = new Series();

            s.Add("1/6/2006", -1);
            s.Add("1/7/2006", -40);
            s.Add("1/8/2006", -50);
            s.Add("1/9/2006", -30);

            DateTime t1 = DateTime.Parse("1/6/2006");
            DateTime t2 = DateTime.Parse("1/9/2006");

            SeriesRange sr = new SeriesRange(s, t1, t2);
            double      d  = sr.ComputeSum(1.0);

            Assert.AreEqual(-44.5, d, .01, " summed using 1 as guess for midpoint");

            sr.SmoothPreservingSum();

            Assert.AreEqual(-50, sr.MidPointValue, 0.001);


            Assert.AreEqual(-1, s[0].Value, 0.0001);
            Assert.AreEqual(-50, s[1].Value, 0.0001);
            Assert.AreEqual(-40, s[2].Value, 0.0001);
            Assert.AreEqual(-30, s[3].Value, 0.0001);
        }
        public void Basic()
        {
            Series s = new Series();
            s.Add("1/1/2006", 20);
            s.Add("1/2/2006", 20);
            s.Add("1/3/2006", 20);
            s.Add("1/4/2006", 20);
            s.Add("1/5/2006", 20);
            s.Add("1/6/2006", 20);
            s.Add("1/7/2006", -40);
            s.Add("1/8/2006", 10);
            s.Add("1/9/2006", 50);
            s.Add("1/10/2006", 20);
            s.Add("1/11/2006", 20);
            s.Add("1/12/2006", 20);
            s.Add("1/13/2006", 20);
            s.Add("1/14/2006", 20);
            s.Add("1/15/2006", 20);

            DateTime t1 = DateTime.Parse("1/6/2006");
            DateTime t2 = DateTime.Parse("1/11/2006");
               // s.WriteToConsole();

            SeriesRange sr = new SeriesRange(s, t1, t2);

            double d = sr.ComputeSum(15);

            Console.WriteLine(" \n\n sr.ComputeSum(15)= "+d);
            Assert.AreEqual(107.5, d, " summed using 15 as guess for midpoint");

            sr.SmoothPreservingSum();

            Assert.AreEqual(4,sr.MidPointValue,0.01);
        }
        public void NegativeCrossYAxis()
        {
            Series s = new Series();

            s.Add("1/6/2006", -1);
            s.Add("1/7/2006", -40);
            s.Add("1/8/2006", -50);
            s.Add("1/9/2006", -30);
            s.Add("1/10/2006", 30);

            //s.WriteToConsole();
            DateTime t1 = DateTime.Parse("1/6/2006");
            DateTime t2 = DateTime.Parse("1/10/2006");

            SeriesRange sr = new SeriesRange(s, t1, t2);
            double      d  = sr.ComputeSum(-10);

            Assert.AreEqual(23.5, d, .01, " summed using -10  as guess for midpoint");

            sr.SmoothPreservingSum();
            Assert.AreEqual(-67.25, sr.MidPointValue, 0.001);

            Assert.AreEqual(-1, s[0].Value, 0.0001);
            Assert.AreEqual(-67.25, s[2].Value, 0.0001);
            Assert.AreEqual(30, s[4].Value, 0.0001);
        }
Esempio n. 4
0
        public void GetValue_WithIndex_ReturnsValidValue()
        {
            var series = CreateSeries(new TV(1, 1), new TV(2, 2), new TV(3, 3), new TV(4, 4), new TV(5, 5));

            var range = new SeriesRange <int, int>(series, ClosedInterval.FromOffsetLength(1, 2));

            Assert.That(range[1].Value, Is.EqualTo(3));
        }
Esempio n. 5
0
        public void Count_ValidSeriesAndInterval_ReturnsValidCount()
        {
            var series = CreateSeries(new TV(1, 1), new TV(2, 2), new TV(3, 3), new TV(4, 4), new TV(5, 5));

            var range = new SeriesRange <int, int>(series, ClosedInterval.FromOffsetLength(1, 2));

            Assert.That(range.Count, Is.EqualTo(2));
        }
Esempio n. 6
0
        public void GetValue_WithIndex_ReturnsValidValue()
        {
            var series = CreateSeries( new TV( 1, 1 ), new TV( 2, 2 ), new TV( 3, 3 ), new TV( 4, 4 ), new TV( 5, 5 ) );

            var range = new SeriesRange<int, int>( series, ClosedInterval.FromOffsetLength( 1, 2 ) );

            Assert.That( range[ 1 ].Value, Is.EqualTo( 3 ) );
        }
Esempio n. 7
0
        public void Count_ValidSeriesAndInterval_ReturnsValidCount()
        {
            var series = CreateSeries( new TV( 1, 1 ), new TV( 2, 2 ), new TV( 3, 3 ), new TV( 4, 4 ), new TV( 5, 5 ) );

            var range = new SeriesRange<int, int>( series, ClosedInterval.FromOffsetLength( 1, 2 ) );

            Assert.That( range.Count, Is.EqualTo( 2 ) );
        }
Esempio n. 8
0
        public void GetEnumerator_ValidSeriesAndInterval_ReturnsValidRange()
        {
            var series = CreateSeries( new TV( 1, 1 ), new TV( 2, 2 ), new TV( 3, 3 ), new TV( 4, 4 ), new TV( 5, 5 ) );

            var range = new SeriesRange<int, int>( series, ClosedInterval.FromOffsetLength( 1, 2 ) );

            var expectedRange = new[] { new TV( 2, 2 ), new TV( 3, 3 ) };
            Assert.That( range, Is.EquivalentTo( expectedRange ) );
        }
Esempio n. 9
0
        public void GetEnumerator_ValidSeriesAndInterval_ReturnsValidRange()
        {
            var series = CreateSeries(new TV(1, 1), new TV(2, 2), new TV(3, 3), new TV(4, 4), new TV(5, 5));

            var range = new SeriesRange <int, int>(series, ClosedInterval.FromOffsetLength(1, 2));

            var expectedRange = new[] { new TV(2, 2), new TV(3, 3) };

            Assert.That(range, Is.EquivalentTo(expectedRange));
        }
Esempio n. 10
0
        private void smoothToolStripMenuItem_Click(object sender, EventArgs e)
        {
            var sel = new DataGridSelection(this.dataGridView1);

            if (sel.ValidInterpolationSelection && this.SeriesList.Count == 1)
            {
                Series      s  = this.SeriesList[0];
                SeriesRange sr = new SeriesRange(s, sel.T1, sel.T2);
                sr.SmoothPreservingSum();
            }
        }
Esempio n. 11
0
        public void Negative()
        {
            Series s = new Series();
            s.Add("1/6/2006", -1);
            s.Add("1/7/2006", -40);
            s.Add("1/8/2006", -50);
            s.Add("1/9/2006", -30);

            DateTime t1 = DateTime.Parse("1/6/2006");
            DateTime t2 = DateTime.Parse("1/9/2006");

            SeriesRange sr = new SeriesRange(s, t1, t2);
            double d = sr.ComputeSum(1.0);
            Assert.AreEqual(-44.5, d,.01, " summed using 1 as guess for midpoint");

            sr.SmoothPreservingSum();

            Assert.AreEqual(-50,sr.MidPointValue, 0.001);

            Assert.AreEqual(-1, s[0].Value,0.0001);
            Assert.AreEqual(-50, s[1].Value, 0.0001);
            Assert.AreEqual(-40, s[2].Value, 0.0001);
            Assert.AreEqual(-30, s[3].Value, 0.0001);
        }
Esempio n. 12
0
        public void Basic()
        {
            Series s = new Series();

            s.Add("1/1/2006", 20);
            s.Add("1/2/2006", 20);
            s.Add("1/3/2006", 20);
            s.Add("1/4/2006", 20);
            s.Add("1/5/2006", 20);
            s.Add("1/6/2006", 20);
            s.Add("1/7/2006", -40);
            s.Add("1/8/2006", 10);
            s.Add("1/9/2006", 50);
            s.Add("1/10/2006", 20);
            s.Add("1/11/2006", 20);
            s.Add("1/12/2006", 20);
            s.Add("1/13/2006", 20);
            s.Add("1/14/2006", 20);
            s.Add("1/15/2006", 20);

            DateTime t1 = DateTime.Parse("1/6/2006");
            DateTime t2 = DateTime.Parse("1/11/2006");
            // s.WriteToConsole();

            SeriesRange sr = new SeriesRange(s, t1, t2);

            double d = sr.ComputeSum(15);

            Console.WriteLine(" \n\n sr.ComputeSum(15)= " + d);
            Assert.AreEqual(107.5, d, " summed using 15 as guess for midpoint");

            sr.SmoothPreservingSum();


            Assert.AreEqual(4, sr.MidPointValue, 0.01);
        }
Esempio n. 13
0
        public void NegativeCrossYAxis()
        {
            Series s = new Series();

            s.Add("1/6/2006", -1);
            s.Add("1/7/2006", -40);
            s.Add("1/8/2006", -50);
            s.Add("1/9/2006", -30);
            s.Add("1/10/2006", 30);

            //s.WriteToConsole();
            DateTime t1 = DateTime.Parse("1/6/2006");
            DateTime t2 = DateTime.Parse("1/10/2006");

            SeriesRange sr = new SeriesRange(s, t1, t2);
            double d = sr.ComputeSum(-10);
            Assert.AreEqual(23.5, d, .01, " summed using -10  as guess for midpoint");

            sr.SmoothPreservingSum();
            Assert.AreEqual(-67.25, sr.MidPointValue, 0.001);

            Assert.AreEqual(-1, s[0].Value, 0.0001);
            Assert.AreEqual(-67.25, s[2].Value, 0.0001);
            Assert.AreEqual(30, s[4].Value, 0.0001);
        }
Esempio n. 14
0
        public void Ctor_EmptySet_CountIsZero()
        {
            var range = new SeriesRange <int, int>(TimedValueSeries <int, int> .Null, ClosedInterval.FromOffsetLength(1, 2));

            Assert.That(range, Is.Empty);
        }
Esempio n. 15
0
        public void Ctor_EmptySet_CountIsZero()
        {
            var range = new SeriesRange<int, int>( TimedValueSeries<int, int>.Null, ClosedInterval.FromOffsetLength( 1, 2 ) );

            Assert.That( range, Is.Empty );
        }