heat-desalination
Simulation and optimisation of hybrid electric and thermal powered desalination systems
Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 18 DOI reference(s) in README -
○Academic publication links
-
✓Committers with academic emails
1 of 2 committers (50.0%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.3%) to scientific vocabulary
Repository
Simulation and optimisation of hybrid electric and thermal powered desalination systems
Basic Info
- Host: GitHub
- Owner: BenWinchester
- License: mit
- Language: Python
- Default Branch: main
- Size: 2.04 MB
Statistics
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 5
- Releases: 2
Metadata Files
README.md
HEATDesalination
Simulation and optimisation of hybrid electric and thermal powered desalination systems
Table Of Contents
:link: Dependencies
:clap: Acknowledgements
🐍 Setting up your Python environment * Anaconda method * Pip install
🌦️ PVGIS
:memo: Completing input files * Location-based files * System-based files
:fire: Running HEATDesalination * Fetching weather data * Running a simulation * Running an optimisation * Parallel simulation and optimisation
🎓 Running HEATDesalination on Imperial College London's high-performance computers
:memo: References
Dependencies
This module imports libraries from:
* The open-source pvlib Python package developed by Holmgren, Hansen and Mikofski [1].
This module integrates with the open-source PVGIS framework, developed by Huld et al., [2].
Acknowledgements
This repository uses code developed by the CLOVER-energy team by Winchester et al. (2022). Thanks to all at the @CLOVER-energy/clover-development-team for their work.
Downloading HEATDesalination
heat-desalination is best installed from pypi:
bash
python -m pip install heat-desalination
should be run from a terminal or powershell window. This will fetch and install the latest version of heat-desalination along with all of its dependencies. heat-desalination runs best in Python 3.10.
Working as a developer
If you wish to help develop and work on the project, or, if you have any modifications that you wish to make to the code, the best approach is to run a git clone of the reposiroty. This will ensure that you have an up-to-date copy of the code which you can use to make changes, push commits and open pull requests within the repository:
bash
git clone https://github.com/BenWinchester/HEATDesalination
Setting up your Python environment
heat-desalination uses Python 3.10. If you have installed the package heat-desalination following the instructions in the Downloading HEATDesalination section, then you should already have everything that you need. Otherwise, you will need to install the required dependencies.
Anaconda method
To install using conda, a Python-based virutal-environment manager, from the root of the repository, run:
bash
conda install --file requirements.txt
Note, on some systems, Anaconda may be unable to find the requirements.txt file. In these cases, it's necessary to use the absolute path to the file, e.g.,
bash
conda install --file C:\Users\<User>\...\requirements.txt
Pip install
If you feel more comfortable using pip, the Python package manager, you can use this either from within an Anaconda environment or straight from the command-line:
bash
python -m pip install -r requirements.txt
PVGIS
heat-desalination relies on the package pvlib.iotools.pvgis [[1]]. This package is responsible for fetching weather data from the Photovoltaic Geographical Information System (PVGIS). This data is used in the internal models to assess the performance of the solar collectors considered in the system. No API tokens or login keys are needed in order to use this API.
In order to download weather related data for your given location, simply run
bash
python -m heat-desalination-weather -lat <latitude> -lon -<longitude> -t <timezone>
or
bash
heat-desalination-weather -lat <latitude> -lon -<longitude> -t <timezone>
from your command-line interface, provided that you have installed the heat-desalination package, where <latitude> and <longitude> are floating-point (i.e., decimal) numbers that give the latitude and longitude of the location for which you wish to download data respectively and <timezone> is the decimal timezone offset, e.g., 5.5 for a 5-and-a-half hour time difference from UTC.
If you have downloaded the code from Github, you will need to run
bash
python -m src.heatdesalination.weather -lat <latitude> -lon -<longitude> -t <timezone>
from your command-line interface.
Completing input files
Location-based files
System-based files
Running HEATDesalination
Fetching weather data
Running a simulation
Running an optimisation
Parallel simulation and optimisation
Running HEATDesalination on Imperial College London's high-performance computers
References
[1] Holmgren, W. F., Hansen, C. W., & Mikofski, M. A. 2018 "pvlib python: a python package for modeling solar energy systems." Journal of Open Source Software, 3(29), 884. https://doi.org/10.21105/joss.00884
[2] Huld, T., Müller, R. & Gambardella, A., 2012 "A new solar radiation database for estimating PV performance in Europe and Africa". Solar Energy, 86, 1803-1815. http://dx.doi.org/10.1016/j.solener.2012.03.006
[3] Winchester, B., Beath, H., Nelson, J., & Sandwell, P. "CLOVER (Version v5.0.5)" 2020. [Computer software]. https://doi.org/10.5281/zenodo.6925535
[4] Sandwell P., Winchester B., Beath H., & Nelson J. "CLOVER: A modelling framework for sustainable community-scale energy systems." Journal of Open Source Software, 8(82), 4799, 2023. https://doi.org/10.21105/joss.04799
Owner
- Name: Ben Winchester
- Login: BenWinchester
- Kind: user
- Location: United Kingdom
- Website: https://www.imperial.ac.uk/people/b.winchester20
- Twitter: benjwinchester
- Repositories: 4
- Profile: https://github.com/BenWinchester
Postgraduate Researcher at the Department of Chemical Engineering, Imperial College London
Citation (CITATION.cff)
cff-version: 1.1.0
message: "If you use this software, please cite it as below."
authors:
- family-names: Winchester
given-names: Benedict
orcid: https://orcid.org/0000-0002-2880-1243
- family-names: Nelson
given-names: Jenny
orcid: https://orcid.org/0000-0003-1048-1330
- family-names: Markides
given-names: Christos N.
orcid: 0000-0002-4219-1867
title: HEATDesalination
version: v1.0.0b2
doi: 10.5281/zenodo.7612966
date-released: 2023-03-21
GitHub Events
Total
Last Year
Committers
Last synced: almost 3 years ago
All Time
- Total Commits: 299
- Total Committers: 2
- Avg Commits per committer: 149.5
- Development Distribution Score (DDS): 0.007
Top Committers
| Name | Commits | |
|---|---|---|
| Ben Winchester | b****r@g****m | 297 |
| Winchester | b****0@i****k | 2 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 8 months ago
All Time
- Total issues: 13
- Total pull requests: 14
- Average time to close issues: 3 days
- Average time to close pull requests: about 2 hours
- Total issue authors: 1
- Total pull request authors: 1
- Average comments per issue: 0.0
- Average comments per pull request: 0.0
- Merged pull requests: 13
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- BenWinchester (13)
Pull Request Authors
- BenWinchester (16)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- pypi 12 last-month
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 2
- Total maintainers: 1
pypi.org: heat-desalination
Hybrid Electric And Thermal Desalination
- Homepage: https://github.com/BenWinchester/HEATDesalination
- Documentation: https://heat-desalination.readthedocs.io/
- License: MIT License
-
Latest release: 1.0.0a3
published almost 3 years ago
Rankings
Maintainers (1)
Dependencies
- actions/checkout v2 composite
- actions/setup-python v2 composite
- actions/checkout v2 composite
- actions/setup-python v2 composite
- actions/checkout v2 composite
- actions/setup-python v2 composite
- actions/checkout v2 composite
- actions/setup-python v2 composite
- black >=22.10
- mypy >=0.982
- pylint >=2.15.4