Skip to content

[WIP] Refactorization and homogeneization with iidm for 2WT and Lines (partially) #210

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: homogenize_load_creation_attributes
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
*/
package org.gridsuite.modification.server.dto;

import com.powsybl.iidm.network.extensions.ConnectablePosition;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.NoArgsConstructor;
Expand All @@ -26,10 +25,10 @@
public class BranchCreationInfos extends EquipmentCreationInfos {

@Schema(description = "Series resistance")
private double seriesResistance;
private double r;

@Schema(description = "Series reactance")
private double seriesReactance;
private double x;

@Schema(description = "Voltage level id Side 1")
private String voltageLevelId1;
Expand All @@ -49,21 +48,9 @@ public class BranchCreationInfos extends EquipmentCreationInfos {
@Schema(description = "Current limits Side 2")
private CurrentLimitsInfos currentLimits2;

@Schema(description = "Connection Name 1")
private String connectionName1;
@Schema(description = "Connectable position Side 1 (for substation diagram)")
private ConnectablePositionInfos position1;

@Schema(description = "Connection Direction 1")
private ConnectablePosition.Direction connectionDirection1;

@Schema(description = "Connection Name 2")
private String connectionName2;

@Schema(description = "Connection Direction 2")
private ConnectablePosition.Direction connectionDirection2;

@Schema(description = "Connection position 1")
private Integer connectionPosition1;

@Schema(description = "Connection position 2")
private Integer connectionPosition2;
@Schema(description = "Connectable position Side 2 (for substation diagram)")
private ConnectablePositionInfos position2;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
/**
* Copyright (c) 2023, RTE (http://www.rte-france.com)
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
package org.gridsuite.modification.server.dto;

import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
* @author Franck Lecuyer <franck.lecuyer at rte-france.com>
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
@JsonInclude(JsonInclude.Include.NON_NULL)
@Schema(description = "Regulating terminal infos")
public class RegulatingTerminalInfos {

@Schema(description = "Equipment id")
private String id;

@Schema(description = "Equipment type")
private String type;

@Schema(description = "Voltage level id")
private String vlId;
}
Original file line number Diff line number Diff line change
Expand Up @@ -38,14 +38,8 @@ public class TapChangerCreationInfos {
@Schema(description = "targetDeadband")
private Double targetDeadband;

@Schema(description = "Regulating terminal equipment id")
private String regulatingTerminalId;

@Schema(description = "Regulating terminal equipment type")
private String regulatingTerminalType;

@Schema(description = "Regulating terminal voltage level id")
private String regulatingTerminalVlId;
@Schema(description = "Regulating terminal")
private RegulatingTerminalInfos regulatingTerminal;

@Schema(description = "steps")
private List<TapChangerStepCreationInfos> steps;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,16 +33,16 @@
public class TwoWindingsTransformerCreationInfos extends BranchCreationInfos {

@Schema(description = "Magnetizing conductance")
private double magnetizingConductance;
private double g;

@Schema(description = "Magnetizing susceptance")
private double magnetizingSusceptance;
private double b;

@Schema(description = "side 1 rated voltage")
private double ratedVoltage1;
private double ratedU1;

@Schema(description = "side 2 rated voltage")
private double ratedVoltage2;
private double ratedU2;

@Schema(description = "Rated conductance in Siemens")
private Double ratedS;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,11 @@
@MappedSuperclass
public class BranchCreationEntity extends EquipmentCreationEntity {

@Column(name = "seriesResistance")
private double seriesResistance;
@Column(name = "r")
private double r;

@Column(name = "seriesReactance")
private double seriesReactance;
@Column(name = "x")
private double x;

@Column(name = "voltageLevelId1")
private String voltageLevelId1;
Expand Down Expand Up @@ -87,8 +87,8 @@ public void update(ModificationInfos modificationInfos) {
}

private void assignAttributes(BranchCreationInfos branchCreationInfos) {
seriesReactance = branchCreationInfos.getSeriesReactance();
seriesResistance = branchCreationInfos.getSeriesResistance();
x = branchCreationInfos.getX();
r = branchCreationInfos.getR();
voltageLevelId1 = branchCreationInfos.getVoltageLevelId1();
voltageLevelId2 = branchCreationInfos.getVoltageLevelId2();
busOrBusbarSectionId1 = branchCreationInfos.getBusOrBusbarSectionId1();
Expand All @@ -103,11 +103,23 @@ private void assignAttributes(BranchCreationInfos branchCreationInfos) {
} else {
currentLimits2 = branchCreationInfos.getCurrentLimits2().toEntity();
}
connectionDirection1 = branchCreationInfos.getConnectionDirection1();
connectionName1 = branchCreationInfos.getConnectionName1();
connectionDirection2 = branchCreationInfos.getConnectionDirection2();
connectionName2 = branchCreationInfos.getConnectionName2();
connectionPosition1 = branchCreationInfos.getConnectionPosition1();
connectionPosition2 = branchCreationInfos.getConnectionPosition2();
connectionDirection1 = branchCreationInfos.getPosition1() != null
? branchCreationInfos.getPosition1().getDirection()
: null;
connectionName1 = branchCreationInfos.getPosition1() != null
? branchCreationInfos.getPosition1().getLabel()
: null;
connectionPosition1 = branchCreationInfos.getPosition1() != null
? branchCreationInfos.getPosition1().getOrder()
: null;
connectionDirection2 = branchCreationInfos.getPosition2() != null
? branchCreationInfos.getPosition2().getDirection()
: null;
connectionName2 = branchCreationInfos.getPosition2() != null
? branchCreationInfos.getPosition2().getLabel()
: null;
connectionPosition2 = branchCreationInfos.getPosition2() != null
? branchCreationInfos.getPosition2().getOrder()
: null;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@

import lombok.Getter;
import lombok.NoArgsConstructor;
import org.gridsuite.modification.server.dto.ConnectablePositionInfos;
import org.gridsuite.modification.server.dto.LineCreationInfos;
import org.gridsuite.modification.server.dto.ModificationInfos;

Expand Down Expand Up @@ -66,8 +67,8 @@ public LineCreationInfos toModificationInfos() {
.date(getDate())
.id(getEquipmentId())
.name(getEquipmentName())
.seriesResistance(getSeriesResistance())
.seriesReactance(getSeriesReactance())
.r(getR())
.x(getX())
.shuntConductance1(getShuntConductance1())
.shuntSusceptance1(getShuntSusceptance1())
.shuntConductance2(getShuntConductance2())
Expand All @@ -76,13 +77,14 @@ public LineCreationInfos toModificationInfos() {
.busOrBusbarSectionId1(getBusOrBusbarSectionId1())
.voltageLevelId2(getVoltageLevelId2())
.busOrBusbarSectionId2(getBusOrBusbarSectionId2())
.connectionName1(getConnectionName1())
.connectionDirection1(getConnectionDirection1())
.connectionName2(getConnectionName2())
.connectionDirection2(getConnectionDirection2())
.connectionPosition1(getConnectionPosition1())
.connectionPosition2(getConnectionPosition2());

.position1(ConnectablePositionInfos.builder()
.label(getConnectionName1())
.direction(getConnectionDirection1())
.order(getConnectionPosition1()).build())
.position2(ConnectablePositionInfos.builder()
.label(getConnectionName2())
.direction(getConnectionDirection2())
.order(getConnectionPosition2()).build());
if (getCurrentLimits1() != null) {
builder.currentLimits1(getCurrentLimits1().toCurrentLimitsInfos());
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,17 +29,17 @@
@PrimaryKeyJoinColumn(foreignKey = @ForeignKey(name = "twoWindingsTransformerCreation_id_fk_constraint"))
public class TwoWindingsTransformerCreationEntity extends BranchCreationEntity {

@Column(name = "magnetizingConductance")
private double magnetizingConductance;
@Column(name = "g")
private double g;

@Column(name = "magnetizingSusceptance")
private double magnetizingSusceptance;
@Column(name = "b")
private double b;

@Column(name = "ratedVoltage1")
private double ratedVoltage1;
@Column(name = "ratedu1")
private double ratedU1;

@Column(name = "ratedVoltage2")
private double ratedVoltage2;
@Column(name = "ratedu2")
private double ratedU2;

@Column(name = "rateds")
private Double ratedS;
Expand Down Expand Up @@ -119,10 +119,10 @@ public TwoWindingsTransformerCreationEntity(TwoWindingsTransformerCreationInfos
}

private void assignAttributes(TwoWindingsTransformerCreationInfos twoWindingsTransformerCreationInfos) {
this.magnetizingConductance = twoWindingsTransformerCreationInfos.getMagnetizingConductance();
this.magnetizingSusceptance = twoWindingsTransformerCreationInfos.getMagnetizingSusceptance();
this.ratedVoltage1 = twoWindingsTransformerCreationInfos.getRatedVoltage1();
this.ratedVoltage2 = twoWindingsTransformerCreationInfos.getRatedVoltage2();
this.g = twoWindingsTransformerCreationInfos.getG();
this.b = twoWindingsTransformerCreationInfos.getB();
this.ratedU1 = twoWindingsTransformerCreationInfos.getRatedU1();
this.ratedU2 = twoWindingsTransformerCreationInfos.getRatedU2();
this.ratedS = twoWindingsTransformerCreationInfos.getRatedS();
this.tapChangerSteps = new ArrayList<>();
assignTapChanger(twoWindingsTransformerCreationInfos);
Expand All @@ -135,14 +135,20 @@ private void assignTapChanger(TwoWindingsTransformerCreationInfos twoWindingsTra

private void assignRatioTapChanger(RatioTapChangerCreationInfos ratioTapChanger) {
this.ratioTapChangerLowTapPosition = ratioTapChanger.getLowTapPosition();
this.ratioTapChangerTapPosition = ratioTapChanger.getTapPosition();
this.ratioTapChangerTapPosition = ratioTapChanger.getTapPosition();
this.ratioTapChangerRegulating = ratioTapChanger.isRegulating();
this.ratioTapChangerTargetDeadband = ratioTapChanger.getTargetDeadband();
this.ratioTapChangerTerminalRefConnectableId = ratioTapChanger.getRegulatingTerminalId();
this.ratioTapChangerTerminalRefVoltageLevelId = ratioTapChanger.getRegulatingTerminalVlId();
this.ratioTapChangerTerminalRefType = ratioTapChanger.getRegulatingTerminalType();
this.ratioTapChangerTerminalRefConnectableId = ratioTapChanger.getRegulatingTerminal() != null
? ratioTapChanger.getRegulatingTerminal().getId()
: null;
this.ratioTapChangerTerminalRefVoltageLevelId = ratioTapChanger.getRegulatingTerminal() != null
? ratioTapChanger.getRegulatingTerminal().getVlId()
: null;
this.ratioTapChangerTerminalRefType = ratioTapChanger.getRegulatingTerminal() != null
? ratioTapChanger.getRegulatingTerminal().getType()
: null;
this.ratioTapChangerLoadTapChangingCapabilities = ratioTapChanger.isLoadTapChangingCapabilities();
this.ratioTapChangerTargetV = ratioTapChanger.getTargetV();
this.ratioTapChangerTargetV = ratioTapChanger.getTargetV();
this.tapChangerSteps.addAll(TapChangerStepCreationEmbeddable.toEmbeddableRatioTapChangerSteps(ratioTapChanger.getSteps()));
}

Expand All @@ -151,9 +157,15 @@ private void assignPhaseTapChanger(PhaseTapChangerCreationInfos phaseTapChangerC
this.phaseTapChangerTapPosition = phaseTapChangerCreationInfos.getTapPosition();
this.phaseTapChangerRegulating = phaseTapChangerCreationInfos.isRegulating();
this.phaseTapChangerTargetDeadband = phaseTapChangerCreationInfos.getTargetDeadband();
this.phaseTapChangerTerminalRefConnectableId = phaseTapChangerCreationInfos.getRegulatingTerminalId();
this.phaseTapChangerTerminalRefVoltageLevelId = phaseTapChangerCreationInfos.getRegulatingTerminalVlId();
this.phaseTapChangerTerminalRefType = phaseTapChangerCreationInfos.getRegulatingTerminalType();
this.phaseTapChangerTerminalRefConnectableId = phaseTapChangerCreationInfos.getRegulatingTerminal() != null
? phaseTapChangerCreationInfos.getRegulatingTerminal().getId()
: null;
this.phaseTapChangerTerminalRefVoltageLevelId = phaseTapChangerCreationInfos.getRegulatingTerminal() != null
? phaseTapChangerCreationInfos.getRegulatingTerminal().getVlId()
: null;
this.phaseTapChangerTerminalRefType = phaseTapChangerCreationInfos.getRegulatingTerminal() != null
? phaseTapChangerCreationInfos.getRegulatingTerminal().getType()
: null;
this.phaseTapChangerRegulationMode = phaseTapChangerCreationInfos.getRegulationMode();
this.phaseTapChangerRegulationValue = phaseTapChangerCreationInfos.getRegulationValue();
this.tapChangerSteps.addAll(TapChangerStepCreationEmbeddable.toEmbeddablePhaseTapChangerSteps(phaseTapChangerCreationInfos.getSteps()));
Expand All @@ -173,28 +185,30 @@ public TwoWindingsTransformerCreationInfos toModificationInfos() {
}

TwoWindingsTransformerCreationInfos.TwoWindingsTransformerCreationInfosBuilder<?, ?> builder = TwoWindingsTransformerCreationInfos
.builder()
.uuid(getId())
.date(getDate())
.id(getEquipmentId())
.name(getEquipmentName())
.seriesResistance(getSeriesResistance())
.seriesReactance(getSeriesReactance())
.magnetizingConductance(getMagnetizingConductance())
.magnetizingSusceptance(getMagnetizingSusceptance())
.ratedVoltage1(getRatedVoltage1())
.ratedVoltage2(getRatedVoltage2())
.ratedS(getRatedS())
.voltageLevelId1(getVoltageLevelId1())
.busOrBusbarSectionId1(getBusOrBusbarSectionId1())
.voltageLevelId2(getVoltageLevelId2())
.busOrBusbarSectionId2(getBusOrBusbarSectionId2())
.connectionName1(getConnectionName1())
.connectionDirection1(getConnectionDirection1())
.connectionName2(getConnectionName2())
.connectionDirection2(getConnectionDirection2())
.connectionPosition1(getConnectionPosition1())
.connectionPosition2(getConnectionPosition2());
.builder()
.uuid(getId())
.date(getDate())
.id(getEquipmentId())
.name(getEquipmentName())
.r(getR())
.x(getX())
.g(getG())
.b(getB())
.ratedU1(getRatedU1())
.ratedU2(getRatedU2())
.ratedS(getRatedS())
.voltageLevelId1(getVoltageLevelId1())
.busOrBusbarSectionId1(getBusOrBusbarSectionId1())
.voltageLevelId2(getVoltageLevelId2())
.busOrBusbarSectionId2(getBusOrBusbarSectionId2())
.position1(ConnectablePositionInfos.builder()
.label(getConnectionName1())
.direction(getConnectionDirection1())
.order(getConnectionPosition1()).build())
.position2(ConnectablePositionInfos.builder()
.label(getConnectionName2())
.direction(getConnectionDirection2())
.order(getConnectionPosition2()).build());

if (getCurrentLimits1() != null) {
builder.currentLimits1(getCurrentLimits1().toCurrentLimitsInfos());
Expand All @@ -212,9 +226,11 @@ public TwoWindingsTransformerCreationInfos toModificationInfos() {
.regulating(getRatioTapChangerRegulating())
.loadTapChangingCapabilities(getRatioTapChangerLoadTapChangingCapabilities())
.targetV(getRatioTapChangerTargetV())
.regulatingTerminalId(getRatioTapChangerTerminalRefConnectableId())
.regulatingTerminalVlId(getRatioTapChangerTerminalRefVoltageLevelId())
.regulatingTerminalType(getRatioTapChangerTerminalRefType())
.regulatingTerminal(RegulatingTerminalInfos.builder()
.id(getRatioTapChangerTerminalRefConnectableId())
.vlId(getRatioTapChangerTerminalRefVoltageLevelId())
.type(getRatioTapChangerTerminalRefType())
.build())
.steps(ratioTapChangerStepCreationInfos)
.build());
}
Expand All @@ -228,9 +244,11 @@ public TwoWindingsTransformerCreationInfos toModificationInfos() {
.regulating(getPhaseTapChangerRegulating())
.regulationMode(getPhaseTapChangerRegulationMode())
.regulationValue(getPhaseTapChangerRegulationValue())
.regulatingTerminalId(getPhaseTapChangerTerminalRefConnectableId())
.regulatingTerminalVlId(getPhaseTapChangerTerminalRefVoltageLevelId())
.regulatingTerminalType(getPhaseTapChangerTerminalRefType())
.regulatingTerminal(RegulatingTerminalInfos.builder()
.id(getPhaseTapChangerTerminalRefConnectableId())
.vlId(getPhaseTapChangerTerminalRefVoltageLevelId())
.type(getPhaseTapChangerTerminalRefType())
.build())
.steps(phaseTapChangerStepCreationInfos)
.build());
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,8 @@ public void apply(Network network, Reporter subReporter) {
LineAdder lineAdder = network.newLine()
.setId(attachmentLineInfos.getId())
.setName(attachmentLineInfos.getName())
.setR(attachmentLineInfos.getSeriesResistance())
.setX(attachmentLineInfos.getSeriesReactance())
.setR(attachmentLineInfos.getR())
.setX(attachmentLineInfos.getX())
.setG1(ModificationUtils.getInstance().zeroIfNull(attachmentLineInfos.getShuntConductance1()))
.setB1(ModificationUtils.getInstance().zeroIfNull(attachmentLineInfos.getShuntSusceptance1()))
.setG2(ModificationUtils.getInstance().zeroIfNull(attachmentLineInfos.getShuntConductance2()))
Expand Down
Loading