Example #1
0
        public void PointChargeTest([RandomDouble(5)] double charge)
        {
            var pointCharge = new PointCharge(charge);

            Assert.That(pointCharge.ElectricDipoleMoment, Is.EqualTo(Vector3.Zero));
            Assert.That(pointCharge.MagneticDipoleMoment, Is.EqualTo(Vector3.Zero));
            Assert.That(pointCharge.Charge, Is.EqualTo(charge));
        }
Example #2
0
        public void TestElectricField()
        {
            PointCharge p = new PointCharge(-8.0E-9);

            Vector result = p.ElectricFieldAtPoint(new Vector(1.2, -1.6)).DecimalPoints(0);

            //University Physics page 702
            Vector expected = new Vector(-11, 14);

            Assert.AreEqual(expected, result);
        }
Example #3
0
        public void TestElectricForce()
        {
            //NOTE: Correct order of magnitude but failing due to floating point precision

            PointCharge p = new PointCharge(-8.0E-9);
            PointCharge q = new PointCharge(-6.0E-9, new Vector(1.2, -1.6));

            Vector result = p.ElectricForceOn(q);

            //Based on TestElectricField() above.
            Vector expected = new Vector(-11, 14) * (-6.0E-9) * Math.Sign(q.Charge);

            Assert.IsTrue(Helpers.WithinTolerance(expected, result));
        }