Cairn 5.3.0
Cairn 5.3
Non exhaustive list of modifications:
- Upgrade the environment to Python 3.13
[Core]
- Modify the names of the indicators in PLAN/HIST
- Remove the "Direction" parameter for Grid and SourceLoad: the direction is now deduced from the default port direction (INPUT => injection/load, OUTPUT => extraction/source)
- Correction regarding the size of the matrices in the MultiConverter: matrix B is no longer mandatory (if absent => 0) and you can also put a single scalar k in the .csv file to indicate that it is a vector of size * k
- Update the ManualObjective model: only the Add and Lexicographic objective types are now supported; the Blended type has been removed
- Rename the Opex parameter to FixedOpex. The compatibility script update_v5.2.1_v5.3.py can be used to update old JSON files
- Add the VariableOpex parameter, allowing the user to define a price per unit of flow, but currently linked to the first output port (feature to be improved)
- Complete dynamization of indicator names through a dedicated class that automatically generates names based on the associated port parameters
- Refactoring of OptimProblem into an independent class, removing its inheritance from MilpComponent to improve clarity and architecture
- Indicators are now accessible as soon as a component is created, allowing them to be obtained immediately without having to run a simulation
[GUI]
- Ability to type the name of the time series in the dropdown menu
- Add a feature to add "User-Defined Labels" (UDL) in TecEco and fill them in each component
- Add an option in the "File" menu to export parameters
- Display the version status (official or stable) next to the Cairn logo in the footer
- Improvement of the log system: all messages are now written to the .log file
- Ability to create links between TecEcoAnalysis and ManualObjective
- Add the possibility to run simulations over a limited period via startTime and endTime in SimulationControl
- When exporting a group, include the required EnergyVectors as well as the original bus when a duplicated bus is part of the group
- Add the possibility to select multiple components and move them to another page
- In multi-page mode: rename duplicated buses to PageX.{BusName}, and indicate the target page of the dotted arrows
- Prevent the connection of a port until its associated variable is configured
- Hide the Environmental Impacts tabs (and color the (+) button in red) when EnvironmentModel is disabled
- Retrieve the list of indicators via the API instead of using Model.json
- Integration of QTests for automated testing of the GUI, including the setup of two initial test cases
[API]
- Add methods to export parameters, export the PLAN file, rename the component, and configure labels (UDL)
- Introduction of a unified CairnObject structure: all components of a problem (milp-components, buses, energy_carriers, solver, TecEcoAnalysis, SimulationControl) are now treated as objects with methods to read or modify their parameters more easily. The old methods related to milp-components, buses, and energy_carriers remain available