Skip to content

Commit

Permalink
Merge branch 'master' into multi-topo
Browse files Browse the repository at this point in the history
  • Loading branch information
marcosmc committed Feb 26, 2025
2 parents 971830c + ff5d33c commit 45b8024
Show file tree
Hide file tree
Showing 177 changed files with 420 additions and 401 deletions.
4 changes: 2 additions & 2 deletions examples/Model/BESS/WECC/ProducerCurves/Zone1/Producer.ini
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S
# Generator type in the original network (SM or PPM)
generator_type = PPM
# Generator type in the original network (SM, PPM or BESS)
generator_type = BESS
4 changes: 2 additions & 2 deletions examples/Model/BESS/WECC/ProducerCurves/Zone3/Producer.ini
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S+Aux
# Generator type in the original network (SM or PPM)
generator_type = PPM
# Generator type in the original network (SM, PPM or BESS)
generator_type = BESS
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S+Aux
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S+Aux
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S+Aux
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S+Aux
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S+Aux
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S+Aux
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S+Aux
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S+Aux
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S+Aux
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S+Aux
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 40
q_min = -40
# topology
topology = S+Aux
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ q_max = 100
q_min = -100
# topology
topology = S+Aux
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = SM
2 changes: 1 addition & 1 deletion examples/Performance/ProducerCurves/Wind/Producer.ini
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,6 @@ q_max = 40
q_min = -40
# topology
topology = S+Aux
# Generator type in the original network (SM or PPM)
# Generator type in the original network (SM, PPM or BESS)
generator_type = PPM

