Ejemplo n.º 1
0
        public void CalculateVectorTest()
        {
            //Logical data test
            MathCalcUtility utility = new MathCalcUtility ();

            Vector<double> data1 = Vector<double>.Build.DenseOfArray(new double[3]{1, 2, 3});
            Vector<double> data2 = Vector<double>.Build.DenseOfArray(new double[3]{3, 5, 4});

            Vector<double> vec = utility.CalculateVector (data1, data2);

            Assert.AreEqual (2.0, vec[0]);
            Assert.AreEqual (3.0, vec[1]);
            Assert.AreEqual (1.0, vec [2]);

            //Real data test
            data1 = Vector<double>.Build.DenseOfArray(new double[3]{51.5033630, -0.1276250, 500});
            data2 = Vector<double>.Build.DenseOfArray(new double[3]{51.5033635, -0.1276255, 510});

            vec = utility.CalculateVector (data1, data2);

            Assert.AreEqual (0.0000005, vec[0]);
            Assert.AreEqual (-0.0000005, vec[1]);
            Assert.AreEqual (10.0, vec [2]);
        }
Ejemplo n.º 2
0
        public void IntersectionTest()
        {
            //Test1
            MathCalcUtility utility = new MathCalcUtility ();

            Vector<double> plane1DataFrom = Vector<double>.Build.DenseOfArray(new double[3]{0, -1, 0});
            Vector<double> plane1DataTo = Vector<double>.Build.DenseOfArray(new double[3]{1, 0, 0});

            Vector<double> plane2DataFrom = Vector<double>.Build.DenseOfArray(new double[3]{6, -1, 0});
            Vector<double> plane2DataTo = Vector<double>.Build.DenseOfArray(new double[3]{5, 0, 0});

            Vector<double> plane1vec = utility.CalculateVector (plane1DataFrom, plane1DataTo);
            Vector<double> plane2vec = utility.CalculateVector (plane2DataFrom, plane2DataTo);

            Aircraft aircraft1 = new Aircraft ("1", plane1vec);
            aircraft1.DataBuffer.Add (plane1DataTo);

            Aircraft aircraft2 = new Aircraft ("2", plane2vec);
            aircraft2.DataBuffer.Add (plane2DataTo);

            double time = utility.Intersection (aircraft1, aircraft2, 1f);

            Assert.AreEqual (1.0, time);
        }