TestHeadlessProgram.java 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. package holeg.test_headless;
  2. import holeg.HolegPowerFlow;
  3. import holeg.model.Grid;
  4. import holeg.model.GridEdge;
  5. import holeg.model.GridNode;
  6. import holeg.power_flow.*;
  7. import holeg.simple_grid.SimpleGridBuilder;
  8. import holeg.simple_grid.SimpleGridEdge;
  9. import holeg.simple_grid.SimpleGridNode;
  10. public class TestHeadlessProgram {
  11. public static void test() {
  12. // Build grid
  13. SimpleGridBuilder builder = new SimpleGridBuilder();
  14. SimpleGridNode generatorA = builder.addGenerator(new ComplexNumber(4.4));
  15. SimpleGridNode houseA = builder.addHouse(new ComplexNumber(1));
  16. SimpleGridNode houseB = builder.addHouse(new ComplexNumber(2));
  17. SimpleGridNode houseC = builder.addHouse(new ComplexNumber(2));
  18. SimpleGridNode generatorB = builder.addGenerator(new ComplexNumber(1));
  19. // generatorA -- houseA
  20. // |
  21. // |---- houseB -- houseC --- generatorB
  22. builder.connect(generatorA, houseA, 11);
  23. builder.connect(generatorA, houseB, 10);
  24. builder.connect(houseB, houseC, 10);
  25. builder.connect(houseC, generatorB, 10);
  26. // Grid
  27. Grid grid = builder.getGrid();
  28. HolegPowerFlow flow = new HolegPowerFlow();
  29. flow.solve(grid);
  30. // Show results
  31. for (GridNode node : grid.getNodes())
  32. ((SimpleGridNode)node).print(System.out);
  33. for (GridEdge edge : grid.getEdges())
  34. ((SimpleGridEdge)edge).print(System.out);
  35. }
  36. }