Ejemplo n.º 1
0
        public void DipoleCurrentsBehaveProperly(Complex positiveCurrent, Complex negativeCurrent, Complex currentSum)
        {
            var dipole = new MockedDipole();

            IComponent positive = dipole.Positive;
            IComponent negative = dipole.Negative;

            positive.Variables.First().Setter(positiveCurrent);
            negative.Variables.First().Setter(negativeCurrent);

            Assert.Equal(currentSum, ((IComponent)dipole).Equations.First()());
        }
Ejemplo n.º 2
0
        public void FollowsOhmsLawsConnected(
            Complex voltageNode1,
            Complex voltageNode2,
            Complex current,
            double resistance,
            Complex expectedValue)
        {
            var R      = new IdealResistor(resistance);
            var dipole = new MockedDipole();

            var equation = ((IComponent)R).Equations.First();

            IComponent node1 = R.Positive.ConnectTo(dipole.Positive);
            IComponent node2 = R.Negative.ConnectTo(dipole.Negative);

            IComponent positive = R.Positive;

            node1.Variables.First().Setter(voltageNode1);
            node2.Variables.First().Setter(voltageNode2);
            positive.Variables.First().Setter(current);

            Assert.Equal(expectedValue, equation());
        }