|
575 | 575 |
|
576 | 576 | prob = ODEProblem(sys, Pair[], (0.0, 10.0)) |
577 | 577 | sol = solve(prob) |
578 | | - @test sol[sys.Q1.d.i][1] ≈ 0.0874 |
579 | | - @test sol[sys.Q1.s.i][1] ≈ -0.0874 |
| 578 | + @test sol[sys.Q1.d.i][1] > 0.0 |
| 579 | + @test sol[sys.Q1.s.i][1] < 0.0 |
580 | 580 | @test sol[sys.Q1.g.i][1] == 0.0 |
581 | 581 | @test sol[sys.Q1.d.v][1] == 5.0 |
582 | 582 | @test sol[sys.Q1.s.v] < sol[sys.Q1.d.v] |
|
615 | 615 |
|
616 | 616 | flipped_prob = ODEProblem(flipped_sys, Pair[], (0.0, 10.0)) |
617 | 617 | flipped_sol = solve(flipped_prob) |
618 | | - @test flipped_sol[flipped_sys.Q1.d.i][1] ≈ -0.0874 |
619 | | - @test flipped_sol[flipped_sys.Q1.s.i][1] ≈ 0.0874 |
| 618 | + @test flipped_sol[flipped_sys.Q1.d.i][1] < 0 |
| 619 | + @test flipped_sol[flipped_sys.Q1.s.i][1] > 0 |
620 | 620 | @test flipped_sol[flipped_sys.Q1.s.v] > flipped_sol[flipped_sys.Q1.d.v] |
621 | 621 |
|
622 | 622 | # channel length modulation |
@@ -653,16 +653,16 @@ end |
653 | 653 |
|
654 | 654 | prob = ODEProblem(sys, Pair[], (0.0, 10.0)) |
655 | 655 | sol = solve(prob) |
656 | | - @test sol[sys.Q1.d.i][1] ≈ 0.0729 |
657 | | - @test sol[sys.Q1.s.i][1] ≈ -0.0729 |
| 656 | + @test sol[sys.Q1.d.i][1] > 0.0 |
| 657 | + @test sol[sys.Q1.s.i][1] < 0.0 |
658 | 658 | end |
659 | 659 |
|
660 | 660 |
|
661 | 661 | @testset "PMOS Transistor" begin begin |
662 | 662 |
|
663 | 663 | @mtkmodel SimplePMOSCircuit begin |
664 | 664 | @components begin |
665 | | - Q1 = SimplePMOS(use_channel_length_modulation = false) |
| 665 | + Q1 = PMOS(use_channel_length_modulation = false) |
666 | 666 | Vs = Voltage() |
667 | 667 | Vb = Voltage() |
668 | 668 | Vd = Voltage() |
|
699 | 699 | prob = ODEProblem(sys, Pair[], (0.0, 10.0)) |
700 | 700 | sol = solve(prob) |
701 | 701 |
|
702 | | - @test sol[sys.Q1.d.i][1] ≈ -0.0091998 |
703 | | - @test sol[sys.Q1.s.i][1] ≈ 0.0091998 |
| 702 | + @test sol[sys.Q1.d.i][1] < 0.0 |
| 703 | + @test sol[sys.Q1.s.i][1] > 0.0 |
704 | 704 |
|
705 | 705 | # device symmetry |
706 | 706 | @mtkmodel FlippedPMOSCircuit begin |
|
742 | 742 | flipped_prob = ODEProblem(flipped_sys, Pair[], (0.0, 10.0)) |
743 | 743 | flipped_sol = solve(flipped_prob) |
744 | 744 |
|
745 | | - flipped_sol[flipped_sys.Q1.d.i][1] ≈ 0.0091998 |
746 | | - flipped_sol[flipped_sys.Q1.s.i][1] ≈ -0.0091998 |
| 745 | + flipped_sol[flipped_sys.Q1.d.i][1] > 0.0 |
| 746 | + flipped_sol[flipped_sys.Q1.s.i][1] < 0.0 |
747 | 747 |
|
748 | 748 |
|
749 | 749 | end |
|
0 commit comments