Science Score: 49.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 2 DOI reference(s) in README -
✓Academic publication links
Links to: sciencedirect.com -
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (17.7%) to scientific vocabulary
Keywords
Repository
Python Urban Building Energy Modeling tool
Basic Info
- Host: GitHub
- Owner: BETALAB-team
- License: mit
- Language: Python
- Default Branch: main
- Homepage: https://research.dii.unipd.it/betalab/
- Size: 151 MB
Statistics
- Stars: 22
- Watchers: 1
- Forks: 5
- Open Issues: 0
- Releases: 2
Topics
Metadata Files
README.md
EUReCA

The Energy Urban Resistance Capacitance Approach provides an efficient and reliable Urban Building Energy Modeling platform, entirely developed in Python, aiming at simulating and predicting cities and urban areas energy consumption. The tool exploits a bottom-up modeling methodology, creating simple and useful dynamic building energy models.
This research project has been developed within the BETALAB research group of the University of Padua, Italy.
In order to access the tool's documentation, you can check out this link
Python environment set up
The tool is distributed via the GitHub repository. As first step, you must create a new conda or venv environment. You can name it eureca.
conda create -n eureca python=3.9
and activate it:
conda activate eureca
Then install the following package in the created environment, the user can type:
pip install git+https://github.com/BETALAB-team/EUReCA
This will install the latest version.
To install a specific version the user can type something like this:
pip install git+https://github.com/BETALAB-team/EUReCA@v1.0.0-beta
Preparing and run a simulation
Input files
The eureca_ubem/Input folder has some examples files to run the simulation.
To simulate cities energy consumption in EUReCA, some input files must be prepared:
- A weather_data.epw weather file. These files are available at the EnergyPlus website.
- A EnvelopeTypes.xlsx spreadsheet. It includes the thermo-physic properties of building envelopes. An example is available in the materials_and_construction_test.xlsx
- A Schedules.xlsx spreadsheet. It includes the operational schedules of occupancy, appliances, temperature, humidity setpoints, HVAC usage for different end-uses. Example in Schedules.xlsx.
- A Systems.xlsx spreadsheet. It includes data about the systems types that the user can apply. Example in Systems.xlsx.
- The config.json file, which defines the simulation parameters. Example in config.json.
- The city.geojson model. See the next section for further info on the alternatives.
The JSON city model
Currently, EUReCA can handle geojson shapefiles.
The required attributes are:
- GeoJSON:
"id": integer,
"Name": "name",
"End Use": "schedule_archetype_name",
"Envelope": "envelope_archetype_name",
"Height": float, "Nfloors": integer,
"Floors": float,
"Heating System": "heating_system_name",
"Cooling System": "cooling_system_name",
"Lower End Use": "schedule_archetype_name for ground floor", # Optional (altrenative to end use)
"Upper End Use": "schedule_archetype_name for upper floors", # Optional (altrenative to end use)
"Solar technologies": ["PV", "ST", "PV; ST"], # Optional
The strings in the city model's attribute table (End Use and Envelope) must match the labels of the End Uses and Envelope types listed in the Schedules.xlsx and EnvelopeTypes.xlsx.
Heating System and Cooling System must match one of the names given to the systems in the Systems.xlsx file, or chosen from the following items:
List of available heating systems:
- IdealLoad
- CondensingBoiler
- TraditionalBoiler
- A-W HP Staffel, Centralized, Low Temp Radiator
- A-W HP Staffel, Centralized, High Temp Radiator
- A-W HP Staffel, Centralized, Fan coil
- A-W HP Staffel, Centralized, Radiant surface
- G-W HP Staffel, Centralized, Low Temp Radiator
- G-W HP Staffel, Centralized, High Temp Radiator
- G-W HP Staffel, Centralized, Fan coil
- G-W HP Staffel, Centralized, Radiant surface
- Traditional Gas Boiler, Centralized, Low Temp Radiator
- Traditional Gas Boiler, Single, Low Temp Radiator
- Traditional Gas Boiler, Centralized, High Temp Radiator
- Traditional Gas Boiler, Single, High Temp Radiator
- Traditional Gas Boiler, Centralized, Fan coil
- Traditional Gas Boiler, Single, Fan coil
- Traditional Gas Boiler, Centralized, Radiant surface
- Traditional Gas Boiler, Single, Radiant surface
- Condensing Gas Boiler, Centralized, Low Temp Radiator
- Condensing Gas Boiler, Single, Low Temp Radiator
- Condensing Gas Boiler, Centralized, High Temp Radiator
- Condensing Gas Boiler, Single, High Temp Radiator
- Condensing Gas Boiler, Centralized, Fan coil
- Condensing Gas Boiler, Single, Fan coil
- Condensing Gas Boiler, Centralized, Radiant surface
- Condensing Gas Boiler, Single, Radiant surface
- Oil Boiler, Centralized, High Temp Radiator
- Oil Boiler, Single, High Temp Radiator
- Coal Heater, Centralized, High Temp Radiator
- Coal Heater, Single, High Temp Radiator
- District Heating, Centralized, Low Temp Radiator
- District Heating, Centralized, High Temp Radiator
- District Heating, Centralized, Fan coil
- District Heating, Centralized, Radiant surface
- Stove
- A-W Heat Pump, Centralized, Low Temp Radiator
- A-W Heat Pump, Single, Low Temp Radiator
- A-W Heat Pump, Centralized, Fan coil
- A-W Heat Pump, Single, Fan coil
- A-W Heat Pump, Centralized, Radiant surface
- A-W Heat Pump, Single, Radiant surface
- Electric Heater
List of available cooling systems: - IdealLoad - SplitAirCooler - ChillerAirtoWater - SplitAirConditioner - A-A split - A-W chiller, Centralized, Fan coil - A-W chiller, Centralized, Radiant surface - A-W chiller, Single, Fan coil - A-W chiller, Single, Radiant surface
Input folder provides some example for the city of Padua.
Simulation
After the set up of all input files, you can run the simulation throughout a python file, as following:
``` import os import time as tm
CONFIG FILE LOADING
from eurecabuilding.config import loadconfig loadconfig("pathtoyourconfig\config.json")
from eureca_ubem.city import City
SET INPUT FILES
weatherfile = os.path.join(".","pathtoyouinput","weatherfile.epw") schedulesfile = os.path.join(".","pathtoyouinput","Schedules.xlsx") materialsfile = os.path.join(".","pathtoyouinput","materialsandconstructiontest.xlsx") citymodelfile = os.path.join(".","pathtoyouinput","citymodel.geojson") systemsfile = os.path.join(".","systems.xlsx")
Creation of the City object and simulation
citygeojson = City( citymodel=citymodelfile, epwweatherfile=weatherfile, endusestypesfile=schedulesfile, envelopetypesfile=materialsfile, systemstemplatesfile=systemsfile, ) citygeojson.loadscalculation() citygeojson.simulate(printsinglebuildingresults=True, outputtype="csv") ```
Output report
If output_folder=os.path.join(".","your_output_folder") is set, outputs are printed in the output folder.
Each file is a csv or a parquet with the main output variables of each building.
How to cite EUReCA
In case you want to use EUReCA for your own research project, please cite the following paper:
@article{\ PRATAVIERA2021544,\ title = {EUReCA: An open-source urban building energy modelling tool for the efficient evaluation of cities energy demand},\ journal = {Renewable Energy},\ volume = {173},\ pages = {544-560},\ year = {2021},\ issn = {0960-1481},\ doi = {https://doi.org/10.1016/j.renene.2021.03.144}, \ url = {https://www.sciencedirect.com/science/article/pii/S0960148121005085}, \ author = {Enrico Prataviera and Pierdonato Romano and Laura Carnieletto and Francesco Pirotti and Jacopo Vivian and Angelo Zarrella},\ keywords = {Urban building energy modelling, Lumped-capacitance thermal networks, Semantic georeferenced data, EUReCA, District simulation}\ }
Owner
- Name: BETALAB
- Login: BETALAB-team
- Kind: organization
- Location: Padua, Italy
- Website: https://research.dii.unipd.it/betalab/
- Repositories: 3
- Profile: https://github.com/BETALAB-team
BETALAB Building Energy & Technology Assessment Research group Department of Industrial Engineering University of Padova
GitHub Events
Total
- Release event: 4
- Watch event: 8
- Delete event: 24
- Member event: 1
- Push event: 89
- Pull request event: 9
- Fork event: 1
- Create event: 14
Last Year
- Release event: 4
- Watch event: 8
- Delete event: 24
- Member event: 1
- Push event: 89
- Pull request event: 9
- Fork event: 1
- Create event: 14
Committers
Last synced: 7 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| pratenr82256 | e****v@g****m | 351 |
| Mohamad Hasan Khajedehi | k****n@g****m | 39 |
| GiacomoTognon | g****2@s****t | 17 |
| Mohamad Hasan Khajedehi | m****i@s****t | 14 |
| viv89 | j****n@h****m | 12 |
| Enrico Prataviera | e****a@u****t | 4 |
| Pierdonato | p****o@u****t | 4 |
| pratenr82256 | e****v@g****m | 2 |
| Prataviera Enrico | e****a@s****t | 2 |
| Vivian Jacopo | j****n@u****t | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 3
- Total pull requests: 18
- Average time to close issues: 10 months
- Average time to close pull requests: 5 days
- Total issue authors: 2
- Total pull request authors: 3
- Average comments per issue: 0.67
- Average comments per pull request: 0.22
- Merged pull requests: 17
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 2
- Pull requests: 8
- Average time to close issues: about 3 hours
- Average time to close pull requests: 7 days
- Issue authors: 1
- Pull request authors: 2
- Average comments per issue: 0.0
- Average comments per pull request: 0.25
- Merged pull requests: 8
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- enrico-prataviera (2)
- OmprakashRR (1)
Pull Request Authors
- Mohamad-k97 (14)
- enrico-prataviera (12)
- viv89 (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 2
- Total downloads: unknown
-
Total dependent packages: 0
(may contain duplicates) -
Total dependent repositories: 0
(may contain duplicates) - Total versions: 4
proxy.golang.org: github.com/BETALAB-team/EUReCA
- Documentation: https://pkg.go.dev/github.com/BETALAB-team/EUReCA#section-documentation
- License: mit
-
Latest release: v1.0.1-beta
published 7 months ago
Rankings
proxy.golang.org: github.com/betalab-team/eureca
- Documentation: https://pkg.go.dev/github.com/betalab-team/eureca#section-documentation
- License: mit
-
Latest release: v1.0.1-beta
published 7 months ago
Rankings
Dependencies
- sphinx ==6.2.1
- sphinx- *
- sphinx_mdinclude ==0.5.3
- sphinx_rtd_theme ==1.2.2
- Babel ==2.12.1
- Fiona ==1.9.4.post1
- Jinja2 ==3.1.2
- MarkupSafe ==2.1.3
- Pillow ==9.5.0
- Pygments ==2.15.1
- Sphinx ==6.2.1
- alabaster ==0.7.13
- attrs ==23.1.0
- certifi ==2023.5.7
- charset-normalizer ==3.1.0
- cjio ==0.8.1
- click ==8.1.3
- click-plugins ==1.1.1
- cligj ==0.7.2
- colorama ==0.4.6
- contourpy ==1.1.0
- cycler ==0.11.0
- docutils ==0.18.1
- et-xmlfile ==1.1.0
- exceptiongroup ==1.1.1
- fonttools ==4.40.0
- geopandas ==0.13.2
- h5py ==3.9.0
- idna ==3.4
- imagesize ==1.4.1
- importlib-metadata ==6.7.0
- importlib-resources ==5.12.0
- iniconfig ==2.0.0
- kiwisolver ==1.4.4
- livereload ==2.6.3
- matplotlib ==3.7.1
- mistune ==2.0.5
- numpy ==1.25.0
- openpyxl ==3.1.2
- packaging ==23.1
- pandas ==2.0.2
- pluggy ==1.2.0
- pvlib ==0.9.5
- pyclipper ==1.3.0.post4
- pyparsing ==3.1.0
- pyproj ==3.6.0
- pytest ==7.4.0
- python-dateutil ==2.8.2
- pytz ==2023.3
- requests ==2.31.0
- scipy ==1.11.0
- shapely ==2.0.1
- six ==1.16.0
- snowballstemmer ==2.2.0
- sphinx-autobuild ==2021.3.14
- sphinx-rtd-theme ==1.2.2
- sphinx_mdinclude ==0.5.3
- sphinxcontrib-applehelp ==1.0.4
- sphinxcontrib-devhelp ==1.0.2
- sphinxcontrib-htmlhelp ==2.0.1
- sphinxcontrib-jquery ==4.1
- sphinxcontrib-jsmath ==1.0.1
- sphinxcontrib-qthelp ==1.0.3
- sphinxcontrib-serializinghtml ==1.1.5
- tomli ==2.0.1
- tornado ==6.3.2
- tzdata ==2023.3
- urllib3 ==2.0.3
- xlrd ==2.0.1
- zipp ==3.15.0
- cjio *
- geopandas *
- numpy *
- openpyxl *
- pandas *
- pvlib *
- pyarrow *
- pyclipper *
- pyogrio *
- scipy *
- shapely *
- xlrd *