Recent Releases of CairnOpen
CairnOpen - Cairn 6.0.0
Non exhaustive list of modifications:
[Core]
- Refactoring of EnergyVector: split into ElectricalCarrier and MaterialCarrier (with type Mass or Energy). A script update_v5.4_v6.0.py is included to migrate existing studies and ensure compatibility.
- EnergyVector: improve management of atomic composition for MaterialCarrier, with support for user-defined inputs.
- EnergyVector: add support for time-varying parameters (e.g., LHV/PCI, atomic composition, etc.).
- Renaming Parameters and Indicators: renaming of certain parameters (Grey… -> Embodied…, …Constant -> …Offset) and indicators for clarity and consistency. Use the script update_v5.4_v6.0.py to migrate existing studies and ensure compatibility.
- Profiling tool: new class allowing automatic measurement of execution time and memory usage, with data export for each run.
- Sizing of converters: improve sizing based on Weight and consistency checks; removal of unused Pmin variables when minPower = 0.
- Minimum capacity logic: extended to Compressor and Pipeline models.
- Compressor: add an option to manually specify electrical consumption.
- MultiConverter: users can now define upper limits on inputs/outputs via a CSV file.
- VariableOpex at the port level: users can now define VariableOpex at the port level.
- TecEcoAnalysis: removal of the Range parameter.
- Multi-threading: add support for multi-thread execution of Parametric Study.
- Logging: clean and improve log display.
- Developer tools: add a model template for developers creating new components.
- Code quality: general code cleanup, refactoring, and minor fixes.
[API]
- Add a function to perform a Parametric Study.
- Add an Import Group function: import_group(json: string)
- Support for timeseries in dataframe format via the API: add_df_timeseries(problem: OptimProblem, timeSeries: pd.DataFrame)
- Support for user comments via the API.
- Add an attribute to know the energy vector associated with a bus: bus.carrier
[GUI]
- The GUI now retrieves all necessary data (variables, indicators, ports, units, etc.) directly from the API, removing the dependency on Model.json.
- Improve and centralized font sizes in the interface.
- Add units in the results windows.
- Fix display issues related to Parametric Study (progress bar, etc.).
- Add support for exporting a single component or a selection of components (in addition to the existing group export).
Energy Systems - Energy System Modeling Frameworks
- HTML
Published by stephanie-crevon 1 day ago
CairnOpen - Cairn 5.4.0
Non exhaustive list of modifications:
[Core]
- Enabled bus-to-bus connections : to do so, it is mandatory to define a variable to exchange through the link
- Split NodeLaw into two separate components: NodeLaw and ManualConstraint (custom constraints) - compatibility script: update_v5.3_v5.4.py
- Extended minimum capacity handling to Compressor and Pipeline
- ManualObjective: added CommonMinVariable and CommonMaxVariable to define bounds for all connected variables
- Multiobjective: correction of the lexicographic function which allows to iteratively optimize objectives to reach a point on the Pareto front
- Multiconverter: fixed non-functional weight-based sizing
- EnergyVector: added support for timeseries-based LHV/GHV
- Expanded the list of supported units
- Removed the Range parameter from TecEcoAnalysis: both PLAN and HIST are now always exported
[API]
- Added runCycle, a method that executes a single cycle step
- Added a method to configure subscribed variables
[GUI]
- Retrieved the parameter list via the API instead of Model.json
- Removed the parameter filter in the top-right corner
- Improved the plotter: now displays all past cycles in case of rolling-horizon
- EnergyVector: added a menu entry to show the color panel
- Added a button to display only installed components
- Added a function to export a study as zip file
- Removed the function that generated the LaTeX report
- Included comments in exportParameters
- Added units to post-processing results
- Fixed an error occurring when a time series name contains accents
Energy Systems - Energy System Modeling Frameworks
- HTML
Published by stephanie-crevon 3 months ago
CairnOpen - 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
Energy Systems - Energy System Modeling Frameworks
- HTML
Published by stephanie-crevon 5 months ago
CairnOpen - Cairn 5.1.0
Cairn 5.1
Non exhaustive list of modifications:
- Add the "MinSize" parameter for all models: minimum capacity
- Cleanup of SourceLoad: peak shaving option has been reviewed and SourceLoadFlexible has been removed
- Correction on StorageGen: minEsto was set to the minimum size of the storage
- Correction of the indicator related to environmental replacement and properly account for replacements in the total quantities of impacts
- API: add a copy_component method
- API: cleanup of vectors and expressions at the beginning of an execution to allow multiple executions under the same instance
- Wheel installation also in the installer
Energy Systems - Energy System Modeling Frameworks
- HTML
Published by stephanie-crevon 10 months ago
CairnOpen - Cairn 5.0.0
First open source release of Cairn.
Only windows platform is supported so far.
Energy Systems - Energy System Modeling Frameworks
- HTML
Published by stephanie-crevon about 1 year ago
CairnOpen - Cairn-4.5.9
🌟 Cairn release
Package to be installed using pip : pip install cairn-<ver>-cp310-cp310-win_amd64.whl
Version : 4.5.9
Python version : 3.10
Energy Systems - Energy System Modeling Frameworks
- HTML
Published by ucefdjebourcea about 1 year ago