Skip to content
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

Report refactor #53

Merged
merged 8 commits into from
Feb 26, 2025
Merged
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
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 @@ -392,7 +392,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 @@ -426,6 +445,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