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
Metadata
Release files for MultiSim 0.10.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| MultiSim-0.10.0.tar.gz | 381.6 kB | Without provenance | Details for MultiSim-0.10.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| MultiSim-0.10.0-py3.7.egg | Legacy Egg format | - | - | Details for MultiSim-0.10.0-py3.7.egg |
Total release size: 1.1 MB
Release files / MultiSim-0.10.0.tar.gz
| Download URL | MultiSim-0.10.0.tar.gz |
|---|---|
| Size | 381.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
13c5eea6b3f908d625c0c3f5bbe2feb823fcb3ef4602ff86a36c0dd4540aa2e5
|
|
BLAKE2b-256 checksum How to use checksums |
7982b407ab648180c9c8707c9ec25b46dc2cdfd32bfdbf96dc78636e1f87880c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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
|
Release files / MultiSim-0.10.0-py3.7.egg
| Download URL | MultiSim-0.10.0-py3.7.egg |
|---|---|
| Size | 704.7 kB |
| Tags | Egg |
|
SHA-256 checksum How to use checksums |
91ab701a336538eb3ff551a2688a3dad0cc7d99f5e69134eb3e648a82b29cb62
|
|
BLAKE2b-256 checksum How to use checksums |
ec21e40439374602529a640d93f4662ee9bd629096e89d6fa744924d5c5a66ae
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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
|
Security for MultiSim 0.10.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.