Thermal simulation tool for heating appliances.
Project description
Thermal simulation tool for heating appliances.
========= Changelog
| BUG: Bug resolved | ENH: Enhancement of the module | DEP: Deprecation | MAINT: Changes to the package environment | DOC: Changes to the package documentation | BLD: Changes to the package build
0.10.0 - TBA
- MAINT: API: Main class
Modelsrenamed toSimEnv.Modelscan still be imported/used for backwards compatibility, but will be deprecated in a future release. - DEP: Many deprecated/commented LOC removed.
- DEP: :py:func:
utility_functions.NetPlotter: now raises a deprecation warning. The only remaining supported method isplot_errors. Will be removed in future releases. - ENH: Started integrating a new way of checking for kwds in :py:func:
parts.pipe.Pipewhen supporting two different arg naming conventions.
0.9.9 - 2020-08-26
- MAINT: API-cleaning: Name mangled most imports.
- DEP: Removed roughly 5k lines of deprecated or commented code. Many more to go...
- MAINT: Fully :py:func:
black'ed and :py:func:flake8'ed all parts of the package. - DEP: Some non-optimized parts removed from the package.
- BUG: :py:func:
utility_functions.plt_prediction_realizationbugs resolved. - ENH: Many commented lines removed.
- ENH: :py:func:
utility_functionsminor changes to argument handling and error naming conventions.
0.9.8 - 2020-07-23
- BLD: Basic pytest testing added in
./tests - BLD: Travis CI configured with flake8, mypy and basic pytest testing.
- ENH:
simenv.Modelsnow supports storing arbitrary data to disk. Data storing methods can be registered toModels._disk_store_utilityduring class initialization. - BUG:
controllers.ModelPredCHP: Critical bug resolved, causing the modelpredictive control to optimize over the total kumulative heat demand instead of the expected kumulative heat demand. - BUG:
controllers.ModelPredCHP: Critical bug resolved, causing the modelpredictive control to not increase the optimization step counter when the emergency control hits, cause a delay in the profile slices used for optimization. - ENH:
controllers.ModelPredCHP._tes_heat_content: TES energy content calculation refactored. - ENH:
controllers.ModelPredCHP._longterm_clip_w_cont: Long-term optimizer continuity enhanced to treat current step result depending on last step's result. - ENH:
controllers.ModelPredCHP: Emergency CHP activation implemented as a two-level control: If the PV falls below setpoint, a mixed mode is activated. This is a 50:50 compound of full power and electricity profile optimized control. If the PV falls below the setpoint minus an additional threshold, the CHP plant goes into full power operation. - ENH:
controllers.ModelPredCHP._adapt_cap: Upper and lower TES capacities used for estimating the remaining capacity before full/empty are adapted each time the emergency control hits. - ENH:
controllers.ModelPredCHP._restore_adptd_caps: Adapted capacities are slowly restored to initial values of a given timeframe, default 24h. - ENH:
controllers.ModelPredCHP: Adaption and restoring of TES capacities is performed only emergency control was active recently and/or the capacities have not been fully restored. - ENH:
controllers.ModelPredCHP: Modelpredictive optimization results can now be stored on disk. - ENH:
controllers.ModelPredCHP._longterm_clip_array: Method added to clip longterm optimization results to modulation range for TES SOC checking. - ENH:
controllers.ModelPredCHP._longterm_adj_by_soc: For badly scaled CHP plants, optimization may yield false results (f.i. CHP P_el is much larger than the required power, thus modulation is set to values <.5). In these cases, longterm optimization results are adjusted by the predicted SOC. - ENH:
controllers.ModelPredCHP: Major refactoring of the methods. There is still a massive potential for further refactoring, removing deprecated/commented code, breakpoints etc...
0.9.7 - 2020-06-15
- ENH:
parts.consumer.space_heatingadded. - ENH:
parts.consumer.speicherladesysadded. - ENH:
parts.pipe.Pipe.init_part()argument error corrected. - ENH:
set_disksavingcan now infer the start_date from boundary conditions. - ENH:
utility_functions.Meters.heat_metercan now calculate heat flow from massflows at the hot part. - ENH:
utility_functions.Meters.heat_meterby default reduces the output by omitting the positive-only flows. - ENH:
utility_functions.Meters.heat_meterunit of power changed W -> kW and of energy J -> MJ. - ENH:
parts.heated_pipeemergency shutdown when surpassing a temperature added, default 110°C. - ENH: isinstance checks for int and float will be expanded step-by-step to also check for np.int and np.float to avoid some occasionally occurring errors.
- MAINT: Lots of dead code removed.
- BUG: Topology handling with operation routine 5 improved, resp. error message for unsafe topology added.
- MAINT:
utility_functions.NetPlotterreintegrated and basic error plotting functionality restored. - ENH: Local variable
timeinModels.start_simmethod is now an instance variable namedtime_simfor simulation environment wide access. - ENH:
precomp_funs.startup_factor_gasadded as a compound factor consisting of the thermal and electrical startup scaled by the efficiencies given in the XRGi20 datasheet. - ENH:
parts.chp_plant.CHPPlant: Integration ofprecomp_funs.startup_factor_gasto calculate the gas input during startup. - ENH:
controllers.ModelPredCHP: Model predictive controller for CHP plant added. The MPC consists of 3 layers: First/outer layer for switching on/off the CHP plant if the heat storage is empty/full, overrides layers 2 and 3; second/middle layer for optimizing the the CHP plant operation schedule by means of an opertation cost function constrained by the TES SOC and mean heat/electric demands in a selected timeframe every few seconds (default: timeframe of 2 days every 900 seconds); third/inner layer to optimize the CHP modulation in each step by means of an operation cost function, depending on decisions made in the second layer. - ENH: Model predictive control electricity led CHP plant added to
suppliers.chp_with_fghex. - BLD:
setup.pyversion dependencies updated, most specifically now requiring Python >= 3.7. - ENH:
parts.part_modules.supplier.chp_with_fg_hexfully integrated model predictive control.
0.9.6 - 2020-03-05
- ENH:
utility_functions.package_resultsnow also accepts absolute paths formove_to. - BLD: All references to external non-standard modules (not available on PyPI removed, most notably to
toolboxmodule. - ENH: Functions in
utility_functionsthat previously requiredtoolboxmodule implemented directly. - ENH: Functions in
utility_functionsthat previously requiredtoolboxmodule will be overriden by bytoolboximplementations iftoolboxmodule is installed. - MAINT:
setup.pynow requires at least a specific version of the required module. - BUG:
setup.pyinstall_requirespreviously had 'sklearn' as a requirement. This is the import name. Replaced with the correct module name 'scikit-learn'. - DOC:
setup.pyclassifiers added. - BLD:
setup.cfgadded with[bdist_wheel] universal=0and included license. - BLD:
bdist_wheel --universalremoved fromsetup.py. - BLD:
setup.pyautomatically setsbdist_wheel --python-tag. - ENH:
utility_functions.package_resultspath finding optimized.
0.9.5 - 2020-03-03
- DOC:
INSTALL.rst.txtadded with instructions on how to package, build, install and distribute MultiSim. - MAINT:
setup.pynow supports automatic upload to PyPI viatwinewithpython setup.py upload - ENH: Automatic version numbering in
setup.pydownload URL. - DOC:
README.rstupdated.
0.9.4 - 2020-03-02
- ENH: Main sim. class
Modelsmade directly accessible from top-level package. - DEP: Access to
multisim.sewill be restricted in oncoming versions. - DOC: Changelog formatting improved.
- BLD:
setup.pytweaked for PyPI distribution. - BLD: Package released on Github (private repo).
- BLD:
.gitignoreadded
0.9.3 - 2020-02-19
- ENH: Import of submodules in package
__init__.pyto enable top-level access to submodules. - ENH:
utility_functions.load_sim_resultsnow takes akeysargument to only load specific columns. - ENH:
utility_functions.load_results_by_nametakes and passes on thekeysresult. - ENH:
utility_functions.load_sim_resultsworks by concatenating columns instead of copying value arrays, increasing performance by a factor of about 30. - DOC: Changelog description added.
0.9.2 - 2020-02-14
- ENH:
utility_functions.package_resultsfunction added to allow for easy structuring of results. - ENH:
utility_functions.load_results_by_nameconvenience wrapper added forload_sim_resultsto allow easy pathless loading of structured results.
0.9.1 - 2020-02-11
- ENH: Added bypassing to hex_condensing_polynome to allow for massflows >> max water massflow.
0.9.0 - 2020-02-11
- Initial release
- All imports made relative imports
- Packaging of the simulation environment started
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
MultiSim-0.10.0.tar.gz
(381.6 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
MultiSim-0.10.0-py3.7.egg
(704.7 kB
view details)
File details
Details for the file MultiSim-0.10.0.tar.gz.
File metadata
- Download URL: MultiSim-0.10.0.tar.gz
- Upload date:
- Size: 381.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.6.0.post20200814 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
13c5eea6b3f908d625c0c3f5bbe2feb823fcb3ef4602ff86a36c0dd4540aa2e5
|
|
| MD5 |
a885c3035de9a552e0f4b8df3dc4cebf
|
|
| BLAKE2b-256 |
7982b407ab648180c9c8707c9ec25b46dc2cdfd32bfdbf96dc78636e1f87880c
|
File details
Details for the file MultiSim-0.10.0-py3.7.egg.
File metadata
- Download URL: MultiSim-0.10.0-py3.7.egg
- Upload date:
- Size: 704.7 kB
- Tags: Egg
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.6.0.post20200814 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
91ab701a336538eb3ff551a2688a3dad0cc7d99f5e69134eb3e648a82b29cb62
|
|
| MD5 |
f828319437746a088bf2cd56b7b85377
|
|
| BLAKE2b-256 |
ec21e40439374602529a640d93f4662ee9bd629096e89d6fa744924d5c5a66ae
|