SimpleGridEdge.java 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. package holeg.simple_grid;
  2. import holeg.model.GridEdge;
  3. import holeg.power_flow.ComplexNumber;
  4. import java.io.PrintStream;
  5. public class SimpleGridEdge implements GridEdge {
  6. public SimpleGridNode from;
  7. public SimpleGridNode to;
  8. public double lengthKilometers = 1;
  9. public boolean overrideInPerUnit = false;
  10. public ComplexNumber overrideImpedance = null;
  11. public double overrideShuntSusceptance = 0;
  12. public double current = 0;
  13. public ComplexNumber power = ComplexNumber.Zero;
  14. public ComplexNumber loss = ComplexNumber.Zero;
  15. public Object tag;
  16. @Override
  17. public SimpleGridNode getFrom() {
  18. return from;
  19. }
  20. @Override
  21. public SimpleGridNode getTo() {
  22. return to;
  23. }
  24. @Override
  25. public double getLengthKilometers() {
  26. return lengthKilometers;
  27. }
  28. @Override
  29. public boolean getOverrideInPerUnit() {
  30. return overrideInPerUnit;
  31. }
  32. @Override
  33. public ComplexNumber getOverrideImpedance() {
  34. return overrideImpedance;
  35. }
  36. @Override
  37. public double getOverrideShuntSusceptance() {
  38. return overrideShuntSusceptance;
  39. }
  40. @Override
  41. public void setCurrent(double current) {
  42. this.current = current;
  43. }
  44. @Override
  45. public void setPowerFlow(ComplexNumber power) {
  46. this.power = power;
  47. }
  48. @Override
  49. public void setLineLoss(ComplexNumber loss) {
  50. this.loss = loss;
  51. }
  52. public void print(PrintStream stream) {
  53. stream.printf("%.0f km, current: %.2f A, power flow: %s, line loss: %s", lengthKilometers, current, power.toString(), loss.toString());
  54. stream.println();
  55. }
  56. }