Conversation
…and tests - Implement `ThermalSpecificParamParser` for processing thermal data. - Add related constants in `constant_specific.py`. - Include unit tests for the parser.
…atus filters MAIN_PARAM : CLUSTER have (just for test) new fake cluster added to dont raise error
…th additional default parameters - Added new default parameters to `CommonDataColumnsNames` and `ClusterParams` classes for improved thermal data handling. - Updated constant in `constant_specific.py` to include `NET_MIN_STAB_GEN`.
# Conflicts: # tests/antares/resources/MAIN_PARAMS_2025.xlsx
…s for detailed thermal data processing - Updated `ClusterParams` to support new default parameters like efficiency, forced outage rates, and minimum stable generation. - Adjusted `get_scenario_types` and commissioning/decommissioning date handling for better scenario filtering. - Updated unit tests and Excel resources to reflect new parameters.
…parser - Added `_update_existing_columns_with_commondata` method in `specific_param.py` for filling missing or empty values using default parameters from `CommonData`. - Introduced `get_antares_clusters_technology_and_fuel` method to process multiple clusters efficiently. - Updated thermal parameter processing pipeline to include the new method.
…cessing logic - Added new specific parameters in `constant_specific.py` and adjusted `OutputThermalSpecificColumns` for enhanced thermal data output formatting. - Implemented `_filter_columns_for_output_specific` and `_fill_from_common_data` methods for streamlined handling of default values and output columns. - Updated `_update_existing_columns_with_commondata` and adjusted the parameter processing pipeline for better integration. - Improved handling of missing values using newly added default parameters like outage rates and efficiency.
…ort for multiple years - Updated biomass clustering logic for efficient splitting and capacity handling. - Extended thermal parser to support processing for multiple years (e.g., 2030, 2035). - Improved data aggregation and output formatting within `_build_thermal_specific_pegase`.
…process - Added `scenario_name` parameter to `ThermalSpecificParamParser` for generating scenario-specific Excel exports. - Enhanced thermal parser output with detailed yearly data splitting and output formatting. - Introduced `_export_specific_param_dataframe` for Excel export with a sheet for each year.
…tionality - Introduced `weighted_avg` method in `constant_specific.py` for calculating weighted averages. - Renamed `PLAN_OUTAGE_ANNUAL_WIN` to `PLAN_OUTAGE_WINTER` for improved clarity. - Added `F_COLUMNS` and `P_COLUMNS` constants for advanced data manipulation. - Enhanced thermal parser computations with seasonal handling of outage durations. - Updated tests to validate exported Excel sheets with year-specific data.
- Added `NODE_ENTSOE`, `COMMENTS`, and `CLUSTER_PEMMDB` to `OutputThermalSpecificColumns`. - Updated parser to generate and populate these new columns with default values. - Adjusted expected output Excel files to reflect the added columns.
- Added `_filter_non_declared_areas` method to exclude nodes outside the RTE study perimeter. - Integrated the new filter into the thermal parser pipeline. - Updated expected output Excel files for 2030 and 2035 to reflect filtering changes.
# Conflicts: # src/antares/data_collection/thermal/installed_power/specific_param.py
…arser module - Moved constants to `thermal.specific_param.constants` for better modularity. - Removed `_get_starting_and_ending_timestamps` and unused imports for clarity and maintainability. - Created `__init__.py` in `thermal.specific_param` to initialize the module.
…lumns and associated methods - Eliminated redundant `InputThermalColumns` definitions and unused filtering methods for better maintainability. - Updated `ThermalSpecificParamParser` to simplify logic and delegate functionality to `ThermalParser`. - Adjusted test cases to accommodate the refactored parser structure and align with the updated implementation.
- Removed unused `scenario_name` parameter from `ThermalParser` and `ThermalSpecificParamParser` constructors. - Replaced hardcoded export filenames with `SPECIFIC_PARAM_NAME_FILE` constant for consistency. - Updated tests to reflect the modified parser and file naming logic. - Added handling for `Bio` clusters in `ThermalSpecificParamParser` to improve data processing.
# Conflicts: # src/antares/data_collection/thermal/parsing.py
There was a problem hiding this comment.
We should move these 2 files inside the thermal folder to separate concerns for future works
| CLUSTER_BP = "cluster_BP" | ||
| FUEL = "Fuel" | ||
| EFFICIENCY_DEFAULT = "efficiency_default" | ||
| FO_RATE_DEFAULT = "FO_rate_default" |
There was a problem hiding this comment.
For these new columns we should add error cases in the test_main_params.py
There was a problem hiding this comment.
we have a test test_parse_main_params_mandatory_columns who treats only columns mendatory for sheet "PAYS".
Should i add specific test for sheet "Common Data" ?
| raise ValueError(f"Cluster {antares_cluster} not found inside sheet {ReferentialSheetNames.COMMON_DATA}") | ||
| return self._cluster_antares[antares_cluster] | ||
|
|
||
| def get_antares_clusters_technology_and_fuel(self, antares_clusters: list[str]) -> list[ClusterParams]: |
There was a problem hiding this comment.
We should rename this method and the previous one as now it does not only return this
There was a problem hiding this comment.
get_antares_cluster_common_data_params / get_antares_clusters_common_data_params
| """ | ||
|
|
||
| # STD_EFF_NCV / efficiency_default | ||
| # TODO add to MAINPARAM parser to check `efficiency_default`ranged value [0;1] |
There was a problem hiding this comment.
What about this TODO ?
There was a problem hiding this comment.
it is necessary to add those kind of check ?
…dling - Renamed `get_antares_cluster_technology_and_fuel` to `get_antares_cluster_common_data_params`. - Updated corresponding plural method and variable references. - Adjusted loop in `parse_main_params` to iterate over all `CommonDataColumnsNames`. - Updated test file paths and renamed expected output files for better organization.
This part of thermal is pretty similar to "installed power" with other columns to manage from root data thermal.
New columns to create based on referential Common Data.
Specific output format.
Currently :
ThermalSpecificParamParserfor processing thermal data.constant_specific.py.Common Dataupdated with columns value