@@ -227,7 +227,7 @@ void testVscAsymmetricalMonopole() {
227227
228228 Bus busGb150 = network .getBusBreakerView ().getBus ("BUSDC-GB-xNodeDc1gb-150" );
229229 assertVoltageEquals (150.043375 , busGb150 );
230- assertAngleEquals (2.976066 , busGb150 );
230+ assertAngleEquals (2.977430 , busGb150 );
231231
232232 Bus busFr400 = network .getBusBreakerView ().getBus ("BUSDC-FR-xNodeDc1fr-400" );
233233 assertVoltageEquals (399.551518 , busFr400 );
@@ -239,7 +239,7 @@ void testVscAsymmetricalMonopole() {
239239
240240 Bus busGb = network .getBusBreakerView ().getBus ("BUS-GB" );
241241 assertVoltageEquals (400.000000 , busGb );
242- assertAngleEquals (- 0.00061 , busGb );
242+ assertAngleEquals (0.000754 , busGb );
243243
244244 DcNode dcNodeGbNeg = network .getDcNode ("dcNodeGbNeg" );
245245 assertVoltageEquals (0.000000 , dcNodeGbNeg );
@@ -255,7 +255,7 @@ void testVscAsymmetricalMonopole() {
255255
256256 Generator genFr = network .getGenerator ("GEN-FR" );
257257 assertActivePowerEquals (-2000.732810 , genFr .getTerminal ());
258- assertReactivePowerEquals (-10.470861 , genFr .getTerminal ());
258+ assertReactivePowerEquals (-10.617409 , genFr .getTerminal ());
259259
260260 VoltageSourceConverter vscFr = network .getVoltageSourceConverter ("VscFr" );
261261 assertActivePowerEquals (200.806464 , vscFr .getTerminal1 ());
@@ -274,10 +274,10 @@ void testVscAsymmetricalMonopole() {
274274 assertDcPowerEquals (-200.000000 , dcLinePos .getDcTerminal2 ());
275275
276276 Line acLine = network .getLine ("acLine" );
277- assertActivePowerEquals (0.327588 , acLine .getTerminal1 ());
278- assertActivePowerEquals (- 0.327588 , acLine .getTerminal2 ());
279- assertReactivePowerEquals (- 0.065519 , acLine .getTerminal1 ());
280- assertReactivePowerEquals (0.065519 , acLine .getTerminal2 ());
277+ assertActivePowerEquals (- 0.405145 , acLine .getTerminal1 ());
278+ assertActivePowerEquals (0.405145 , acLine .getTerminal2 ());
279+ assertReactivePowerEquals (0.081032 , acLine .getTerminal1 ());
280+ assertReactivePowerEquals (- 0.081032 , acLine .getTerminal2 ());
281281 }
282282
283283 @ Test
@@ -312,7 +312,7 @@ void testVscSymmetricalMonopole() {
312312
313313 Bus busGb150 = network .getBusBreakerView ().getBus ("BUSDC-GB-xNodeDc1gb-150" );
314314 assertVoltageEquals (150.043375 , busGb150 );
315- assertAngleEquals (2.976065 , busGb150 );
315+ assertAngleEquals (2.978183 , busGb150 );
316316
317317 Bus busFr400 = network .getBusBreakerView ().getBus ("BUSDC-FR-xNodeDc1fr-400" );
318318 assertVoltageEquals (399.557158 , busFr400 );
@@ -329,8 +329,8 @@ void testVscSymmetricalMonopole() {
329329 assertVoltageEquals (-250.000000 , dcNodeFrPos );
330330
331331 Generator genGb = network .getGenerator ("GEN-GB" );
332- assertActivePowerEquals (-2001.713011 , genGb .getTerminal ());
333- assertReactivePowerEquals (-10.448402 , genGb .getTerminal ());
332+ assertActivePowerEquals (-2001.137135 , genGb .getTerminal ());
333+ assertReactivePowerEquals (-10.220984 , genGb .getTerminal ());
334334
335335 VoltageSourceConverter vscFr = network .getVoltageSourceConverter ("VscFr" );
336336 assertActivePowerEquals (201.626136 , vscFr .getTerminal1 ());
@@ -359,10 +359,10 @@ void testVscSymmetricalMonopole() {
359359 assertDcPowerEquals (0.000013 , dlGroundPos .getDcTerminal1 ());
360360
361361 Line acLine = network .getLine ("acLine" );
362- assertActivePowerEquals (0.327588 , acLine .getTerminal1 ());
363- assertActivePowerEquals (- 0.327588 , acLine .getTerminal2 ());
364- assertReactivePowerEquals (- 0.065519 , acLine .getTerminal1 ());
365- assertReactivePowerEquals (0.065519 , acLine .getTerminal2 ());
362+ assertActivePowerEquals (- 0.809547 , acLine .getTerminal1 ());
363+ assertActivePowerEquals (0.809547 , acLine .getTerminal2 ());
364+ assertReactivePowerEquals (0.161920 , acLine .getTerminal1 ());
365+ assertReactivePowerEquals (- 0.161920 , acLine .getTerminal2 ());
366366 }
367367
368368 @ Test
@@ -410,6 +410,49 @@ void testAcDcExample() {
410410 assertDcPowerEquals (-49.359850 , dl34 .getDcTerminal2 ());
411411 }
412412
413+ @ Test
414+ void testAcDcExampleOtherSlack () {
415+ // 2 converters, 1 AC Network, the first converter controls Pac, and the second one Vdc
416+ // The slack bus is located to another AC bus
417+ network = AcDcNetworkFactory .createAcDcNetwork1 ();
418+ parametersExt .setSlackBusSelectionMode (SlackBusSelectionMode .NAME )
419+ .setSlackBusId ("vl2_0" );
420+ LoadFlowResult result = loadFlowRunner .run (network , parameters );
421+ assertTrue (result .isFullyConverged ());
422+
423+ DcNode dn3 = network .getDcNode ("dn3" );
424+ assertVoltageEquals (400.012374 , dn3 );
425+
426+ DcNode dn4 = network .getDcNode ("dn4" );
427+ assertVoltageEquals (400.000000 , dn4 );
428+
429+ Generator g1 = network .getGenerator ("g1" );
430+ assertActivePowerEquals (-101.35133 , g1 .getTerminal ());
431+ assertReactivePowerEquals (-20.212180 , g1 .getTerminal ());
432+
433+ VoltageSourceConverter conv23 = network .getVoltageSourceConverter ("conv23" );
434+ assertActivePowerEquals (50.000000 , conv23 .getTerminal1 ());
435+ assertReactivePowerEquals (0.000000 , conv23 .getTerminal1 ());
436+ assertDcPowerEquals (-49.361373 , conv23 .getDcTerminal1 ());
437+ assertDcPowerEquals (0.000000 , conv23 .getDcTerminal2 ());
438+
439+ VoltageSourceConverter conv45 = network .getVoltageSourceConverter ("conv45" );
440+ assertActivePowerEquals (-48.721223 , conv45 .getTerminal1 ());
441+ assertReactivePowerEquals (0.000000 , conv45 .getTerminal1 ());
442+ assertDcPowerEquals (49.359850 , conv45 .getDcTerminal1 ());
443+ assertDcPowerEquals (0.000000 , conv45 .getDcTerminal2 ());
444+
445+ Line l12 = network .getLine ("l12" );
446+ assertActivePowerEquals (101.35133 , l12 .getTerminal1 ());
447+ assertReactivePowerEquals (20.212180 , l12 .getTerminal1 ());
448+ assertActivePowerEquals (-101.28111 , l12 .getTerminal2 ());
449+ assertReactivePowerEquals (-20.002003 , l12 .getTerminal2 ());
450+
451+ DcLine dl34 = network .getDcLine ("dl34" );
452+ assertDcPowerEquals (49.361372 , dl34 .getDcTerminal1 ());
453+ assertDcPowerEquals (-49.359850 , dl34 .getDcTerminal2 ());
454+ }
455+
413456 @ Test
414457 void testAcDcExampleWithOtherControl () {
415458 //2 converters, 1 AC Network, the first converter controls Vdc, and the second one Pac
0 commit comments