Running: ./testmodel.py --libraries=/home/hudson/saved_omc/libraries/.openmodelica/libraries --ompython_omhome=/usr Modelica_3.2.2_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.2.2_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.2.2_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.001265/0.001265, allocations: 117 kB / 17.75 MB, free: 5.285 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.001488/0.001487, allocations: 188.6 kB / 18.68 MB, free: 4.363 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.297/1.297, allocations: 205.1 MB / 224.5 MB, free: 12.19 MB / 190.1 MB Notification: Performance of FrontEnd - Absyn->SCode: time 2.623e-05/2.623e-05, allocations: 2.281 kB / 328.5 MB, free: 3.293 MB / 270.1 MB Notification: Performance of NFInst.instantiate(Modelica.Electrical.PowerConverters.Examples.ACDC.RectifierCenterTapmPulse.ThyristorCenterTapmPulse_RL): time 0.006193/0.006229, allocations: 4.948 MB / 333.5 MB, free: 14.32 MB / 286.1 MB Notification: Performance of NFInst.instExpressions: time 0.003007/0.009254, allocations: 1.583 MB / 335.1 MB, free: 12.73 MB / 286.1 MB Notification: Performance of NFInst.updateImplicitVariability: time 0.0003422/0.009608, allocations: 23.88 kB / 335.1 MB, free: 12.7 MB / 286.1 MB Notification: Performance of NFTyping.typeComponents: time 0.0003901/0.01001, allocations: 190.4 kB / 335.3 MB, free: 12.52 MB / 286.1 MB Notification: Performance of NFTyping.typeBindings: time 0.0007793/0.01084, allocations: 314.1 kB / 335.6 MB, free: 12.21 MB / 286.1 MB Notification: Performance of NFTyping.typeClassSections: time 0.0005215/0.01137, allocations: 291.5 kB / 335.9 MB, free: 11.92 MB / 286.1 MB Notification: Performance of NFFlatten.flatten: time 0.001766/0.01315, allocations: 1.715 MB / 337.6 MB, free: 10.2 MB / 286.1 MB Notification: Performance of NFFlatten.resolveConnections: time 0.0009432/0.01411, allocations: 0.7773 MB / 338.4 MB, free: 9.402 MB / 286.1 MB Notification: Performance of NFEvalConstants.evaluate: time 0.0005409/0.01466, allocations: 0.5453 MB / 338.9 MB, free: 8.855 MB / 286.1 MB Notification: Performance of NFSimplifyModel.simplify: time 0.0005776/0.01525, allocations: 0.5604 MB / 339.5 MB, free: 8.293 MB / 286.1 MB Notification: Performance of NFPackage.collectConstants: time 0.0001355/0.01539, allocations: 108 kB / 339.6 MB, free: 8.188 MB / 286.1 MB Notification: Performance of NFFlatten.collectFunctions: time 0.0001529/0.01555, allocations: 108 kB / 339.7 MB, free: 8.082 MB / 286.1 MB Notification: Performance of combineBinaries: time 0.001085/0.01664, allocations: 1.462 MB / 341.2 MB, free: 6.605 MB / 286.1 MB Notification: Performance of replaceArrayConstructors: time 0.000584/0.01723, allocations: 0.9334 MB / 342.1 MB, free: 5.66 MB / 286.1 MB Notification: Performance of NFVerifyModel.verify: time 0.0001478/0.01739, allocations: 151.5 kB / 342.2 MB, free: 5.512 MB / 286.1 MB Notification: Performance of FrontEnd: time 0.0001405/0.01753, allocations: 31.81 kB / 342.3 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.004168/0.02171, allocations: 4.714 MB / 347 MB, free: 0.6016 MB / 286.1 MB Notification: Performance of FunctionAlias: time 0.0003048/0.02202, allocations: 274.7 kB / 347.2 MB, free: 340 kB / 286.1 MB Notification: Performance of Early Inline: time 0.002169/0.0242, allocations: 2.346 MB / 349.6 MB, free: 13.95 MB / 302.1 MB Notification: Performance of simplify1: time 0.0001359/0.02434, allocations: 131.8 kB / 349.7 MB, free: 13.82 MB / 302.1 MB Notification: Performance of Alias: time 0.002832/0.02718, allocations: 2.641 MB / 352.4 MB, free: 10.96 MB / 302.1 MB Notification: Performance of simplify2: time 0.0001059/0.0273, allocations: 111.8 kB / 352.5 MB, free: 10.85 MB / 302.1 MB Notification: Performance of Events: time 0.0004644/0.02777, allocations: 442.6 kB / 352.9 MB, free: 10.4 MB / 302.1 MB Notification: Performance of Detect States: time 0.000842/0.02863, allocations: 0.8958 MB / 353.8 MB, free: 9.48 MB / 302.1 MB Notification: Performance of Partitioning: time 0.001036/0.02967, allocations: 1.031 MB / 354.8 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)