3 changes: 2 additions & 1 deletion src/dgcv/launchers.py
Original file line number Diff line number Diff line change
Expand Up @@ -197,7 +197,8 @@ def _add_validation_argument(parser: argparse.ArgumentParser, required: bool = F
"-v",
"--validation",
required=required,
help="choice of processs, performance verification (SM or PPM) vs. RMS model validation",
help="choice of processs, performance verification (SM, PPM or BESS) "
"vs. RMS model validation (PPM or BESS)",
choices=["performance_SM", "performance_PPM", "model_PPM", "model_BESS"],
default=None,
)
Expand Down
2 changes: 1 addition & 1 deletion src/dgcv/model/producer.py
Original file line number Diff line number Diff line change
Expand Up @@ -435,7 +435,7 @@ def get_sim_type_str(self) -> str:
'performance/PPM' if it is an electrical performance for a Power Park Module Model
'performance/BESS' if it is an electrical performance for a Storage Model
'model/PPM' if it is a model validation for a Power Park Module Model
'model/PPM' if it is a model validation for a Storage Model
'model/BESS' if it is a model validation for a Storage Model
"""
if self._sim_type == ELECTRIC_PERFORMANCE_SM:
return "performance/SM"
Expand Down
22 changes: 21 additions & 1 deletion src/dgcv/report/report.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,15 @@

from dgcv.configuration.cfg import config
from dgcv.core.execution_parameters import Parameters
from dgcv.core.global_variables import CASE_SEPARATOR, REPORT_NAME
from dgcv.core.global_variables import (
CASE_SEPARATOR,
ELECTRIC_PERFORMANCE_BESS,
ELECTRIC_PERFORMANCE_PPM,
ELECTRIC_PERFORMANCE_SM,
MODEL_VALIDATION_BESS,
MODEL_VALIDATION_PPM,
REPORT_NAME,
)
from dgcv.dynawo import dynawo
from dgcv.files.manage_files import copy_latex_files, move_report
from dgcv.logging.logging import dgcv_logging
Expand All @@ -39,6 +47,17 @@
from dgcv.templates.reports.create_figures import create_figures


def _get_model_type(sim_type: int) -> str:
if sim_type == ELECTRIC_PERFORMANCE_SM:
return "Synchronous Machines"

elif sim_type == ELECTRIC_PERFORMANCE_PPM or sim_type == MODEL_VALIDATION_PPM:
return "Power Park Modules"

elif sim_type == ELECTRIC_PERFORMANCE_BESS or sim_type == MODEL_VALIDATION_BESS:
return "Battery Energy Storage Systems"


def _create_reports(
report_results: dict,
parameters: Parameters,
Expand Down Expand Up @@ -431,6 +450,7 @@ def create_pdf(
"summary_description": summary_description.replace("_", "\_"),
"summaryReport": summary_map,
"reports": reports,
"modeltype": _get_model_type(producer.get_sim_type()),
}
).dump(str(working_path / REPORT_NAME))

Expand Down
2 changes: 1 addition & 1 deletion src/dgcv/templates/PCS/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ benchmarks.
```
[DummySample]
# Report name
report_name = report_ISM.tex
report_name = report_I.tex
```

From this point follow the steps indicated to modify a PCS.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ PCS_RTE-I16z1.GridVoltageStep = Rise,Drop

[PCS_RTE-I16z1.ThreePhaseFault]
# Job name to apply in the JOBS file
job_name = PCS I16-Zone1 (Power Park Modules) - Three-phase Fault
job_name = PCS I16-Zone1 (Battery Energy Storage Systems) - Three-phase Fault
# TSO model side
TSO_model = Fault_1Line_InfBus
# Omega model
Expand Down Expand Up @@ -318,7 +318,7 @@ setpoint_step_value = -0.5*Udim

[PCS_RTE-I16z1.GridFreqRamp]
# Job name to apply in the JOBS file
job_name = PCS I16-Zone1 (Power Park Modules) - Grid Frequency Ramp
job_name = PCS I16-Zone1 (Battery Energy Storage Systems) - Grid Frequency Ramp
# TSO model side
TSO_model = GridVWDisturbance_1Line_InfBusFromTab
# Omega model
Expand Down Expand Up @@ -365,7 +365,7 @@ setpoint_step_value = 0.01

[PCS_RTE-I16z1.SetPointStep]
# Job name to apply in the JOBS file
job_name = PCS I16-Zone1 (Power Park Modules) - V,P,Q Setpoint Steps
job_name = PCS I16-Zone1 (Battery Energy Storage Systems) - V,P,Q Setpoint Steps
# TSO model side
TSO_model = RefTracking_1Line_InfBus
# Omega model
Expand Down Expand Up @@ -490,7 +490,7 @@ setpoint_step_value = 0.05*Udim

[PCS_RTE-I16z1.GridVoltageStep]
# Job name to apply in the JOBS file
job_name = PCS I16-Zone1 (Power Park Modules) - Grid Voltage Step
job_name = PCS I16-Zone1 (Battery Energy Storage Systems) - Grid Voltage Step
# TSO model side
TSO_model = GridVWDisturbance_1Line_InfBusFromTab
# Omega model
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ PCS_RTE-I16z3.Islanding = DeltaP10DeltaQ4

[PCS_RTE-I16z3.USetPointStep]
# Job name to apply in the JOBS file
job_name = PCS I16-Zone3 (Power Park Modules) - Voltage Setpoint Step
job_name = PCS I16-Zone3 (Battery Energy Storage Systems) - Voltage Setpoint Step
# TSO model side
TSO_model = RefTracking_1Line_InfBus
# Omega model
Expand Down Expand Up @@ -106,7 +106,7 @@ setpoint_step_value = 0.02*Udim

[PCS_RTE-I16z3.PSetPointStep]
# Job name to apply in the JOBS file
job_name = PCS I16-Zone3 (Power Park Modules) - Active Setpoint Step
job_name = PCS I16-Zone3 (Battery Energy Storage Systems) - Active Setpoint Step
# TSO model side
TSO_model = RefTracking_1Line_InfBus
# Omega model
Expand Down Expand Up @@ -192,7 +192,7 @@ setpoint_step_value = 0.4*Pmax

[PCS_RTE-I16z3.QSetPointStep]
# Job name to apply in the JOBS file
job_name = PCS I16-Zone3 (Power Park Modules) - Reactive Setpoint Step
job_name = PCS I16-Zone3 (Battery Energy Storage Systems) - Reactive Setpoint Step
# TSO model side
TSO_model = RefTracking_1Line_InfBus
# Omega model
Expand Down Expand Up @@ -278,7 +278,7 @@ setpoint_step_value = -0.2*Pmax

[PCS_RTE-I16z3.ThreePhaseFault]
# Job name to apply in the JOBS file
job_name = PCS I16-Zone3 (Power Park Modules) - Three Phase Fault
job_name = PCS I16-Zone3 (Battery Energy Storage Systems) - Three Phase Fault
# TSO model side
TSO_model = Fault_4Lines_InfBus
# Omega model
Expand Down Expand Up @@ -331,7 +331,7 @@ fault_duration_HTB3 = 0.085

[PCS_RTE-I16z3.GridVoltageDip]
# Job name to apply in the JOBS file
job_name = PCS I16-Zone3 (Power Park Modules) - Grid Voltage Dip
job_name = PCS I16-Zone3 (Battery Energy Storage Systems) - Grid Voltage Dip
# TSO model side
TSO_model = GridVWDisturbance_1Line_InfBusFromTab
# Omega model
Expand Down Expand Up @@ -385,7 +385,7 @@ fault_duration = 0.15

[PCS_RTE-I16z3.GridVoltageSwell]
# Job name to apply in the JOBS file
job_name = PCS I16-Zone3 (Power Park Modules) - Grid Voltage Swell
job_name = PCS I16-Zone3 (Battery Energy Storage Systems) - Grid Voltage Swell
# TSO model side
TSO_model = GridVWDisturbance_1Line_InfBusFromTab
# Omega model
Expand Down Expand Up @@ -475,7 +475,7 @@ fault_duration = 0.10

[PCS_RTE-I16z3.Islanding]
# Job name to apply in the JOBS file
job_name = PCS I16-Zone3 (Power Park Modules) - Islanding
job_name = PCS I16-Zone3 (Battery Energy Storage Systems) - Islanding
# TSO model side
TSO_model = Islanding_2Loads_SynchCond
# Omega model
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[DummySample]
# Report name
report_name = report_IPPM.tex
report_name = report_I.tex
# PCS Id, Used to sort the final report
id = 999

Expand All @@ -12,7 +12,7 @@ DummySample.Benchmark1 = OperatingCondition1,OperatingCondition2

[DummySample.Benchmark1]
# Job name to apply in the JOBS file
job_name = PCS Ix (Power Park Modules) - NameOfBenchmark
job_name = PCS Ix (Battery Energy Storage Systems) - NameOfBenchmark
# TSO model side
TSO_model = RefTracking_1Line_InfBus
# Omega model
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[PCS_RTE-I10]
# Report name
report_name = report.RTE-I10PPM.tex
report_name = report.RTE-I10.tex
# PCS Id, Used to sort the final report
id = 10

Expand All @@ -12,7 +12,7 @@ PCS_RTE-I10.Islanding = DeltaP10DeltaQ4

[PCS_RTE-I10.Islanding]
# Job name to apply in the JOBS file
job_name = PCS I10 (Power Park Modules) - Islanding
job_name = PCS I10 (Battery Energy Storage Systems) - Islanding
# TSO model side
TSO_model = Islanding_2Loads_SynchCond
# Omega model
Expand Down
Loading

0 comments on commit 45b8024

Please sign in to comment.