Version History
v0.1.0:
Implemented necessary features to run together with AixCaliBuHa and EnSTATS
v0.1.1:
Fixed bugs necessary to work with AixCaliBuHa and EnSTATS and refactor functions based on feedback
v0.1.2:
Move CalibrationClass to AixCaliBuHa
Add scipy.optimize.differential_evolution as an optimizer
v0.1.3:
Move conversion.py to utils and make preprocessing a direct module
Introduce current_best_iterate as a parameter for optimization to ensure that the best solution to a problem is still saved even if an iteration step causes an error
Make interrupt of optimization through Keyboard-Interrupt possible
Adjust Goals functions to make slicing of multiple time-intervals possible.
v0.1.4:
Create a tutorial with juypter-notebook
Introduce MultiIndex (from pandas) and make TimeSeriesData extend of the standard DataFrame
Adjust all classes, most notably Goals. This class will go into AixCaliBuHa, as it is only relevant for Calibrations.
v0.1.5:
Remove dlib and PyQt5 from setup.py and delete TunerParas.show()
Refactor Optimizer so the framework parameter is only necessary to call optimize()
v0.1.6:
Issue23: Change conversion functions to correctly handle multiheaders
Issue24: Add converters and correctly inherit from pd.DataFame in TimeSeriesData
Add functions for configuration using yaml
Add regex functions for extraction of modelica variables
Add option to directly return results as a dataframe using simulateMultiResultsModel.
v0.1.7:
Issue13: Add an FMU API as simulation api
Issue36: Use Python Logging as default logger in all modules
Issue38: Fix future warning in pandas loffset
Issue39: Add simres from modelicares to avoid version errors with matplotlib.
Issue41: Fix inheritance of
pd.DataFrame
inTimeSeriesData
.This also enables converting any single-index df to the required multi-index format (See #37).
Issue42: Move
TunerParas
toAixCaliBuHA
Add unit-tests for the dymola-api.
Use f-strings only
Update setup.py and requirements
Use
TimeSeriesData
in classes as output in the simulation api
v0.1.8:
Drop support for Python 3.6 (See #44)
Breaking changes in pandas forces us to increase the version required
Pandas dropped the support for Python 3.6
v0.2.0:
Prepare JOSS publication. Fixed #48
Prepare workshop using new examples. Fixes #49
Add multiprocessing to Simulation APIs. Fixed #5
Genereal restructuring of examples, tutorials and tests
Several new functions for easier access / utility
Add inputs option for
DymolaAPI
v0.2.1:
Fix installation error by using
scikit-learn
instead ofsklearn
v0.2.2:
Allow custom methods in
StatisticsAnalyzer
Allow structural parameter changes in
DymolaAPI
v0.2.3:
Fix bad import in
setup.py
Remove requirement for PyTables to enable support on python >3.9 #5
Add further save- and load functions for .csv
v0.3.0:
Add parallelization option for optimization backends
v0.3.1:
Avoid DType Warning #53
v0.3.2:
Correct bounds for simulation Variables #56
Add script to reproduce simulation studies and store info in an archive #27
v0.3.3:
Fix memory error for large parameter variations durring multiproccesing #76
Add option to set only one savepath for saving files of parameter varaiations #74
v0.3.4:
Fix reproduction for new pip versions and old Dymola versions #80
Add support for the data format parquet with compression options #81
v0.3.5:
Add simulation time estimation and checking of free hard drive space for saving #86
Add saving of directories for reproduction and tests for reproduction functions #87
v0.3.6
Fix mp issue #95
fix tests for newer dependency versions
Remove warnings and update frequency if TimeSeriesData
Add CI based pypi release
v0.3.7
Fix setup.py pydantic version
v0.3.8
Fix sampling error for non-numeric values #69 #102
v0.3.9
Fix error in loading newer ds-data from Dymola #70
v0.3.10
Fix fmpy version #109
Fix data format for index frequency of tsd #107
Fix bug in function clean_and_space_equally_time_series #111
v0.3.11
Add dymola_exe_path to set of kwargs in DymolaAPI #115
v0.3.12
Port handling Add dymola_exe_path to set of kwargs in DymolaAPI #118
v0.3.13
Fixes in simulate options and add Dymola CI tests #28, #113, #117
v0.3.14
Fix retranslation #121
refactor cd to working_directory #61
Propagate
names
of simres to TimeSeriesData to speed up mat-loading
v0.4.0
Preprocessing functions now copy the input DataFrame by default with the new inplace argument (default False). #125
Add inplace option to TimeSeriesData function (default True)
v0.4.1
fix reproduction with modifiers #82
enable model_name=None upon startup of DymolaAPI #130
Only create logger handler if not already done by root-logger
v0.4.2
Do not use chars_to_strings from scipy #132
v0.4.3
Fix missing .egg for new Dymola release #138
v0.5.0
Added bayesian-optimization to the possible optimizers #129
v0.5.1
Add save-logs option for SimulatioAPI #141
Minor bug fixes #143