diff --git a/crates/applications/stacked_cores/scripts/inverter_characteristics.py b/crates/applications/stacked_cores/scripts/inverter_characteristics.py index e74a946..b2d517b 100755 --- a/crates/applications/stacked_cores/scripts/inverter_characteristics.py +++ b/crates/applications/stacked_cores/scripts/inverter_characteristics.py @@ -124,14 +124,58 @@ fwd_18 = Piecewise( ).normalized(17000) -fwd_24 = Piecewise( +fwd_24_5_1_2e10 = Piecewise( [ - [ -15208, -6303 ], - [ -11991, -4499 ], - [ -4757, 531 ], - [ 5994, 11126 ], - [ 8238, 13048 ], - [ 12048, 15346 ], + [ -12912, -8487 ], + [ -4754, -6045 ], + [ 2687, -2560 ], + [ 3936, -1774 ], + [ 4267, -1517 ], + [ 4504, -1314 ], + [ 4710, -1132 ], + [ 4820, -1075 ], + [ 4884, -1042 ], + [ 4948, -1012 ], + [ 5046, -968 ], + [ 5205, -897 ], + [ 5364, -829 ], + [ 5525, -760 ], + [ 5843, -622 ], + [ 6764, -197 ], + [ 9467, 788 ], + ] +).normalized(15000) + +fwd_24_5_1_5e10 = Piecewise( + [ + [ -15208, -6303 ], # -1.00 + [ -11991, -4499 ], # -0.30 + [ -4757, 531 ], # -0.20 + [ 5994, 11126 ], # 0.00 + [ 8238, 13048 ], # +0.20 + [ 12048, 15346 ], # +1.00 + ] +).normalized(17000) + +fwd_24_5_1_8e10 = Piecewise( + [ + [ -16412, -3392 ], + [ -15266, -2681 ], + [ -14036, -1897 ], + [ -12789, -1110 ], + [ -8766, 1588 ], + [ -2052, 6544 ], + [ 2389, 9989 ], + [ 4225, 11437 ], + [ 5194, 12182 ], + [ 5971, 12438 ], + [ 6901, 12937 ], + [ 8308, 13632 ], + [ 9910, 14365 ], + [ 10583, 14662 ], + [ 11240, 14850 ], + [ 12114, 15171 ], + [ 13862, 15600 ], ] ).normalized(17000) @@ -408,22 +452,24 @@ inv_39_2_0_15e10 = Piecewise( ).normalized(17000) for (name, curve) in [ - ("18", fwd_18.logically_inverted()), - # ("24", fwd_24.logically_inverted()), - # ("26", fwd_26.logically_inverted()), + # ("18", fwd_18.logically_inverted()), + ("24 5:1 (2e10 I)", fwd_24_5_1_2e10.logically_inverted()), + ("24 5:1 (5e10 I)", fwd_24_5_1_5e10.logically_inverted()), + ("24 5:1 (8e10 I)", fwd_24_5_1_8e10.logically_inverted()), + ("26", fwd_26.logically_inverted()), # ("38 1:0 (2e10 I)", fwd_38_1_0.logically_inverted()), # ("38 1:0 (5e10 I)", fwd_38_1_0_5e10.logically_inverted()), - ("38 2:0 (2e10 I)", fwd_38_2_0.logically_inverted()), + # ("38 2:0 (2e10 I)", fwd_38_2_0.logically_inverted()), # ("38 2:0 (5e10 I)", fwd_38_2_0_5e10.logically_inverted()), # ("38 3:0 (2e10 I)", fwd_38_3_0.logically_inverted()), # ("38 3:0 (5e10 I)", fwd_38_3_0_5e10.logically_inverted()), # ("38 4:0 (2e10 I)", fwd_38_4_0.logically_inverted()), # ("38 4:0 (5e10 I)", fwd_38_4_0_5e10.logically_inverted()), - ("39 2:0 (2e10 I)", inv_39_2_0_2e10), - ("39 2:0 (5e10 I)", inv_39_2_0_5e10), - ("39 2:0 (8e10 I)", inv_39_2_0_8e10), - ("39 2:0 (1e11 I)", inv_39_2_0_1e11), - ("39 2:0 (15e10 I)", inv_39_2_0_15e10), + # ("39 2:0 (2e10 I)", inv_39_2_0_2e10), + # ("39 2:0 (5e10 I)", inv_39_2_0_5e10), + # ("39 2:0 (8e10 I)", inv_39_2_0_8e10), + # ("39 2:0 (1e11 I)", inv_39_2_0_1e11), + # ("39 2:0 (15e10 I)", inv_39_2_0_15e10), ]: curve.plot(title = f"{name} mapping") curve.logically_inverted().plot_slope(title = f"{name} slope")