Running: ./testmodel.py --libraries=/home/hudson/saved_omc/libraries/.openmodelica/libraries --ompython_omhome=/usr Modelica_3.1_Modelica.Electrical.PowerConverters.Examples.ACDC.RectifierCenterTapmPulse.ThyristorCenterTapmPulse_RL.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_RL,tolerance=1e-06,outputFormat="empty",numberOfIntervals=1000,variableFilter="",fileNamePrefix="Modelica_3.1_Modelica.Electrical.PowerConverters.Examples.ACDC.RectifierCenterTapmPulse.ThyristorCenterTapmPulse_RL") translateModel(Modelica.Electrical.PowerConverters.Examples.ACDC.RectifierCenterTapmPulse.ThyristorCenterTapmPulse_RL,tolerance=1e-06,outputFormat="empty",numberOfIntervals=1000,variableFilter="",fileNamePrefix="Modelica_3.1_Modelica.Electrical.PowerConverters.Examples.ACDC.RectifierCenterTapmPulse.ThyristorCenterTapmPulse_RL") Notification: Performance of loadFile(/home/hudson/saved_omc/libraries/.openmodelica/libraries/ModelicaServices 4.0.0+maint.om/package.mo): time 0.00116/0.00116, allocations: 104.9 kB / 16.42 MB, free: 6.457 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.001248/0.001248, allocations: 187.2 kB / 17.35 MB, free: 5.707 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.479/1.479, allocations: 205.1 MB / 223.2 MB, free: 12.24 MB / 190.1 MB Notification: Performance of FrontEnd - Absyn->SCode: time 2.718e-05/2.72e-05, allocations: 2.984 kB / 327.2 MB, free: 3.273 MB / 270.1 MB Notification: Performance of NFInst.instantiate(Modelica.Electrical.PowerConverters.Examples.ACDC.RectifierCenterTapmPulse.ThyristorCenterTapmPulse_RL): time 0.006135/0.00617, allocations: 4.934 MB / 332.2 MB, free: 14.32 MB / 286.1 MB Notification: Performance of NFInst.instExpressions: time 0.003156/0.009342, allocations: 1.583 MB / 333.8 MB, free: 12.73 MB / 286.1 MB Notification: Performance of NFInst.updateImplicitVariability: time 0.0003658/0.00972, allocations: 27.81 kB / 333.8 MB, free: 12.7 MB / 286.1 MB Notification: Performance of NFTyping.typeComponents: time 0.0004009/0.01013, allocations: 190.4 kB / 334 MB, free: 12.51 MB / 286.1 MB Notification: Performance of NFTyping.typeBindings: time 0.0008704/0.01101, allocations: 306.1 kB / 334.3 MB, free: 12.21 MB / 286.1 MB Notification: Performance of NFTyping.typeClassSections: time 0.0005594/0.01158, allocations: 299.5 kB / 334.6 MB, free: 11.92 MB / 286.1 MB Notification: Performance of NFFlatten.flatten: time 0.001685/0.01327, allocations: 1.715 MB / 336.3 MB, free: 10.2 MB / 286.1 MB Notification: Performance of NFFlatten.resolveConnections: time 0.0009085/0.01419, allocations: 0.7696 MB / 337 MB, free: 9.406 MB / 286.1 MB Notification: Performance of NFEvalConstants.evaluate: time 0.0007133/0.01491, allocations: 0.5569 MB / 337.6 MB, free: 8.848 MB / 286.1 MB Notification: Performance of NFSimplifyModel.simplify: time 0.0006237/0.01555, allocations: 0.5566 MB / 338.2 MB, free: 8.289 MB / 286.1 MB Notification: Performance of NFPackage.collectConstants: time 0.0001388/0.0157, allocations: 108 kB / 338.3 MB, free: 8.184 MB / 286.1 MB Notification: Performance of NFFlatten.collectFunctions: time 0.0001555/0.01586, allocations: 108 kB / 338.4 MB, free: 8.078 MB / 286.1 MB Notification: Performance of combineBinaries: time 0.001165/0.01703, allocations: 1.462 MB / 339.8 MB, free: 6.602 MB / 286.1 MB Notification: Performance of replaceArrayConstructors: time 0.0005941/0.01763, allocations: 0.9295 MB / 340.8 MB, free: 5.66 MB / 286.1 MB Notification: Performance of NFVerifyModel.verify: time 0.0001749/0.01782, allocations: 155.5 kB / 340.9 MB, free: 5.508 MB / 286.1 MB Notification: Performance of FrontEnd: time 0.0001578/0.01798, allocations: 27.81 kB / 340.9 MB, free: 5.48 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: 325 (175) * Number of variables: 325 (150) Notification: Performance of Bindings: time 0.004389/0.02238, allocations: 4.718 MB / 345.7 MB, free: 0.5977 MB / 286.1 MB Notification: Performance of FunctionAlias: time 0.0002944/0.02268, allocations: 259.6 kB / 345.9 MB, free: 348 kB / 286.1 MB Notification: Performance of Early Inline: time 0.002262/0.02495, allocations: 2.357 MB / 348.3 MB, free: 13.94 MB / 302.1 MB Notification: Performance of simplify1: time 0.0001672/0.02513, allocations: 131.8 kB / 348.4 MB, free: 13.81 MB / 302.1 MB Notification: Performance of Alias: time 0.002903/0.02804, allocations: 2.641 MB / 351 MB, free: 10.96 MB / 302.1 MB Notification: Performance of simplify2: time 0.0001083/0.02816, allocations: 107.8 kB / 351.1 MB, free: 10.85 MB / 302.1 MB Notification: Performance of Events: time 0.0004898/0.02866, allocations: 446.6 kB / 351.6 MB, free: 10.4 MB / 302.1 MB Notification: Performance of Detect States: time 0.0008402/0.02951, allocations: 0.8989 MB / 352.5 MB, free: 9.477 MB / 302.1 MB Notification: Performance of Partitioning: time 0.001046/0.03056, allocations: 1.027 MB / 353.5 MB, free: 8.363 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_36) Error: Internal error NBAdjacency.Matrix.create failed to create adjacency matrix for system: System Variables (123/316) **************************** (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] (3) flow Real[3] sineVoltage_p.sineVoltage.p.i (27) [ALGB] (3) protected final Real[3] rectifier.thyristor.idealThyristor.s (start = {0.0 for $i1 in 1:3}) (28) [ALGB] (1) Real rootMeanSquareVoltage.product.y (29) [ALGB] (1) Real meanVoltage.u (30) [ALGB] (3) flow Real[3] rectifier.ac.pin.i (31) [ALGB] (2) Real[2] rootMeanSquareVoltage.product.u (32) [DISC] (3) Boolean[3] pulsem.fire_n (33) [ALGB] (3) flow Real[3] pulsem.ac.pin.i (34) [ALGB] (3) Real[3] star.plug_p.pin.v (35) [DISC] (3) Boolean[3] pulsem.fire_p (36) [DISC] (3) Boolean[3] pulsem.twomPulse.greaterPositive.y (37) [DISC] (3) Boolean[3] $SEV_6[$i1] (38) [ALGB] (1) Real rectifier.vDC = rectifier.vDC (39) [ALGB] (1) Real resistor.LossPower (40) [ALGB] (3) final Real[3] rectifier.thyristor.idealThyristor.i (41) [ALGB] (3) Real[3] sineVoltage_p.sineVoltage.p.v (42) [ALGB] (3) Real[3] rectifier.ac.pin.v (43) [DISC] (3) Boolean[3] pulsem.twomPulse.negativeThreshold.y (44) [DISC] (3) Boolean[3] rectifier.thyristor.fire (45) [ALGB] (3) Real[3] $FUN_2 (46) [ALGB] (3) Real[3] rectifier.thyristor.plug_p.pin.v (47) [ALGB] (3) Real[3] pulsem.ac.pin.v (48) [ALGB] (3) flow Real[3] pulsem.delta.plug_n.pin.i (49) [ALGB] (3) Real[3] pulsem.twomPulse.negativeThreshold.u (50) [ALGB] (3) Real[3] pulsem.twomPulse.greaterPositive.u2 (51) [DISC] (3) Boolean[3] $SEV_9[$i1] (52) [ALGB] (3) flow Real[3] sineVoltage_p.plug_n.pin.i (53) [ALGB] (3) Real[3] pulsem.twomPulse.greaterPositive.u1 (54) [DISC] (3) Boolean[3] rectifier.thyristor.off = rectifier.thyristor.idealThyristor.off (55) [DER-] (1) Real $DER.meanVoltage.x (56) [ALGB] (3) flow Real[3] rectifier.thyristor.plug_p.pin.i (57) [DISC] (3) Boolean[3] $SEV_10[$i1] (58) [ALGB] (3) Real[3] pulsem.delta.plug_n.pin.v (59) [ALGB] (3) final Real[3] rectifier.thyristor.idealThyristor.LossPower (60) [ALGB] (3) Real[3] sineVoltage_p.plug_n.pin.v (61) [ALGB] (1) Real rectifier.powerTotalAC = sum(rectifier.powerAC) (62) [DISC] (3) Boolean[3] pulsem.twomPulse.negativeEqual.y (63) [DISC] (3) Boolean[3] rectifier.fire_p (64) [ALGB] (3) Real[3] rectifier.iAC = rectifier.ac.pin[:].i (65) [ALGB] (3) Real[3] pulsem.twomPulse.v (66) [ALGB] (3) flow Real[3] pulsem.voltageSensor.plug_n.pin.i (67) [ALGB] (3) Real[3] pulsem.twomPulse.realPassThrough.u (68) [DISC] (3) Boolean[3] $SEV_5[$i1] (69) [DISC] (3) Boolean[3] rectifier.andCondition_p.u2 (70) [DISC] (3) Boolean[3] rectifier.andCondition_p.u1 (71) [ALGB] (3) Real[3] pulsem.twomPulse.realPassThrough.y (72) [ALGB] (1) flow Real star.pin_n.i (73) [ALGB] (3) Real[3] rectifier.thyristor.plug_n.pin.v (74) [ALGB] (3) flow Real[3] pulsem.delta.plug_p.pin.i (75) [DER-] (1) Real $DER.meanCurrent.x (76) [ALGB] (3) flow Real[3] sineVoltage_p.plug_p.pin.i (77) [DISS] (3) protected discrete Real[3] pulsem.twomPulse.timerNegative.entryTime (78) [ALGB] (1) Real inductor.v (79) [ALGB] (3) Real[3] rectifier.thyristor.i (80) [ALGB] (3) Real[3] sineVoltage_p.sineVoltage.signalSource.y (81) [ALGB] (3) Real[3] pulsem.voltageSensor.plug_n.pin.v (82) [ALGB] (3) Real[3] sineVoltage_p.i (83) [ALGB] (1) flow Real currentSensor.n.i (84) [DISC] (3) Boolean[3] $SEV_8[$i1] (85) [DISC] (3) Boolean[3] rectifier.enableLogic.booleanReplicator.y (86) [ALGB] (3) flow Real[3] rectifier.thyristor.plug_n.pin.i (87) [ALGB] (3) Real[3] pulsem.delta.plug_p.pin.v (88) [ALGB] (1) Real rectifier.powerDC = rectifier.vDC * rectifier.iDC (89) [DISS] (3) protected discrete Real[3] pulsem.twomPulse.timerPositive.entryTime (90) [ALGB] (3) Real[3] sineVoltage_p.plug_p.pin.v (91) [ALGB] (3) Real[3] rectifier.thyristor.idealThyristor.p.v (92) [ALGB] (3) Real[3] rectifier.thyristor.v (93) [DISC] (3) Boolean[3] pulsem.twomPulse.fire_p (94) [DISC] (1) Boolean $TEV_8 (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) [ALGB] (3) flow Real[3] pulsem.voltageSensor.plug_p.pin.i (101) [ALGB] (3) Real[3] pulsem.voltageSensor.v (102) [ALGB] (3) Real[3] pulsem.voltageSensor.voltageSensor.p.v (103) [DISC] (1) Boolean $TEV_1 (104) [DISC] (1) Boolean $TEV_0 (105) [ALGB] (1) Real resistor.R_actual (106) [DISC] (3) Boolean[3] rectifier.thyristor.idealThyristor.fire (107) [ALGB] (3) flow Real[3] rectifier.thyristor.idealThyristor.p.i (108) [DISC] (3) Boolean[3] $SEV_12[$i1] (109) [DISC] (3) Boolean[3] $SEV_4[$i1] (110) [DER-] (1) Real $DER.rootMeanSquareVoltage.mean.x (111) [ALGB] (1) Real resistor.v (112) [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}) (113) [ALGB] (3) Real[3] rectifier.thyristor.idealThyristor.n.v (114) [ALGB] (3) Real[3] sineVoltage_p.sineVoltage.i (115) [ALGB] (3) Real[3] pulsem.voltageSensor.plug_p.pin.v (116) [ALGB] (3) flow Real[3] pulsem.voltageSensor.voltageSensor.p.i (117) [ALGB] (1) Real pulsem.twomPulse.gain.y (118) [DISC] (3) Boolean[3] pulsem.twomPulse.timerPositive.u (119) [ALGB] (3) Real[3] rectifier.powerAC = rectifier.vAC * rectifier.iAC (120) [ALGB] (3) Real[3] pulsem.voltageSensor.voltageSensor.n.v (121) [ALGB] (1) flow Real ground.p.i (122) [ALGB] (3) Real[3] pulsem.twomPulse.timerPositive.y (123) [DISC] (3) Boolean[3] $SEV_7[$i1] System Equations (148/316) **************************** (1) [FOR-] (3) ($RES_SIM_205) (1) [----] for $i1 in 1:3 loop (1) [----] [SCAL] (1) rectifier.thyristor.plug_n.pin[$i1].i + rectifier.star.plug_p.pin[$i1].i = 0.0 ($RES_SIM_206) (1) [----] end for; (2) [FOR-] (3) ($RES_SIM_120) (2) [----] for $i1 in 1:3 loop (2) [----] [SCAL] (1) star.plug_p.pin[$i1].i + sineVoltage_p.plug_n.pin[$i1].i = 0.0 ($RES_SIM_121) (2) [----] end for; (3) [FOR-] (3) ($RES_SIM_81) (3) [----] for $i1 in 1:3 loop (3) [----] [SCAL] (1) 0.0 = rectifier.thyristor.idealThyristor[$i1].p.i + rectifier.thyristor.idealThyristor[$i1].n.i ($RES_SIM_82) (3) [----] end for; (4) [ARRY] (3) rectifier.thyristor.plug_n.pin.v = rectifier.star.plug_p.pin.v ($RES_SIM_207) (5) [ARRY] (3) star.plug_p.pin.v = sineVoltage_p.plug_n.pin.v ($RES_SIM_122) (6) [ARRY] (3) rectifier.thyristor.fire = rectifier.thyristor.idealThyristor.fire ($RES_SIM_208) (7) [FOR-] (3) ($RES_SIM_83) (7) [----] for $i1 in 1:3 loop (7) [----] [SCAL] (1) rectifier.thyristor.idealThyristor[$i1].v = rectifier.thyristor.idealThyristor[$i1].p.v - rectifier.thyristor.idealThyristor[$i1].n.v ($RES_SIM_84) (7) [----] end for; (8) [SCAL] (1) rectifier.ac.pin[3].i + sineVoltage_p.plug_p.pin[3].i + pulsem.ac.pin[3].i = 0.0 ($RES_SIM_123) (9) [FOR-] (3) ($RES_SIM_209) (9) [----] for $i1 in 1:3 loop (9) [----] [SCAL] (1) rectifier.thyristor.idealThyristor[$i1].n.i - rectifier.thyristor.plug_n.pin[$i1].i = 0.0 ($RES_SIM_210) (9) [----] end for; (10) [SCAL] (1) rectifier.ac.pin[2].i + sineVoltage_p.plug_p.pin[2].i + pulsem.ac.pin[2].i = 0.0 ($RES_SIM_124) (11) [SCAL] (1) rectifier.ac.pin[1].i + sineVoltage_p.plug_p.pin[1].i + pulsem.ac.pin[1].i = 0.0 ($RES_SIM_125) (12) [SCAL] (1) rectifier.ac.pin[3].v = pulsem.ac.pin[3].v ($RES_SIM_126) (13) [FOR-] (3) ($RES_SIM_87) (13) [----] for $i1 in 1:3 loop (13) [----] [SCAL] (1) rectifier.thyristor.idealThyristor[$i1].LossPower = rectifier.thyristor.idealThyristor[$i1].v * rectifier.thyristor.idealThyristor[$i1].i ($RES_SIM_88) (13) [----] end for; (14) [SCAL] (1) rectifier.ac.pin[3].v = sineVoltage_p.plug_p.pin[3].v ($RES_SIM_127) (15) [SCAL] (1) rectifier.ac.pin[2].v = pulsem.ac.pin[2].v ($RES_SIM_128) (16) [FOR-] (3) ($RES_SIM_89) (16) [----] for $i1 in 1:3 loop (16) [----] [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_90) (16) [----] end for; (17) [SCAL] (1) rectifier.ac.pin[2].v = sineVoltage_p.plug_p.pin[2].v ($RES_SIM_129) (18) [ARRY] (3) rectifier.thyristor.idealThyristor.n.v = rectifier.thyristor.plug_n.pin.v ($RES_SIM_211) (19) [FOR-] (3) ($RES_SIM_212) (19) [----] for $i1 in 1:3 loop (19) [----] [SCAL] (1) rectifier.thyristor.idealThyristor[$i1].p.i - rectifier.thyristor.plug_p.pin[$i1].i = 0.0 ($RES_SIM_213) (19) [----] end for; (20) [SCAL] (1) inductor.v = resistor.n.v ($RES_SIM_15) (21) [ARRY] (3) rectifier.thyristor.plug_p.pin.v = rectifier.thyristor.idealThyristor.p.v ($RES_SIM_214) (22) [SCAL] (1) $DER.inductor.i = inductor.v ($RES_SIM_16) (23) [SCAL] (1) rectifier.ac.pin[1].v = pulsem.ac.pin[1].v ($RES_SIM_130) (24) [SCAL] (1) rectifier.ac.pin[1].v = sineVoltage_p.plug_p.pin[1].v ($RES_SIM_131) (25) [ARRY] (3) rectifier.enableLogic.internalEnable = rectifier.enableLogic.booleanReplicator.y ($RES_SIM_216) (26) [FOR-] (3) ($RES_SIM_91) (26) [----] for $i1 in 1:3 loop (26) [----] [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_92) (26) [----] end for; (27) [FOR-] (3) ($RES_SIM_217) (27) [----] for $i1 in 1:3 loop (27) [----] [SCAL] (1) sineVoltage_p.sineVoltage[$i1].n.i - sineVoltage_p.plug_n.pin[$i1].i = 0.0 ($RES_SIM_218) (27) [----] end for; (28) [SCAL] (1) resistor.v = rectifier.vDC - resistor.n.v ($RES_SIM_19) (29) [ARRY] (3) pulsem.fire_p = rectifier.fire_p ($RES_SIM_132) (30) [FOR-] (3) ($RES_SIM_93) (30) [----] for $i1 in 1:3 loop (30) [----] [SCAL] (1) rectifier.thyristor.idealThyristor[$i1].off = $SEV_10[$i1] ($RES_SIM_94) (30) [----] end for; (31) [ARRY] (3) sineVoltage_p.sineVoltage.n.v = sineVoltage_p.plug_n.pin.v ($RES_SIM_219) (32) [ARRY] (3) rectifier.enableLogic.booleanReplicator.y = {rectifier.enableLogic.enableConstantSource.k for $i1 in 1:3} ($RES_SIM_95) (33) [FOR-] (3) ($RES_SIM_97) (33) [----] for $i1 in 1:3 loop (33) [----] [SCAL] (1) rectifier.andCondition_p[$i1].y = $SEV_11[$i1] ($RES_SIM_98) (33) [----] end for; (34) [ARRY] (3) sineVoltage_p.i = sineVoltage_p.plug_p.pin.i ($RES_SIM_99) (35) [SCAL] (1) resistor.LossPower = resistor.v * inductor.i ($RES_SIM_21) (36) [FOR-] (3) ($RES_SIM_220) (36) [----] for $i1 in 1:3 loop (36) [----] [SCAL] (1) sineVoltage_p.sineVoltage[$i1].p.i - sineVoltage_p.plug_p.pin[$i1].i = 0.0 ($RES_SIM_221) (36) [----] end for; (37) [SCAL] (1) resistor.v = resistor.R_actual * inductor.i ($RES_SIM_22) (38) [SCAL] (1) resistor.R_actual = resistor.R * (1.0 + resistor.alpha * (resistor.T - resistor.T_ref)) ($RES_SIM_23) (39) [ARRY] (3) sineVoltage_p.sineVoltage.p.v = sineVoltage_p.plug_p.pin.v ($RES_SIM_222) (40) [FOR-] (3) ($RES_SIM_25) (40) [----] for $i1 in 1:3 loop (40) [----] [SCAL] (1) pulsem.voltageSensor.voltageSensor[$i1].v = pulsem.voltageSensor.voltageSensor[$i1].p.v - pulsem.voltageSensor.voltageSensor[$i1].n.v ($RES_SIM_26) (40) [----] end for; (41) [FOR-] (3) ($RES_SIM_27) (41) [----] for $i1 in 1:3 loop (41) [----] [SCAL] (1) pulsem.voltageSensor.voltageSensor[$i1].n.i = 0.0 ($RES_SIM_28) (41) [----] end for; (42) [FOR-] (3) ($RES_SIM_29) (42) [----] for $i1 in 1:3 loop (42) [----] [SCAL] (1) pulsem.voltageSensor.voltageSensor[$i1].p.i = 0.0 ($RES_SIM_30) (42) [----] end for; (43) [ARRY] (3) pulsem.twomPulse.fire_p = pulsem.fire_p ($RES_SIM_143) (44) [ARRY] (3) pulsem.twomPulse.fire_n = pulsem.fire_n ($RES_SIM_144) (45) [ARRY] (3) pulsem.voltageSensor.v = pulsem.twomPulse.v ($RES_SIM_145) (46) [FOR-] (3) ($RES_SIM_146) (46) [----] for $i1 in 1:3 loop (46) [----] [SCAL] (1) pulsem.delta.plug_p.pin[$i1].i + pulsem.voltageSensor.plug_n.pin[$i1].i = 0.0 ($RES_SIM_147) (46) [----] end for; (47) [ARRY] (3) pulsem.delta.plug_p.pin.v = pulsem.voltageSensor.plug_n.pin.v ($RES_SIM_148) (48) [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_149) (49) [SCAL] (1) $TEV_0 = $PRE.pulsem.twomPulse.timerNegative.entryTime ($RES_EVT_239) (50) [FOR-] (3) ($RES_SIM_31) (50) [----] for $i1 in 1:3 loop (50) [----] [SCAL] (1) pulsem.twomPulse.realPassThrough[$i1].y = pulsem.twomPulse.realPassThrough[$i1].u ($RES_SIM_32) (50) [----] end for; (51) [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.constantconstantFiringAngle.k), pulsem.twomPulse.constantconstantFiringAngle.k) ($RES_SIM_33) (52) [ARRY] (3) pulsem.twomPulse.replicator.y = {pulsem.twomPulse.gain.y for $i1 in 1:3} ($RES_SIM_36) (53) [SCAL] (1) pulsem.twomPulse.gain.y = pulsem.twomPulse.gain.k * pulsem.twomPulse.limiter.y ($RES_SIM_37) (54) [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_150) (55) [FOR-] (3) ($RES_SIM_38) (55) [----] for $i1 in 1:3 loop (55) [----] [SCAL] (1) pulsem.twomPulse.negativeEqual[$i1].y = $SEV_4[$i1] ($RES_SIM_39) (55) [----] end for; (56) [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_151) (57) [SCAL] (1) pulsem.voltageSensor.plug_p.pin[3].v = pulsem.ac.pin[3].v ($RES_SIM_152) (58) [SCAL] (1) pulsem.voltageSensor.plug_p.pin[3].v = pulsem.delta.plug_n.pin[3].v ($RES_SIM_153) (59) [SCAL] (1) pulsem.voltageSensor.plug_p.pin[2].v = pulsem.ac.pin[2].v ($RES_SIM_154) (60) [SCAL] (1) pulsem.voltageSensor.plug_p.pin[2].v = pulsem.delta.plug_n.pin[2].v ($RES_SIM_155) (61) [SCAL] (1) pulsem.voltageSensor.plug_p.pin[1].v = pulsem.ac.pin[1].v ($RES_SIM_156) (62) [SCAL] (1) pulsem.voltageSensor.plug_p.pin[1].v = pulsem.delta.plug_n.pin[1].v ($RES_SIM_157) (63) [ARRY] (3) pulsem.voltageSensor.voltageSensor.v = pulsem.voltageSensor.v ($RES_SIM_158) (64) [FOR-] (3) ($RES_SIM_159) (64) [----] for $i1 in 1:3 loop (64) [----] [SCAL] (1) pulsem.voltageSensor.voltageSensor[$i1].p.i - pulsem.voltageSensor.plug_p.pin[$i1].i = 0.0 ($RES_SIM_160) (64) [----] end for; (65) [SCAL] (1) $TEV_1 = $PRE.pulsem.twomPulse.timerPositive.entryTime ($RES_EVT_240) (66) [SCAL] (1) $TEV_8 = $PRE.rectifier.thyristor.idealThyristor[$i1].off ($RES_EVT_247) (67) [SCAL] (1) $SEV_1 = pulsem.twomPulse.constantconstantFiringAngle.k > pulsem.twomPulse.limiter.uMax ($RES_EVT_249) (68) [FOR-] (3) ($RES_SIM_40) (68) [----] for $i1 in 1:3 loop (68) [----] [SCAL] (1) pulsem.twomPulse.greaterPositive[$i1].y = $SEV_5[$i1] ($RES_SIM_41) (68) [----] end for; (69) [FOR-] (3) ($RES_SIM_42) (69) [----] for $i1 in 1:3 loop (69) [----] [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_43) (69) [----] end for; (70) [FOR-] (3) ($RES_SIM_44) (70) [----] for $i1 in 1:3 loop (70) [----] [WHEN] (1)when pulsem.twomPulse.timerNegative[$i1].u then (70) [----] [----] pulsem.twomPulse.timerNegative[$i1].entryTime := time (70) [----] [----] end when; (70) [----] end for; (71) [FOR-] (3) ($RES_SIM_46) (71) [----] for $i1 in 1:3 loop (71) [----] [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_47) (71) [----] end for; (72) [FOR-] (3) ($RES_SIM_48) (72) [----] for $i1 in 1:3 loop (72) [----] [WHEN] (1)when pulsem.twomPulse.timerPositive[$i1].u then (72) [----] [----] pulsem.twomPulse.timerPositive[$i1].entryTime := time (72) [----] [----] end when; (72) [----] end for; (73) [ARRY] (3) pulsem.voltageSensor.voltageSensor.p.v = pulsem.voltageSensor.plug_p.pin.v ($RES_SIM_161) (74) [FOR-] (3) ($RES_SIM_162) (74) [----] for $i1 in 1:3 loop (74) [----] [SCAL] (1) pulsem.voltageSensor.voltageSensor[$i1].n.i - pulsem.voltageSensor.plug_n.pin[$i1].i = 0.0 ($RES_SIM_163) (74) [----] end for; (75) [ARRY] (3) pulsem.voltageSensor.voltageSensor.n.v = pulsem.voltageSensor.plug_n.pin.v ($RES_SIM_164) (76) [SCAL] (1) -(pulsem.delta.plug_n.pin[3].i + pulsem.delta.plug_p.pin[1].i) = 0.0 ($RES_SIM_165) (77) [SCAL] (1) pulsem.delta.plug_n.pin[3].v = pulsem.delta.plug_p.pin[1].v ($RES_SIM_166) (78) [SCAL] (1) -(pulsem.delta.plug_n.pin[2].i + pulsem.delta.plug_p.pin[3].i) = 0.0 ($RES_SIM_167) (79) [SCAL] (1) pulsem.delta.plug_n.pin[2].v = pulsem.delta.plug_p.pin[3].v ($RES_SIM_168) (80) [SCAL] (1) -(pulsem.delta.plug_n.pin[1].i + pulsem.delta.plug_p.pin[2].i) = 0.0 ($RES_SIM_169) (81) [SCAL] (1) $SEV_2 = pulsem.twomPulse.constantconstantFiringAngle.k < pulsem.twomPulse.limiter.uMin ($RES_EVT_250) (82) [FOR-] (3) ($RES_EVT_252) (82) [----] for $i1 in 1:3 loop (82) [----] [SCAL] (1) $SEV_4[$i1] = pulsem.twomPulse.negativeEqual[$i1].u1 > pulsem.twomPulse.negativeEqual[$i1].u2 ($RES_EVT_253) (82) [----] end for; (83) [FOR-] (3) ($RES_EVT_254) (83) [----] for $i1 in 1:3 loop (83) [----] [SCAL] (1) $SEV_5[$i1] = pulsem.twomPulse.greaterPositive[$i1].u1 > pulsem.twomPulse.greaterPositive[$i1].u2 ($RES_EVT_255) (83) [----] end for; (84) [FOR-] (3) ($RES_EVT_256) (84) [----] for $i1 in 1:3 loop (84) [----] [SCAL] (1) $SEV_6[$i1] = pulsem.twomPulse.negativeThreshold[$i1].u < pulsem.twomPulse.negativeThreshold[$i1].threshold ($RES_EVT_257) (84) [----] end for; (85) [FOR-] (3) ($RES_EVT_258) (85) [----] for $i1 in 1:3 loop (85) [----] [SCAL] (1) $SEV_7[$i1] = pulsem.twomPulse.positiveThreshold[$i1].u > pulsem.twomPulse.positiveThreshold[$i1].threshold ($RES_EVT_259) (85) [----] end for; (86) [ARRY] (3) rectifier.vAC = rectifier.ac.pin[:].v ($RES_BND_223) (87) [ARRY] (3) rectifier.iAC = rectifier.ac.pin[:].i ($RES_BND_224) (88) [ARRY] (3) rectifier.powerAC = rectifier.vAC * rectifier.iAC ($RES_BND_225) (89) [FOR-] (3) ($RES_SIM_50) (89) [----] for $i1 in 1:3 loop (89) [----] [SCAL] (1) pulsem.twomPulse.negativeThreshold[$i1].y = $SEV_6[$i1] ($RES_SIM_51) (89) [----] end for; (90) [FOR-] (3) ($RES_SIM_52) (90) [----] for $i1 in 1:3 loop (90) [----] [SCAL] (1) pulsem.twomPulse.positiveThreshold[$i1].y = $SEV_7[$i1] ($RES_SIM_53) (90) [----] end for; (91) [SCAL] (1) rectifier.powerDC = rectifier.vDC * rectifier.iDC ($RES_BND_229) (92) [SCAL] (1) $DER.meanCurrent.x = -currentSensor.n.i ($RES_SIM_57) (93) [SCAL] (1) pulsem.delta.plug_n.pin[1].v = pulsem.delta.plug_p.pin[2].v ($RES_SIM_170) (94) [SCAL] (1) pulsem.twomPulse.realPassThrough[3].y = pulsem.twomPulse.positiveThreshold[3].u ($RES_SIM_171) (95) [SCAL] (1) pulsem.twomPulse.realPassThrough[3].y = pulsem.twomPulse.negativeThreshold[3].u ($RES_SIM_172) (96) [SCAL] (1) pulsem.twomPulse.realPassThrough[2].y = pulsem.twomPulse.positiveThreshold[2].u ($RES_SIM_173) (97) [SCAL] (1) -star.pin_n.i = sum(star.plug_p.pin.i) ($RES_$AUX_238) (98) [SCAL] (1) pulsem.twomPulse.realPassThrough[2].y = pulsem.twomPulse.negativeThreshold[2].u ($RES_SIM_174) (99) [SCAL] (1) pulsem.twomPulse.realPassThrough[1].y = pulsem.twomPulse.positiveThreshold[1].u ($RES_SIM_175) (100) [FOR-] (3) ($RES_$AUX_236) (100) [----] for $i1 in 1:3 loop (100) [----] [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_237) (100) [----] end for; (101) [SCAL] (1) pulsem.twomPulse.realPassThrough[1].y = pulsem.twomPulse.negativeThreshold[1].u ($RES_SIM_176) (102) [SCAL] (1) -rectifier.iDC = sum(rectifier.star.plug_p.pin.i) ($RES_$AUX_235) (103) [ARRY] (3) pulsem.twomPulse.realPassThrough.u = pulsem.twomPulse.v ($RES_SIM_177) (104) [SCAL] (1) rectifier.LossPower = sum(rectifier.thyristor.idealThyristor.LossPower) ($RES_$AUX_234) (105) [SCAL] (1) rootMeanSquareVoltage.product.y = product(rootMeanSquareVoltage.product.u) ($RES_$AUX_233) (106) [SCAL] (1) rectifier.powerTotalAC = sum(rectifier.powerAC) ($RES_$AUX_231) (107) [FOR-] (3) ($RES_EVT_260) (107) [----] for $i1 in 1:3 loop (107) [----] [SCAL] (1) $SEV_8[$i1] = rectifier.thyristor.idealThyristor[$i1].s < 0.0 ($RES_EVT_261) (107) [----] end for; (108) [FOR-] (3) ($RES_EVT_262) (108) [----] for $i1 in 1:3 loop (108) [----] [SCAL] (1) $SEV_9[$i1] = $TEV_8 and not rectifier.thyristor.idealThyristor[$i1].fire ($RES_EVT_263) (108) [----] end for; (109) [FOR-] (3) ($RES_EVT_264) (109) [----] for $i1 in 1:3 loop (109) [----] [SCAL] (1) $SEV_10[$i1] = $SEV_8[$i1] or $SEV_9[$i1] ($RES_EVT_265) (109) [----] end for; (110) [ARRY] (3) rectifier.thyristor.off = rectifier.thyristor.idealThyristor.off ($RES_BND_230) (111) [FOR-] (3) ($RES_EVT_266) (111) [----] for $i1 in 1:3 loop (111) [----] [SCAL] (1) $SEV_11[$i1] = rectifier.andCondition_p[$i1].u1 and rectifier.andCondition_p[$i1].u2 ($RES_EVT_267) (111) [----] end for; (112) [FOR-] (3) ($RES_EVT_268) (112) [----] for $i1 in 1:3 loop (112) [----] [SCAL] (1) $SEV_12[$i1] = time < sineVoltage_p.sineVoltage[$i1].signalSource.startTime ($RES_EVT_269) (112) [----] end for; (113) [ARRY] (3) sineVoltage_p.v = sineVoltage_p.plug_p.pin.v - sineVoltage_p.plug_n.pin.v ($RES_SIM_100) (114) [FOR-] (3) ($RES_SIM_101) (114) [----] for $i1 in 1:3 loop (114) [----] [SCAL] (1) sineVoltage_p.sineVoltage[$i1].i = sineVoltage_p.sineVoltage[$i1].p.i ($RES_SIM_102) (114) [----] end for; (115) [FOR-] (3) ($RES_SIM_103) (115) [----] for $i1 in 1:3 loop (115) [----] [SCAL] (1) 0.0 = sineVoltage_p.sineVoltage[$i1].p.i + sineVoltage_p.sineVoltage[$i1].n.i ($RES_SIM_104) (115) [----] end for; (116) [SCAL] (1) $DER.rootMeanSquareVoltage.mean.x = rootMeanSquareVoltage.product.y ($RES_SIM_64) (117) [FOR-] (3) ($RES_SIM_105) (117) [----] for $i1 in 1:3 loop (117) [----] [SCAL] (1) sineVoltage_p.sineVoltage[$i1].v = sineVoltage_p.sineVoltage[$i1].p.v - sineVoltage_p.sineVoltage[$i1].n.v ($RES_SIM_106) (117) [----] end for; (118) [SCAL] (1) pulsem.twomPulse.replicator.y[3] = pulsem.twomPulse.greaterPositive[3].u2 ($RES_SIM_180) (119) [FOR-] (3) ($RES_SIM_107) (119) [----] for $i1 in 1:3 loop (119) [----] [SCAL] (1) sineVoltage_p.sineVoltage[$i1].v = sineVoltage_p.sineVoltage[$i1].signalSource.y ($RES_SIM_108) (119) [----] end for; (120) [SCAL] (1) $DER.meanVoltage.x = meanVoltage.u ($RES_SIM_68) (121) [SCAL] (1) pulsem.twomPulse.replicator.y[3] = pulsem.twomPulse.negativeEqual[3].u2 ($RES_SIM_181) (122) [SCAL] (1) meanVoltage.u = rectifier.vDC ($RES_SIM_69) (123) [SCAL] (1) pulsem.twomPulse.replicator.y[2] = pulsem.twomPulse.greaterPositive[2].u2 ($RES_SIM_182) (124) [FOR-] (3) ($RES_SIM_109) (124) [----] for $i1 in 1:3 loop (124) [----] [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_110) (124) [----] end for; (125) [SCAL] (1) pulsem.twomPulse.replicator.y[2] = pulsem.twomPulse.negativeEqual[2].u2 ($RES_SIM_183) (126) [SCAL] (1) pulsem.twomPulse.replicator.y[1] = pulsem.twomPulse.greaterPositive[1].u2 ($RES_SIM_184) (127) [SCAL] (1) pulsem.twomPulse.replicator.y[1] = pulsem.twomPulse.negativeEqual[1].u2 ($RES_SIM_185) (128) [ARRY] (3) pulsem.twomPulse.negativeEqual.y = pulsem.twomPulse.fire_n ($RES_SIM_187) (129) [ARRY] (3) pulsem.twomPulse.greaterPositive.y = pulsem.twomPulse.fire_p ($RES_SIM_188) (130) [ARRY] (3) pulsem.twomPulse.negativeEqual.u1 = pulsem.twomPulse.timerNegative.y ($RES_SIM_189) (131) [FOR-] (3) ($RES_SIM_112) (131) [----] for $i1 in 1:3 loop (131) [----] [SCAL] (1) star.plug_p.pin[$i1].v = 0.0 ($RES_SIM_113) (131) [----] end for; (132) [FOR-] (3) ($RES_SIM_75) (132) [----] for $i1 in 1:3 loop (132) [----] [SCAL] (1) rectifier.star.plug_p.pin[$i1].v = rectifier.vDC ($RES_SIM_76) (132) [----] end for; (133) [SCAL] (1) -(currentSensor.n.i + inductor.i) = 0.0 ($RES_SIM_115) (134) [ARRY] (3) rectifier.thyristor.i = rectifier.thyristor.plug_p.pin.i ($RES_SIM_77) (135) [ARRY] (3) pulsem.twomPulse.timerPositive.y = pulsem.twomPulse.greaterPositive.u1 ($RES_SIM_190) (136) [SCAL] (1) inductor.i + rectifier.iDC = 0.0 ($RES_SIM_117) (137) [ARRY] (3) rectifier.thyristor.v = rectifier.thyristor.plug_p.pin.v - rectifier.thyristor.plug_n.pin.v ($RES_SIM_78) (138) [ARRY] (3) pulsem.twomPulse.negativeThreshold.y = pulsem.twomPulse.timerNegative.u ($RES_SIM_191) (139) [FOR-] (3) ($RES_SIM_79) (139) [----] for $i1 in 1:3 loop (139) [----] [SCAL] (1) rectifier.thyristor.idealThyristor[$i1].i = rectifier.thyristor.idealThyristor[$i1].p.i ($RES_SIM_80) (139) [----] end for; (140) [ARRY] (3) pulsem.twomPulse.positiveThreshold.y = pulsem.twomPulse.timerPositive.u ($RES_SIM_192) (141) [SCAL] (1) star.pin_n.i + currentSensor.n.i + ground.p.i = 0.0 ($RES_SIM_119) (142) [SCAL] (1) meanVoltage.u = rootMeanSquareVoltage.product.u[1] ($RES_SIM_193) (143) [SCAL] (1) meanVoltage.u = rootMeanSquareVoltage.product.u[2] ($RES_SIM_194) (144) [ARRY] (3) rectifier.enableLogic.internalEnable = rectifier.andCondition_p.u2 ($RES_SIM_198) (145) [ARRY] (3) rectifier.andCondition_p.u1 = rectifier.fire_p ($RES_SIM_199) (146) [ARRY] (3) rectifier.andCondition_p.y = rectifier.thyristor.fire ($RES_SIM_200) (147) [FOR-] (3) ($RES_SIM_201) (147) [----] for $i1 in 1:3 loop (147) [----] [SCAL] (1) rectifier.thyristor.plug_p.pin[$i1].i - rectifier.ac.pin[$i1].i = 0.0 ($RES_SIM_202) (147) [----] end for; (148) [ARRY] (3) rectifier.ac.pin.v = rectifier.thyristor.plug_p.pin.v ($RES_SIM_203)