v0.15.0
Version 0.15.0
Major feature: Parameter studies, optimisation and sensitivity analysis
-
Add a
parameter_studysection for repeatedly simulating an energy system with different input parameters- Define variable parameters using optimisation bounds, starting values, explicit values or generated ranges
- Run Cartesian-product, zipped or random parameter variations
- Define objectives from simulation, economic and emissions results and combine them using
sum, weightedlinearfunctions or separate multi-objective outputs
-
Add single- and multi-objective optimisation using algorithms from
Optim,BlackBoxOptim,Metaheuristics,NLoptandNOMAD- Add run, time and tolerance limits, objective-specific minimisation or maximisation and an optional refinement stage
- Normalise parameters internally while retaining physical values in project files and outputs
-
Add global and local sensitivity analyses
- Calculate first- and total-order Sobol indices using polynomial chaos expansion
- Evaluate one-at-a-time local parameter changes around starting values or the best available result
- Reuse matching results from preceding parameter-study calculations
-
Add threaded execution, interruption handling and dedicated parameter-study logging
- Preserve available results when studies are interrupted with
Ctrl+C
- Preserve available results when studies are interrupted with
-
Add CSV and interactive HTML outputs
- Include complete result tables, continuous CSV writing, optimisation and parameter-relation plots, interactive 3D plots and global- and local-sensitivity outputs
-
Add
disable_all_simulation_outputs, enabled by default, to suppress regular outputs from individual parameter-study simulations -
Add parameter-study examples and scenarios for multi-family-house parameter variation, component-size optimisation and sensitivity analysis
Breaking changes
-
Rename general output-path parameters for consistency
csv_output_file→csv_output_file_pathoutput_plot_file→output_plot_file_pathsankey_plot_file→sankey_plot_file_path
-
Rename CSV-related parameters to consistently use lowercase
csvwrite_summary_CSV→write_summary_csvoutput_economic_CSV→output_economic_csveconomic_CSV_file_path→economic_csv_file_pathoutput_emissions_CSV→output_emissions_csvemissions_CSV_file_path→emissions_csv_file_path
-
Change fixed output precision to use significant digits instead of decimal digits
- Update scenario reference outputs to reflect the changed rounding behaviour
Minor changes / fixes
- Add multi-family-house and district examples and scenarios with economic and GHG emissions calculations
- Add summary CSV generation with automatic aggregation of means, sums, minima and maxima
- Add
capex_specific_scaleand the economic resultannuity_opex_including_energies - Improve validation and error messages for invalid profile values, unknown component types, empty interfaces and missing scenarios
- Extend the
storage_drivencontrol module withcontrol_modefor storages used as sources - Fix heat-pump temperature calculations, secondary-interface behaviour, slice splitting and storage transfer handling
- Fix transformer order-of-operations handling for active part-load operation on middle busses
- Fix an incorrect conditional in
GeothermalHeatCollector - Fix profile handling, geothermal plotting, file-only plotting and logger shutdown
- Clarify heat-pump COP warnings, installation instructions and file-path formatting
- Add and update missing scenario reference outputs
Internal changes
- Add
BlackBoxOptim,Metaheuristics,NLopt,NOMADandPolyChaos - Separate parameter-study execution and output generation into dedicated modules
- Rename
file_output.jltosimulation_output.jland generalise simulation-result extraction - Add the
GlobalInfolog level for messages applying to complete parameter studies - Cache reusable profiles and the order of operations across repeated simulation runs
- Improve scenario tooling and update examples, inputs and reference files