public void ThrowsWhenCannotConverge() { var circuit = CircuitGenerator.GetNonlinearCircuit(); var model = creator.Create <LargeSignalCircuitModel>(circuit); model.MaxDcPointIterations = 3; // some unrealistic low bound Assert.Throws <IterationCountExceededException>(() => model.EstablishDcBias()); Output.PrintCircuitStats(model); }
public void TestNonlinearCircuit() { var circuit = CircuitGenerator.GetNonlinearCircuit(); var model = creator.Create <LargeSignalCircuitModel>(circuit); model.EstablishDcBias(); Output.PrintCircuitStats(model); Assert.Equal(new[] { 0, 9.90804460268287, 0.71250487096788 }, model.NodeVoltages, new DoubleComparer(1e-10)); }