예제 #1
0
        public void TestGravitation()
        {
            var earth = new Sphere(new Meter(6378100), new Kilogram(5.98 * (Math.Pow(10, 24))));
            earth.SetCoordinates(PhysicalCoordinate<Meter>.Create(0, 0, 6378100));

            var shaneOnGround = new Sphere(new Centimeter(85), new Kilogram(79.37));

            var shaneAtWork = new Sphere(new Centimeter(85), new Kilogram(79.37));
            shaneAtWork.SetCoordinates(PhysicalCoordinate<Meter>.Create(0, 0, -20));

            var shaneOnPlane = new Sphere(new Centimeter(85), new Kilogram(79.37));
            shaneOnPlane.SetCoordinates(PhysicalCoordinate<Meter>.Create(0, 0, -11277.6));

            var halfwayToMoon = new Sphere(new Centimeter(85), new Kilogram(79.37));
            halfwayToMoon.SetCoordinates(PhysicalCoordinate<Meter>.Create(0, 0, -192201500));

            var forceOnGround = Gravitation.GravityBetween(shaneOnGround, earth);
            var forceAtWork = Gravitation.GravityBetween(shaneAtWork, earth);
            Assert.Less(forceAtWork.Value, forceOnGround.Value);

            var forceOnPlane = Gravitation.GravityBetween(shaneOnPlane, earth);
            Assert.Less(forceOnPlane.Value, forceAtWork.Value);

            var forceHalfwayToMoon = Gravitation.GravityBetween(halfwayToMoon, earth);
            Assert.Less(forceHalfwayToMoon.Value, forceOnPlane.Value);
        }
예제 #2
0
        public void TestGravitation()
        {
            var earth = new Sphere(new Meter(6378100), new Kilogram(5.98 * (Math.Pow(10, 24))));

            earth.SetCoordinates(PhysicalCoordinate <Meter> .Create(0, 0, 6378100));

            var shaneOnGround = new Sphere(new Centimeter(85), new Kilogram(79.37));

            var shaneAtWork = new Sphere(new Centimeter(85), new Kilogram(79.37));

            shaneAtWork.SetCoordinates(PhysicalCoordinate <Meter> .Create(0, 0, -20));

            var shaneOnPlane = new Sphere(new Centimeter(85), new Kilogram(79.37));

            shaneOnPlane.SetCoordinates(PhysicalCoordinate <Meter> .Create(0, 0, -11277.6));

            var halfwayToMoon = new Sphere(new Centimeter(85), new Kilogram(79.37));

            halfwayToMoon.SetCoordinates(PhysicalCoordinate <Meter> .Create(0, 0, -192201500));

            var forceOnGround = Gravitation.GravityBetween(shaneOnGround, earth);
            var forceAtWork   = Gravitation.GravityBetween(shaneAtWork, earth);

            Assert.Less(forceAtWork.Value, forceOnGround.Value);

            var forceOnPlane = Gravitation.GravityBetween(shaneOnPlane, earth);

            Assert.Less(forceOnPlane.Value, forceAtWork.Value);

            var forceHalfwayToMoon = Gravitation.GravityBetween(halfwayToMoon, earth);

            Assert.Less(forceHalfwayToMoon.Value, forceOnPlane.Value);
        }