Running: ./testmodel.py --libraries=/home/hudson/saved_omc/libraries/.openmodelica/libraries --ompython_omhome=/usr Modelica_3.2.1_Modelica.Electrical.PowerConverters.Examples.ACDC.RectifierCenterTapmPulse.ThyristorCenterTapmPulse_RLV_Characteristic.conf.json loadFile("/home/hudson/saved_omc/libraries/.openmodelica/libraries/ModelicaServices 4.0.0+maint.om/package.mo", uses=false) loadFile("/home/hudson/saved_omc/libraries/.openmodelica/libraries/Complex 4.0.0+maint.om/package.mo", uses=false) loadFile("/home/hudson/saved_omc/libraries/.openmodelica/libraries/Modelica 3.2.3+maint.om/package.mo", uses=false) Using package Modelica with version 3.2.3 (/home/hudson/saved_omc/libraries/.openmodelica/libraries/Modelica 3.2.3+maint.om/package.mo) Using package Complex with version 4.0.0 (/home/hudson/saved_omc/libraries/.openmodelica/libraries/Complex 4.0.0+maint.om/package.mo) Using package ModelicaServices with version 4.0.0 (/home/hudson/saved_omc/libraries/.openmodelica/libraries/ModelicaServices 4.0.0+maint.om/package.mo) Running command: translateModel(Modelica.Electrical.PowerConverters.Examples.ACDC.RectifierCenterTapmPulse.ThyristorCenterTapmPulse_RLV_Characteristic,tolerance=1e-06,outputFormat="empty",numberOfIntervals=100000,variableFilter="",fileNamePrefix="Modelica_3.2.1_Modelica.Electrical.PowerConverters.Examples.ACDC.RectifierCenterTapmPulse.ThyristorCenterTapmPulse_RLV_Characteristic") translateModel(Modelica.Electrical.PowerConverters.Examples.ACDC.RectifierCenterTapmPulse.ThyristorCenterTapmPulse_RLV_Characteristic,tolerance=1e-06,outputFormat="empty",numberOfIntervals=100000,variableFilter="",fileNamePrefix="Modelica_3.2.1_Modelica.Electrical.PowerConverters.Examples.ACDC.RectifierCenterTapmPulse.ThyristorCenterTapmPulse_RLV_Characteristic") Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/ModelicaServices 4.0.0+maint.om/package.mo): time 0.001159/0.001159, allocations: 108.8 kB / 16.42 MB, free: 6.512 MB / 14.72 MB Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/Complex 4.0.0+maint.om/package.mo): time 0.001128/0.001128, allocations: 187.2 kB / 17.35 MB, free: 5.754 MB / 14.72 MB Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/Modelica 3.2.3+maint.om/package.mo): time 1.267/1.267, allocations: 205.1 MB / 223.2 MB, free: 12.27 MB / 190.1 MB Notification: Performance of FrontEnd - Absyn->SCode: time 1.257e-05/1.257e-05, allocations: 2.281 kB / 327.2 MB, free: 3.305 MB / 270.1 MB Notification: Performance of NFInst.instantiate(Modelica.Electrical.PowerConverters.Examples.ACDC.RectifierCenterTapmPulse.ThyristorCenterTapmPulse_RLV_Characteristic): time 0.005403/0.005424, allocations: 5.085 MB / 332.3 MB, free: 14.19 MB / 286.1 MB Notification: Performance of NFInst.instExpressions: time 0.002378/0.007814, allocations: 1.621 MB / 333.9 MB, free: 12.56 MB / 286.1 MB Notification: Performance of NFInst.updateImplicitVariability: time 0.0002705/0.008096, allocations: 27.88 kB / 334 MB, free: 12.54 MB / 286.1 MB Notification: Performance of NFTyping.typeComponents: time 0.0003215/0.008425, allocations: 194.4 kB / 334.2 MB, free: 12.34 MB / 286.1 MB Notification: Performance of NFTyping.typeBindings: time 0.0007035/0.009135, allocations: 314 kB / 334.5 MB, free: 12.04 MB / 286.1 MB Notification: Performance of NFTyping.typeClassSections: time 0.0004694/0.009615, allocations: 299.5 kB / 334.8 MB, free: 11.74 MB / 286.1 MB Notification: Performance of NFFlatten.flatten: time 0.001504/0.01113, allocations: 1.747 MB / 336.5 MB, free: 9.988 MB / 286.1 MB Notification: Performance of NFFlatten.resolveConnections: time 0.0008196/0.01196, allocations: 0.8011 MB / 337.3 MB, free: 9.164 MB / 286.1 MB Notification: Performance of NFEvalConstants.evaluate: time 0.0004887/0.01246, allocations: 0.5609 MB / 337.9 MB, free: 8.602 MB / 286.1 MB Notification: Performance of NFSimplifyModel.simplify: time 0.0005461/0.01301, allocations: 0.5683 MB / 338.4 MB, free: 8.031 MB / 286.1 MB Notification: Performance of NFPackage.collectConstants: time 0.00012/0.01314, allocations: 112 kB / 338.5 MB, free: 7.922 MB / 286.1 MB Notification: Performance of NFFlatten.collectFunctions: time 0.0001375/0.01329, allocations: 108 kB / 338.6 MB, free: 7.816 MB / 286.1 MB Notification: Performance of combineBinaries: time 0.001029/0.01432, allocations: 1.516 MB / 340.2 MB, free: 6.285 MB / 286.1 MB Notification: Performance of replaceArrayConstructors: time 0.000566/0.01489, allocations: 0.9718 MB / 341.1 MB, free: 5.301 MB / 286.1 MB Notification: Performance of NFVerifyModel.verify: time 0.0001439/0.01505, allocations: 155.6 kB / 341.3 MB, free: 5.148 MB / 286.1 MB Notification: Performance of FrontEnd: time 9.527e-05/0.01515, allocations: 39.73 kB / 341.3 MB, free: 5.109 MB / 286.1 MB Notification: Model statistics after passing the front-end and creating the data structures used by the back-end: * Number of equations: 333 (183) * Number of variables: 333 (158) Notification: Performance of Bindings: time 0.003984/0.01914, allocations: 4.874 MB / 346.2 MB, free: 68 kB / 286.1 MB Notification: Performance of FunctionAlias: time 0.0002747/0.01942, allocations: 274.8 kB / 346.5 MB, free: 15.8 MB / 302.1 MB Notification: Performance of Early Inline: time 0.002038/0.02147, allocations: 2.439 MB / 348.9 MB, free: 13.32 MB / 302.1 MB Notification: Performance of simplify1: time 0.0001215/0.0216, allocations: 139.8 kB / 349 MB, free: 13.18 MB / 302.1 MB Notification: Performance of Alias: time 0.002695/0.0243, allocations: 2.821 MB / 351.9 MB, free: 10.14 MB / 302.1 MB Notification: Performance of simplify2: time 9.354e-05/0.0244, allocations: 103.9 kB / 352 MB, free: 10.04 MB / 302.1 MB Notification: Performance of Events: time 0.0005348/0.02494, allocations: 0.5495 MB / 352.5 MB, free: 9.461 MB / 302.1 MB Notification: Performance of Detect States: time 0.0007049/0.02566, allocations: 0.8197 MB / 353.3 MB, free: 8.621 MB / 302.1 MB Notification: Performance of Partitioning: time 0.0009725/0.02664, allocations: 1.046 MB / 354.4 MB, free: 7.488 MB / 302.1 MB Error: Internal error NBSlice.fillDependencyArray failed because number of flattened indices 1 for dependency pulsem.twomPulse.gain.y could not be divided by the body size 3 without rest. Error: Internal error NBAdjacency.Matrix.createPseudo failed for: [ARRY] (3) pulsem.twomPulse.replicator.y = {pulsem.twomPulse.gain.y for $i1 in 1:3} ($RES_SIM_41) Error: Internal error NBAdjacency.Matrix.create failed to create adjacency matrix for system: System Variables (127/320) **************************** (1) [ALGB] (3) Real[3] pulsem.twomPulse.replicator.y (2) [ALGB] (3) flow Real[3] rectifier.thyristor.idealThyristor.n.i (3) [ALGB] (3) Real[3] rectifier.star.plug_p.pin.v (4) [ALGB] (3) Real[3] sineVoltage_p.sineVoltage.v (5) [DISC] (3) Boolean[3] rectifier.andCondition_p.y (6) [ALGB] (3) Real[3] pulsem.voltageSensor.voltageSensor.v (7) [ALGB] (3) flow Real[3] pulsem.voltageSensor.voltageSensor.n.i (8) [ALGB] (3) Real[3] rectifier.vAC = rectifier.ac.pin[:].v (9) [ALGB] (1) Real resistor.n.v (10) [ALGB] (3) flow Real[3] sineVoltage_p.sineVoltage.n.i (11) [DISC] (3) Boolean[3] pulsem.twomPulse.timerNegative.u (12) [DER-] (1) Real $DER.inductor.i (13) [ALGB] (3) flow Real[3] rectifier.star.plug_p.pin.i (14) [DISC] (3) Boolean[3] pulsem.twomPulse.positiveThreshold.y (15) [ALGB] (1) Real pulsem.twomPulse.limiter.y (16) [DISC] (3) Boolean[3] rectifier.enableLogic.internalEnable (17) [ALGB] (3) Real[3] pulsem.twomPulse.timerNegative.y (18) [ALGB] (3) Real[3] pulsem.twomPulse.positiveThreshold.u (19) [ALGB] (3) Real[3] pulsem.twomPulse.negativeEqual.u2 (20) [DISC] (3) Boolean[3] $SEV_11[$i1] (21) [ALGB] (3) flow Real[3] star.plug_p.pin.i (22) [ALGB] (3) Real[3] pulsem.twomPulse.negativeEqual.u1 (23) [ALGB] (3) Real[3] sineVoltage_p.sineVoltage.n.v (24) [ALGB] (1) Real rectifier.LossPower (25) [ALGB] (3) final Real[3] rectifier.thyristor.idealThyristor.v (26) [ALGB] (1) protected Real pulsem.twomPulse.limiter.simplifiedExpr (27) [ALGB] (3) flow Real[3] sineVoltage_p.sineVoltage.p.i (28) [ALGB] (3) protected final Real[3] rectifier.thyristor.idealThyristor.s (start = {0.0 for $i1 in 1:3}) (29) [ALGB] (1) Real rootMeanSquareVoltage.product.y (30) [ALGB] (1) Real meanVoltage.u (31) [ALGB] (3) flow Real[3] rectifier.ac.pin.i (32) [ALGB] (2) Real[2] rootMeanSquareVoltage.product.u (33) [DISC] (3) Boolean[3] pulsem.fire_n (34) [ALGB] (3) flow Real[3] pulsem.ac.pin.i (35) [ALGB] (3) Real[3] star.plug_p.pin.v (36) [DISC] (3) Boolean[3] pulsem.fire_p (37) [DISC] (3) Boolean[3] pulsem.twomPulse.greaterPositive.y (38) [DISC] (3) Boolean[3] $SEV_6[$i1] (39) [ALGB] (1) Real rectifier.vDC = rectifier.vDC (40) [ALGB] (1) Real resistor.LossPower (41) [ALGB] (3) final Real[3] rectifier.thyristor.idealThyristor.i (42) [ALGB] (3) Real[3] sineVoltage_p.sineVoltage.p.v (43) [ALGB] (3) Real[3] rectifier.ac.pin.v (44) [DISC] (3) Boolean[3] pulsem.twomPulse.negativeThreshold.y (45) [DISC] (3) Boolean[3] rectifier.thyristor.fire (46) [ALGB] (3) Real[3] $FUN_2 (47) [ALGB] (3) Real[3] rectifier.thyristor.plug_p.pin.v (48) [ALGB] (3) Real[3] pulsem.ac.pin.v (49) [ALGB] (3) flow Real[3] pulsem.delta.plug_n.pin.i (50) [ALGB] (3) Real[3] pulsem.twomPulse.negativeThreshold.u (51) [ALGB] (3) Real[3] pulsem.twomPulse.greaterPositive.u2 (52) [DISC] (3) Boolean[3] $SEV_9[$i1] (53) [ALGB] (3) flow Real[3] sineVoltage_p.plug_n.pin.i (54) [ALGB] (3) Real[3] pulsem.twomPulse.greaterPositive.u1 (55) [DISC] (3) Boolean[3] rectifier.thyristor.off = rectifier.thyristor.idealThyristor.off (56) [DER-] (1) Real $DER.meanVoltage.x (57) [ALGB] (3) flow Real[3] rectifier.thyristor.plug_p.pin.i (58) [DISC] (3) Boolean[3] $SEV_10[$i1] (59) [ALGB] (3) Real[3] pulsem.delta.plug_n.pin.v (60) [ALGB] (3) final Real[3] rectifier.thyristor.idealThyristor.LossPower (61) [ALGB] (3) Real[3] sineVoltage_p.plug_n.pin.v (62) [ALGB] (1) Real rectifier.powerTotalAC = sum(rectifier.powerAC) (63) [DISC] (3) Boolean[3] pulsem.twomPulse.negativeEqual.y (64) [DISC] (3) Boolean[3] rectifier.fire_p (65) [ALGB] (3) Real[3] rectifier.iAC = rectifier.ac.pin[:].i (66) [ALGB] (3) Real[3] pulsem.twomPulse.v (67) [ALGB] (3) flow Real[3] pulsem.voltageSensor.plug_n.pin.i (68) [ALGB] (3) Real[3] pulsem.twomPulse.realPassThrough.u (69) [DISC] (3) Boolean[3] $SEV_5[$i1] (70) [DISC] (3) Boolean[3] rectifier.andCondition_p.u2 (71) [DISC] (3) Boolean[3] rectifier.andCondition_p.u1 (72) [ALGB] (3) Real[3] pulsem.twomPulse.realPassThrough.y (73) [ALGB] (1) flow Real star.pin_n.i (74) [ALGB] (3) Real[3] rectifier.thyristor.plug_n.pin.v (75) [ALGB] (3) flow Real[3] pulsem.delta.plug_p.pin.i (76) [DER-] (1) Real $DER.meanCurrent.x (77) [ALGB] (3) flow Real[3] sineVoltage_p.plug_p.pin.i (78) [DISS] (3) protected discrete Real[3] pulsem.twomPulse.timerNegative.entryTime (79) [ALGB] (1) Real inductor.v (80) [ALGB] (3) Real[3] rectifier.thyristor.i (81) [ALGB] (3) Real[3] sineVoltage_p.sineVoltage.signalSource.y (82) [ALGB] (3) Real[3] pulsem.voltageSensor.plug_n.pin.v (83) [ALGB] (3) Real[3] sineVoltage_p.i (84) [ALGB] (1) flow Real currentSensor.n.i (85) [DISC] (3) Boolean[3] $SEV_8[$i1] (86) [DISC] (3) Boolean[3] rectifier.enableLogic.booleanReplicator.y (87) [ALGB] (3) flow Real[3] rectifier.thyristor.plug_n.pin.i (88) [ALGB] (3) Real[3] pulsem.delta.plug_p.pin.v (89) [ALGB] (1) Real rectifier.powerDC = rectifier.vDC * rectifier.iDC (90) [DISS] (3) protected discrete Real[3] pulsem.twomPulse.timerPositive.entryTime (91) [ALGB] (3) Real[3] sineVoltage_p.plug_p.pin.v (92) [ALGB] (3) Real[3] rectifier.thyristor.idealThyristor.p.v (93) [ALGB] (3) Real[3] rectifier.thyristor.v (94) [DISC] (3) Boolean[3] pulsem.twomPulse.fire_p (95) [ALGB] (1) Real rectifier.iDC = rectifier.iDC (96) [DISC] (1) Boolean $SEV_2 (97) [DISC] (3) Boolean[3] pulsem.twomPulse.fire_n (98) [DISC] (1) Boolean $SEV_1 (99) [ALGB] (3) Real[3] sineVoltage_p.v (100) [DISC] (1) Boolean $TEV_3 (101) [DISC] (1) Boolean $TEV_2 (102) [ALGB] (3) flow Real[3] pulsem.voltageSensor.plug_p.pin.i (103) [ALGB] (3) Real[3] pulsem.voltageSensor.v (104) [ALGB] (3) Real[3] pulsem.voltageSensor.voltageSensor.p.v (105) [DISC] (1) Boolean $TEV_1 (106) [DISC] (1) Boolean $TEV_0 (107) [ALGB] (1) Real resistor.R_actual (108) [DISC] (3) Boolean[3] rectifier.thyristor.idealThyristor.fire (109) [ALGB] (3) flow Real[3] rectifier.thyristor.idealThyristor.p.i (110) [DISC] (3) Boolean[3] $SEV_12[$i1] (111) [DISC] (3) Boolean[3] $SEV_4[$i1] (112) [DER-] (1) Real $DER.rootMeanSquareVoltage.mean.x (113) [ALGB] (1) Real resistor.v (114) [ALGB] (1) Real inductor.n.v (115) [DISC] (1) Boolean $TEV_10 (116) [DISC] (3) final Boolean[3] rectifier.thyristor.idealThyristor.off (fixed = {true for $i1 in 1:3}, start = {rectifier.offStart[$idealThyristor1] for $idealThyristor1 in 1:3}) (117) [ALGB] (3) Real[3] rectifier.thyristor.idealThyristor.n.v (118) [ALGB] (3) Real[3] sineVoltage_p.sineVoltage.i (119) [ALGB] (3) Real[3] pulsem.voltageSensor.plug_p.pin.v (120) [ALGB] (3) flow Real[3] pulsem.voltageSensor.voltageSensor.p.i (121) [ALGB] (1) Real pulsem.twomPulse.gain.y (122) [DISC] (3) Boolean[3] pulsem.twomPulse.timerPositive.u (123) [ALGB] (3) Real[3] rectifier.powerAC = rectifier.vAC * rectifier.iAC (124) [ALGB] (3) Real[3] pulsem.voltageSensor.voltageSensor.n.v (125) [ALGB] (1) flow Real ground.p.i (126) [ALGB] (3) Real[3] pulsem.twomPulse.timerPositive.y (127) [DISC] (3) Boolean[3] $SEV_7[$i1] System Equations (152/320) **************************** (1) [ARRY] (3) rectifier.enableLogic.internalEnable = rectifier.andCondition_p.u2 ($RES_SIM_206) (2) [ARRY] (3) rectifier.thyristor.i = rectifier.thyristor.plug_p.pin.i ($RES_SIM_81) (3) [ARRY] (3) rectifier.andCondition_p.u1 = rectifier.fire_p ($RES_SIM_207) (4) [ARRY] (3) rectifier.thyristor.v = rectifier.thyristor.plug_p.pin.v - rectifier.thyristor.plug_n.pin.v ($RES_SIM_82) (5) [SCAL] (1) inductor.i + rectifier.iDC = 0.0 ($RES_SIM_122) (6) [ARRY] (3) rectifier.andCondition_p.y = rectifier.thyristor.fire ($RES_SIM_208) (7) [FOR-] (3) ($RES_SIM_83) (7) [----] for $i1 in 1:3 loop (7) [----] [SCAL] (1) rectifier.thyristor.idealThyristor[$i1].i = rectifier.thyristor.idealThyristor[$i1].p.i ($RES_SIM_84) (7) [----] end for; (8) [FOR-] (3) ($RES_SIM_209) (8) [----] for $i1 in 1:3 loop (8) [----] [SCAL] (1) rectifier.thyristor.plug_p.pin[$i1].i - rectifier.ac.pin[$i1].i = 0.0 ($RES_SIM_210) (8) [----] end for; (9) [SCAL] (1) star.pin_n.i + currentSensor.n.i + ground.p.i = 0.0 ($RES_SIM_124) (10) [FOR-] (3) ($RES_SIM_85) (10) [----] for $i1 in 1:3 loop (10) [----] [SCAL] (1) 0.0 = rectifier.thyristor.idealThyristor[$i1].p.i + rectifier.thyristor.idealThyristor[$i1].n.i ($RES_SIM_86) (10) [----] end for; (11) [FOR-] (3) ($RES_SIM_125) (11) [----] for $i1 in 1:3 loop (11) [----] [SCAL] (1) star.plug_p.pin[$i1].i + sineVoltage_p.plug_n.pin[$i1].i = 0.0 ($RES_SIM_126) (11) [----] end for; (12) [FOR-] (3) ($RES_SIM_87) (12) [----] for $i1 in 1:3 loop (12) [----] [SCAL] (1) rectifier.thyristor.idealThyristor[$i1].v = rectifier.thyristor.idealThyristor[$i1].p.v - rectifier.thyristor.idealThyristor[$i1].n.v ($RES_SIM_88) (12) [----] end for; (13) [ARRY] (3) star.plug_p.pin.v = sineVoltage_p.plug_n.pin.v ($RES_SIM_127) (14) [SCAL] (1) rectifier.ac.pin[3].i + sineVoltage_p.plug_p.pin[3].i + pulsem.ac.pin[3].i = 0.0 ($RES_SIM_128) (15) [SCAL] (1) rectifier.ac.pin[2].i + sineVoltage_p.plug_p.pin[2].i + pulsem.ac.pin[2].i = 0.0 ($RES_SIM_129) (16) [SCAL] (1) pulsem.twomPulse.limiter.simplifiedExpr = ramp.offset + (if $TEV_2 then 0.0 else if $TEV_3 then (ramp.height * (time - ramp.startTime)) / ramp.duration else ramp.height) ($RES_SIM_13) (17) [ARRY] (3) rectifier.ac.pin.v = rectifier.thyristor.plug_p.pin.v ($RES_SIM_211) (18) [FOR-] (3) ($RES_SIM_213) (18) [----] for $i1 in 1:3 loop (18) [----] [SCAL] (1) rectifier.thyristor.plug_n.pin[$i1].i + rectifier.star.plug_p.pin[$i1].i = 0.0 ($RES_SIM_214) (18) [----] end for; (19) [SCAL] (1) constantVoltage.V = inductor.n.v ($RES_SIM_16) (20) [SCAL] (1) rectifier.ac.pin[1].i + sineVoltage_p.plug_p.pin[1].i + pulsem.ac.pin[1].i = 0.0 ($RES_SIM_130) (21) [ARRY] (3) rectifier.thyristor.plug_n.pin.v = rectifier.star.plug_p.pin.v ($RES_SIM_215) (22) [SCAL] (1) rectifier.ac.pin[3].v = pulsem.ac.pin[3].v ($RES_SIM_131) (23) [ARRY] (3) rectifier.thyristor.fire = rectifier.thyristor.idealThyristor.fire ($RES_SIM_216) (24) [FOR-] (3) ($RES_SIM_91) (24) [----] for $i1 in 1:3 loop (24) [----] [SCAL] (1) rectifier.thyristor.idealThyristor[$i1].LossPower = rectifier.thyristor.idealThyristor[$i1].v * rectifier.thyristor.idealThyristor[$i1].i ($RES_SIM_92) (24) [----] end for; (25) [FOR-] (3) ($RES_SIM_217) (25) [----] for $i1 in 1:3 loop (25) [----] [SCAL] (1) rectifier.thyristor.idealThyristor[$i1].n.i - rectifier.thyristor.plug_n.pin[$i1].i = 0.0 ($RES_SIM_218) (25) [----] end for; (26) [SCAL] (1) rectifier.ac.pin[3].v = sineVoltage_p.plug_p.pin[3].v ($RES_SIM_132) (27) [FOR-] (3) ($RES_SIM_93) (27) [----] for $i1 in 1:3 loop (27) [----] [SCAL] (1) rectifier.thyristor.idealThyristor[$i1].i = rectifier.thyristor.idealThyristor[$i1].s * (if rectifier.thyristor.idealThyristor[$i1].off then rectifier.thyristor.idealThyristor[$i1].Goff else 1.0) + rectifier.thyristor.idealThyristor[$i1].Goff * rectifier.thyristor.idealThyristor[$i1].Vknee ($RES_SIM_94) (27) [----] end for; (28) [SCAL] (1) rectifier.ac.pin[2].v = pulsem.ac.pin[2].v ($RES_SIM_133) (29) [ARRY] (3) rectifier.thyristor.idealThyristor.n.v = rectifier.thyristor.plug_n.pin.v ($RES_SIM_219) (30) [SCAL] (1) rectifier.ac.pin[2].v = sineVoltage_p.plug_p.pin[2].v ($RES_SIM_134) (31) [FOR-] (3) ($RES_SIM_95) (31) [----] for $i1 in 1:3 loop (31) [----] [SCAL] (1) rectifier.thyristor.idealThyristor[$i1].v = rectifier.thyristor.idealThyristor[$i1].s * (if rectifier.thyristor.idealThyristor[$i1].off then 1.0 else rectifier.thyristor.idealThyristor[$i1].Ron) + rectifier.thyristor.idealThyristor[$i1].Vknee ($RES_SIM_96) (31) [----] end for; (32) [SCAL] (1) rectifier.ac.pin[1].v = pulsem.ac.pin[1].v ($RES_SIM_135) (33) [SCAL] (1) rectifier.ac.pin[1].v = sineVoltage_p.plug_p.pin[1].v ($RES_SIM_136) (34) [FOR-] (3) ($RES_SIM_97) (34) [----] for $i1 in 1:3 loop (34) [----] [SCAL] (1) rectifier.thyristor.idealThyristor[$i1].off = $SEV_10[$i1] ($RES_SIM_98) (34) [----] end for; (35) [ARRY] (3) pulsem.fire_p = rectifier.fire_p ($RES_SIM_137) (36) [ARRY] (3) rectifier.enableLogic.booleanReplicator.y = {rectifier.enableLogic.enableConstantSource.k for $i1 in 1:3} ($RES_SIM_99) (37) [SCAL] (1) inductor.v = resistor.n.v - inductor.n.v ($RES_SIM_20) (38) [SCAL] (1) $DER.inductor.i = inductor.v ($RES_SIM_21) (39) [FOR-] (3) ($RES_SIM_220) (39) [----] for $i1 in 1:3 loop (39) [----] [SCAL] (1) rectifier.thyristor.idealThyristor[$i1].p.i - rectifier.thyristor.plug_p.pin[$i1].i = 0.0 ($RES_SIM_221) (39) [----] end for; (40) [ARRY] (3) rectifier.thyristor.plug_p.pin.v = rectifier.thyristor.idealThyristor.p.v ($RES_SIM_222) (41) [SCAL] (1) resistor.v = rectifier.vDC - resistor.n.v ($RES_SIM_24) (42) [ARRY] (3) rectifier.enableLogic.internalEnable = rectifier.enableLogic.booleanReplicator.y ($RES_SIM_224) (43) [SCAL] (1) resistor.LossPower = resistor.v * inductor.i ($RES_SIM_26) (44) [FOR-] (3) ($RES_SIM_225) (44) [----] for $i1 in 1:3 loop (44) [----] [SCAL] (1) sineVoltage_p.sineVoltage[$i1].n.i - sineVoltage_p.plug_n.pin[$i1].i = 0.0 ($RES_SIM_226) (44) [----] end for; (45) [SCAL] (1) resistor.v = resistor.R_actual * inductor.i ($RES_SIM_27) (46) [SCAL] (1) resistor.R_actual = resistor.R * (1.0 + resistor.alpha * (resistor.T - resistor.T_ref)) ($RES_SIM_28) (47) [ARRY] (3) sineVoltage_p.sineVoltage.n.v = sineVoltage_p.plug_n.pin.v ($RES_SIM_227) (48) [FOR-] (3) ($RES_SIM_228) (48) [----] for $i1 in 1:3 loop (48) [----] [SCAL] (1) sineVoltage_p.sineVoltage[$i1].p.i - sineVoltage_p.plug_p.pin[$i1].i = 0.0 ($RES_SIM_229) (48) [----] end for; (49) [FOR-] (3) ($RES_SIM_30) (49) [----] for $i1 in 1:3 loop (49) [----] [SCAL] (1) pulsem.voltageSensor.voltageSensor[$i1].v = pulsem.voltageSensor.voltageSensor[$i1].p.v - pulsem.voltageSensor.voltageSensor[$i1].n.v ($RES_SIM_31) (49) [----] end for; (50) [ARRY] (3) sineVoltage_p.sineVoltage.p.v = sineVoltage_p.plug_p.pin.v ($RES_SIM_230) (51) [FOR-] (3) ($RES_SIM_32) (51) [----] for $i1 in 1:3 loop (51) [----] [SCAL] (1) pulsem.voltageSensor.voltageSensor[$i1].n.i = 0.0 ($RES_SIM_33) (51) [----] end for; (52) [FOR-] (3) ($RES_SIM_34) (52) [----] for $i1 in 1:3 loop (52) [----] [SCAL] (1) pulsem.voltageSensor.voltageSensor[$i1].p.i = 0.0 ($RES_SIM_35) (52) [----] end for; (53) [FOR-] (3) ($RES_SIM_36) (53) [----] for $i1 in 1:3 loop (53) [----] [SCAL] (1) pulsem.twomPulse.realPassThrough[$i1].y = pulsem.twomPulse.realPassThrough[$i1].u ($RES_SIM_37) (53) [----] end for; (54) [ARRY] (3) pulsem.twomPulse.fire_p = pulsem.fire_p ($RES_SIM_150) (55) [SCAL] (1) pulsem.twomPulse.limiter.y = homotopy(smooth(0, if $SEV_1 then pulsem.twomPulse.limiter.uMax else if $SEV_2 then pulsem.twomPulse.limiter.uMin else pulsem.twomPulse.limiter.simplifiedExpr), pulsem.twomPulse.limiter.simplifiedExpr) ($RES_SIM_38) (56) [ARRY] (3) pulsem.twomPulse.fire_n = pulsem.fire_n ($RES_SIM_151) (57) [ARRY] (3) pulsem.voltageSensor.v = pulsem.twomPulse.v ($RES_SIM_153) (58) [FOR-] (3) ($RES_SIM_154) (58) [----] for $i1 in 1:3 loop (58) [----] [SCAL] (1) pulsem.delta.plug_p.pin[$i1].i + pulsem.voltageSensor.plug_n.pin[$i1].i = 0.0 ($RES_SIM_155) (58) [----] end for; (59) [ARRY] (3) pulsem.delta.plug_p.pin.v = pulsem.voltageSensor.plug_n.pin.v ($RES_SIM_156) (60) [SCAL] (1) (pulsem.delta.plug_n.pin[3].i + pulsem.voltageSensor.plug_p.pin[3].i) - pulsem.ac.pin[3].i = 0.0 ($RES_SIM_157) (61) [SCAL] (1) (pulsem.delta.plug_n.pin[2].i + pulsem.voltageSensor.plug_p.pin[2].i) - pulsem.ac.pin[2].i = 0.0 ($RES_SIM_158) (62) [SCAL] (1) (pulsem.delta.plug_n.pin[1].i + pulsem.voltageSensor.plug_p.pin[1].i) - pulsem.ac.pin[1].i = 0.0 ($RES_SIM_159) (63) [SCAL] (1) $TEV_0 = $PRE.pulsem.twomPulse.timerNegative.entryTime ($RES_EVT_247) (64) [SCAL] (1) $TEV_1 = $PRE.pulsem.twomPulse.timerPositive.entryTime ($RES_EVT_248) (65) [SCAL] (1) $TEV_2 = time < ramp.startTime ($RES_EVT_249) (66) [ARRY] (3) pulsem.twomPulse.replicator.y = {pulsem.twomPulse.gain.y for $i1 in 1:3} ($RES_SIM_41) (67) [SCAL] (1) pulsem.twomPulse.gain.y = pulsem.twomPulse.gain.k * pulsem.twomPulse.limiter.y ($RES_SIM_42) (68) [FOR-] (3) ($RES_SIM_43) (68) [----] for $i1 in 1:3 loop (68) [----] [SCAL] (1) pulsem.twomPulse.negativeEqual[$i1].y = $SEV_4[$i1] ($RES_SIM_44) (68) [----] end for; (69) [FOR-] (3) ($RES_SIM_45) (69) [----] for $i1 in 1:3 loop (69) [----] [SCAL] (1) pulsem.twomPulse.greaterPositive[$i1].y = $SEV_5[$i1] ($RES_SIM_46) (69) [----] end for; (70) [FOR-] (3) ($RES_SIM_47) (70) [----] for $i1 in 1:3 loop (70) [----] [SCAL] (1) pulsem.twomPulse.timerNegative[$i1].y = if pulsem.twomPulse.timerNegative[$i1].u then time - pulsem.twomPulse.timerNegative[$i1].entryTime else 0.0 ($RES_SIM_48) (70) [----] end for; (71) [SCAL] (1) pulsem.voltageSensor.plug_p.pin[3].v = pulsem.ac.pin[3].v ($RES_SIM_160) (72) [SCAL] (1) pulsem.voltageSensor.plug_p.pin[3].v = pulsem.delta.plug_n.pin[3].v ($RES_SIM_161) (73) [FOR-] (3) ($RES_SIM_49) (73) [----] for $i1 in 1:3 loop (73) [----] [WHEN] (1)when pulsem.twomPulse.timerNegative[$i1].u then (73) [----] [----] pulsem.twomPulse.timerNegative[$i1].entryTime := time (73) [----] [----] end when; (73) [----] end for; (74) [SCAL] (1) pulsem.voltageSensor.plug_p.pin[2].v = pulsem.ac.pin[2].v ($RES_SIM_162) (75) [SCAL] (1) pulsem.voltageSensor.plug_p.pin[2].v = pulsem.delta.plug_n.pin[2].v ($RES_SIM_163) (76) [SCAL] (1) pulsem.voltageSensor.plug_p.pin[1].v = pulsem.ac.pin[1].v ($RES_SIM_164) (77) [SCAL] (1) pulsem.voltageSensor.plug_p.pin[1].v = pulsem.delta.plug_n.pin[1].v ($RES_SIM_165) (78) [SCAL] (1) -star.pin_n.i = sum(star.plug_p.pin.i) ($RES_$AUX_246) (79) [ARRY] (3) pulsem.voltageSensor.voltageSensor.v = pulsem.voltageSensor.v ($RES_SIM_166) (80) [FOR-] (3) ($RES_SIM_167) (80) [----] for $i1 in 1:3 loop (80) [----] [SCAL] (1) pulsem.voltageSensor.voltageSensor[$i1].p.i - pulsem.voltageSensor.plug_p.pin[$i1].i = 0.0 ($RES_SIM_168) (80) [----] end for; (81) [FOR-] (3) ($RES_$AUX_244) (81) [----] for $i1 in 1:3 loop (81) [----] [SCAL] (1) $FUN_2[$i1] = sin(sineVoltage_p.sineVoltage[$i1].signalSource.freqHz * 6.283185307179586 * (time - sineVoltage_p.sineVoltage[$i1].signalSource.startTime) + sineVoltage_p.sineVoltage[$i1].signalSource.phase) ($RES_$AUX_245) (81) [----] end for; (82) [SCAL] (1) -rectifier.iDC = sum(rectifier.star.plug_p.pin.i) ($RES_$AUX_243) (83) [ARRY] (3) pulsem.voltageSensor.voltageSensor.p.v = pulsem.voltageSensor.plug_p.pin.v ($RES_SIM_169) (84) [SCAL] (1) rectifier.LossPower = sum(rectifier.thyristor.idealThyristor.LossPower) ($RES_$AUX_242) (85) [SCAL] (1) rootMeanSquareVoltage.product.y = product(rootMeanSquareVoltage.product.u) ($RES_$AUX_241) (86) [SCAL] (1) $TEV_3 = time < (ramp.startTime + ramp.duration) ($RES_EVT_250) (87) [SCAL] (1) $TEV_10 = $PRE.rectifier.thyristor.idealThyristor[$i1].off ($RES_EVT_257) (88) [SCAL] (1) $SEV_1 = pulsem.twomPulse.limiter.simplifiedExpr > pulsem.twomPulse.limiter.uMax ($RES_EVT_259) (89) [FOR-] (3) ($RES_SIM_51) (89) [----] for $i1 in 1:3 loop (89) [----] [SCAL] (1) pulsem.twomPulse.timerPositive[$i1].y = if pulsem.twomPulse.timerPositive[$i1].u then time - pulsem.twomPulse.timerPositive[$i1].entryTime else 0.0 ($RES_SIM_52) (89) [----] end for; (90) [FOR-] (3) ($RES_SIM_53) (90) [----] for $i1 in 1:3 loop (90) [----] [WHEN] (1)when pulsem.twomPulse.timerPositive[$i1].u then (90) [----] [----] pulsem.twomPulse.timerPositive[$i1].entryTime := time (90) [----] [----] end when; (90) [----] end for; (91) [FOR-] (3) ($RES_SIM_55) (91) [----] for $i1 in 1:3 loop (91) [----] [SCAL] (1) pulsem.twomPulse.negativeThreshold[$i1].y = $SEV_6[$i1] ($RES_SIM_56) (91) [----] end for; (92) [FOR-] (3) ($RES_SIM_57) (92) [----] for $i1 in 1:3 loop (92) [----] [SCAL] (1) pulsem.twomPulse.positiveThreshold[$i1].y = $SEV_7[$i1] ($RES_SIM_58) (92) [----] end for; (93) [FOR-] (3) ($RES_SIM_170) (93) [----] for $i1 in 1:3 loop (93) [----] [SCAL] (1) pulsem.voltageSensor.voltageSensor[$i1].n.i - pulsem.voltageSensor.plug_n.pin[$i1].i = 0.0 ($RES_SIM_171) (93) [----] end for; (94) [ARRY] (3) pulsem.voltageSensor.voltageSensor.n.v = pulsem.voltageSensor.plug_n.pin.v ($RES_SIM_172) (95) [SCAL] (1) rectifier.powerTotalAC = sum(rectifier.powerAC) ($RES_$AUX_239) (96) [SCAL] (1) -(pulsem.delta.plug_n.pin[3].i + pulsem.delta.plug_p.pin[1].i) = 0.0 ($RES_SIM_173) (97) [SCAL] (1) pulsem.delta.plug_n.pin[3].v = pulsem.delta.plug_p.pin[1].v ($RES_SIM_174) (98) [SCAL] (1) -(pulsem.delta.plug_n.pin[2].i + pulsem.delta.plug_p.pin[3].i) = 0.0 ($RES_SIM_175) (99) [SCAL] (1) pulsem.delta.plug_n.pin[2].v = pulsem.delta.plug_p.pin[3].v ($RES_SIM_176) (100) [SCAL] (1) -(pulsem.delta.plug_n.pin[1].i + pulsem.delta.plug_p.pin[2].i) = 0.0 ($RES_SIM_177) (101) [SCAL] (1) pulsem.delta.plug_n.pin[1].v = pulsem.delta.plug_p.pin[2].v ($RES_SIM_178) (102) [SCAL] (1) pulsem.twomPulse.realPassThrough[3].y = pulsem.twomPulse.positiveThreshold[3].u ($RES_SIM_179) (103) [SCAL] (1) $SEV_2 = pulsem.twomPulse.limiter.simplifiedExpr < pulsem.twomPulse.limiter.uMin ($RES_EVT_260) (104) [FOR-] (3) ($RES_EVT_262) (104) [----] for $i1 in 1:3 loop (104) [----] [SCAL] (1) $SEV_4[$i1] = pulsem.twomPulse.negativeEqual[$i1].u1 > pulsem.twomPulse.negativeEqual[$i1].u2 ($RES_EVT_263) (104) [----] end for; (105) [FOR-] (3) ($RES_EVT_264) (105) [----] for $i1 in 1:3 loop (105) [----] [SCAL] (1) $SEV_5[$i1] = pulsem.twomPulse.greaterPositive[$i1].u1 > pulsem.twomPulse.greaterPositive[$i1].u2 ($RES_EVT_265) (105) [----] end for; (106) [FOR-] (3) ($RES_EVT_266) (106) [----] for $i1 in 1:3 loop (106) [----] [SCAL] (1) $SEV_6[$i1] = pulsem.twomPulse.negativeThreshold[$i1].u < pulsem.twomPulse.negativeThreshold[$i1].threshold ($RES_EVT_267) (106) [----] end for; (107) [ARRY] (3) rectifier.vAC = rectifier.ac.pin[:].v ($RES_BND_231) (108) [ARRY] (3) rectifier.iAC = rectifier.ac.pin[:].i ($RES_BND_232) (109) [FOR-] (3) ($RES_EVT_268) (109) [----] for $i1 in 1:3 loop (109) [----] [SCAL] (1) $SEV_7[$i1] = pulsem.twomPulse.positiveThreshold[$i1].u > pulsem.twomPulse.positiveThreshold[$i1].threshold ($RES_EVT_269) (109) [----] end for; (110) [ARRY] (3) rectifier.powerAC = rectifier.vAC * rectifier.iAC ($RES_BND_233) (111) [SCAL] (1) rectifier.powerDC = rectifier.vDC * rectifier.iDC ($RES_BND_237) (112) [SCAL] (1) $DER.meanCurrent.x = -currentSensor.n.i ($RES_SIM_61) (113) [FOR-] (3) ($RES_SIM_101) (113) [----] for $i1 in 1:3 loop (113) [----] [SCAL] (1) rectifier.andCondition_p[$i1].y = $SEV_11[$i1] ($RES_SIM_102) (113) [----] end for; (114) [ARRY] (3) rectifier.thyristor.off = rectifier.thyristor.idealThyristor.off ($RES_BND_238) (115) [ARRY] (3) sineVoltage_p.i = sineVoltage_p.plug_p.pin.i ($RES_SIM_103) (116) [ARRY] (3) sineVoltage_p.v = sineVoltage_p.plug_p.pin.v - sineVoltage_p.plug_n.pin.v ($RES_SIM_104) (117) [FOR-] (3) ($RES_SIM_105) (117) [----] for $i1 in 1:3 loop (117) [----] [SCAL] (1) sineVoltage_p.sineVoltage[$i1].i = sineVoltage_p.sineVoltage[$i1].p.i ($RES_SIM_106) (117) [----] end for; (118) [SCAL] (1) pulsem.twomPulse.realPassThrough[3].y = pulsem.twomPulse.negativeThreshold[3].u ($RES_SIM_180) (119) [FOR-] (3) ($RES_SIM_107) (119) [----] for $i1 in 1:3 loop (119) [----] [SCAL] (1) 0.0 = sineVoltage_p.sineVoltage[$i1].p.i + sineVoltage_p.sineVoltage[$i1].n.i ($RES_SIM_108) (119) [----] end for; (120) [SCAL] (1) $DER.rootMeanSquareVoltage.mean.x = rootMeanSquareVoltage.product.y ($RES_SIM_68) (121) [SCAL] (1) pulsem.twomPulse.realPassThrough[2].y = pulsem.twomPulse.positiveThreshold[2].u ($RES_SIM_181) (122) [SCAL] (1) pulsem.twomPulse.realPassThrough[2].y = pulsem.twomPulse.negativeThreshold[2].u ($RES_SIM_182) (123) [FOR-] (3) ($RES_SIM_109) (123) [----] for $i1 in 1:3 loop (123) [----] [SCAL] (1) sineVoltage_p.sineVoltage[$i1].v = sineVoltage_p.sineVoltage[$i1].p.v - sineVoltage_p.sineVoltage[$i1].n.v ($RES_SIM_110) (123) [----] end for; (124) [SCAL] (1) pulsem.twomPulse.realPassThrough[1].y = pulsem.twomPulse.positiveThreshold[1].u ($RES_SIM_183) (125) [SCAL] (1) pulsem.twomPulse.realPassThrough[1].y = pulsem.twomPulse.negativeThreshold[1].u ($RES_SIM_184) (126) [ARRY] (3) pulsem.twomPulse.realPassThrough.u = pulsem.twomPulse.v ($RES_SIM_185) (127) [SCAL] (1) pulsem.twomPulse.replicator.y[3] = pulsem.twomPulse.greaterPositive[3].u2 ($RES_SIM_188) (128) [SCAL] (1) pulsem.twomPulse.replicator.y[3] = pulsem.twomPulse.negativeEqual[3].u2 ($RES_SIM_189) (129) [FOR-] (3) ($RES_EVT_270) (129) [----] for $i1 in 1:3 loop (129) [----] [SCAL] (1) $SEV_8[$i1] = rectifier.thyristor.idealThyristor[$i1].s < 0.0 ($RES_EVT_271) (129) [----] end for; (130) [FOR-] (3) ($RES_EVT_272) (130) [----] for $i1 in 1:3 loop (130) [----] [SCAL] (1) $SEV_9[$i1] = $TEV_10 and not rectifier.thyristor.idealThyristor[$i1].fire ($RES_EVT_273) (130) [----] end for; (131) [FOR-] (3) ($RES_EVT_274) (131) [----] for $i1 in 1:3 loop (131) [----] [SCAL] (1) $SEV_10[$i1] = $SEV_8[$i1] or $SEV_9[$i1] ($RES_EVT_275) (131) [----] end for; (132) [FOR-] (3) ($RES_EVT_276) (132) [----] for $i1 in 1:3 loop (132) [----] [SCAL] (1) $SEV_11[$i1] = rectifier.andCondition_p[$i1].u1 and rectifier.andCondition_p[$i1].u2 ($RES_EVT_277) (132) [----] end for; (133) [FOR-] (3) ($RES_EVT_278) (133) [----] for $i1 in 1:3 loop (133) [----] [SCAL] (1) $SEV_12[$i1] = time < sineVoltage_p.sineVoltage[$i1].signalSource.startTime ($RES_EVT_279) (133) [----] end for; (134) [FOR-] (3) ($RES_SIM_111) (134) [----] for $i1 in 1:3 loop (134) [----] [SCAL] (1) sineVoltage_p.sineVoltage[$i1].v = sineVoltage_p.sineVoltage[$i1].signalSource.y ($RES_SIM_112) (134) [----] end for; (135) [SCAL] (1) $DER.meanVoltage.x = meanVoltage.u ($RES_SIM_72) (136) [SCAL] (1) meanVoltage.u = rectifier.vDC ($RES_SIM_73) (137) [FOR-] (3) ($RES_SIM_113) (137) [----] for $i1 in 1:3 loop (137) [----] [SCAL] (1) sineVoltage_p.sineVoltage[$i1].signalSource.y = sineVoltage_p.sineVoltage[$i1].signalSource.offset + (if $SEV_12[$i1] then 0.0 else sineVoltage_p.sineVoltage[$i1].signalSource.amplitude * $FUN_2[$i1]) ($RES_SIM_114) (137) [----] end for; (138) [FOR-] (3) ($RES_SIM_116) (138) [----] for $i1 in 1:3 loop (138) [----] [SCAL] (1) star.plug_p.pin[$i1].v = 0.0 ($RES_SIM_117) (138) [----] end for; (139) [SCAL] (1) pulsem.twomPulse.replicator.y[2] = pulsem.twomPulse.greaterPositive[2].u2 ($RES_SIM_190) (140) [SCAL] (1) pulsem.twomPulse.replicator.y[2] = pulsem.twomPulse.negativeEqual[2].u2 ($RES_SIM_191) (141) [FOR-] (3) ($RES_SIM_79) (141) [----] for $i1 in 1:3 loop (141) [----] [SCAL] (1) rectifier.star.plug_p.pin[$i1].v = rectifier.vDC ($RES_SIM_80) (141) [----] end for; (142) [SCAL] (1) pulsem.twomPulse.replicator.y[1] = pulsem.twomPulse.greaterPositive[1].u2 ($RES_SIM_192) (143) [SCAL] (1) -(currentSensor.n.i + inductor.i) = 0.0 ($RES_SIM_119) (144) [SCAL] (1) pulsem.twomPulse.replicator.y[1] = pulsem.twomPulse.negativeEqual[1].u2 ($RES_SIM_193) (145) [ARRY] (3) pulsem.twomPulse.negativeEqual.y = pulsem.twomPulse.fire_n ($RES_SIM_195) (146) [ARRY] (3) pulsem.twomPulse.greaterPositive.y = pulsem.twomPulse.fire_p ($RES_SIM_196) (147) [ARRY] (3) pulsem.twomPulse.negativeEqual.u1 = pulsem.twomPulse.timerNegative.y ($RES_SIM_197) (148) [ARRY] (3) pulsem.twomPulse.timerPositive.y = pulsem.twomPulse.greaterPositive.u1 ($RES_SIM_198) (149) [ARRY] (3) pulsem.twomPulse.negativeThreshold.y = pulsem.twomPulse.timerNegative.u ($RES_SIM_199) (150) [ARRY] (3) pulsem.twomPulse.positiveThreshold.y = pulsem.twomPulse.timerPositive.u ($RES_SIM_200) (151) [SCAL] (1) meanVoltage.u = rootMeanSquareVoltage.product.u[1] ($RES_SIM_201) (152) [SCAL] (1) meanVoltage.u = rootMeanSquareVoltage.product.u[2] ($RES_SIM_202)