|
|
|
| Name | Version | Tests on pull requests | Docstring Style | Documentation Coverage |
|---|---|---|---|---|
ETHOS.GeoKit is a Python toolkit designed to efficiently handle geospatial data and spatial operations. It provides low-overhead control of fundamental geospatial operations including:
- Reading, writing, and mutating geospatial datasets
- Manipulating and translating geometries between coordinate systems
- Warping and resampling raster data
- Seamlessly integrating multiple geospatial datasets through the RegionMask object
The RegionMask object is particularly powerful, allowing seamless integration of information expressed across multiple geospatial datasets in various formats and reference systems into the context of a single region. Extensive documentation about ETHOS.GeoKit can be found at https://geokit.readthedocs.io/.
ETHOS.GeoKit is part of the ETHOS (Energy Transformation PatHway Optimization Suite). It builds upon the software GDAL (Geospatial Data Abstraction Library) and exposes its capabilities in a way that is particularly useful for programmatic, general-purpose geospatial analyses.
If you just want to use ETHOS.GeoKit, install it from Conda Forge. To download and execute all the examples or develop the source code, install it from the source. Both installations require conda or mamba, which can be used interchangeably. We recommend the Miniforge installer.
The easiest way to install ETHOS.GeoKit into a new environment is from conda-forge:
conda create -n geokit -c conda-forge geokitOr into an existing environment with:
conda install -c conda-forge geokit- Clone the repository and navigate to it:
git clone https://github.com/FZJ-IEK3-VSA/geokit.git
cd geokit- (Optional) Switch to the development branch:
git checkout dev- Create a new environment:
conda env create --file requirements-dev
conda activate geokit
pip install . --no-deps- (Alternative) Update an existing environment:
conda env update --file requirements-dev -n <ENVIRONMENT-NAME>
conda activate geokit
pip install . --no-depsThe best way to learn ETHOS.GeoKit is through hands-on examples. This documentation includes:
- Example notebooks in the
docs/Examplesfolder demonstrating real-world use cases - Detailed guides in the
docs/example_articlesfolder explaining key concepts - API documentation providing comprehensive reference information
- Source code in the
geokitfolder for advanced users
Start with the Introduction to ETHOS.GeoKit to understand the fundamentals, or jump directly to the capability area that interests you most.
ETHOS.GeoKit evolved from the Geospatial Land Eligibility for Energy Systems (GLAES) model, which is intended for rapid land eligibility analyses of renewable energy systems. However, ETHOS.GeoKit quickly emerged as a versatile, general-purpose GIS toolkit with capabilities far extending beyond computing land eligibility.
MIT License
Active developers: Christoph Winkler, Shitab Ishmam, Julian Belina, Noah Pflugradt, Heidi Heinrichs, Jochen Linßen, Detlef Stolten
Alumni: David Severin Ryberg, Martin Robinius, Stanley Risch, Julian Schönau, Rachel Maier, David Franzmann
You should have received a copy of the MIT License along with this program.
If not, see https://opensource.org/licenses/MIT
We are the Institute of Climate and Energy Systems (ICE) - Jülich Systems Analysis belonging to the Forschungszentrum Jülich. Our interdisciplinary department's research is focusing on energy-related process and systems analyses. Data searches and system simulations are used to determine energy and mass balances, as well as to evaluate performance, emissions and costs of energy systems. The results are used for performing comparative assessment studies between the various systems. Our current priorities include the development of energy strategies, in accordance with the German Federal Government’s greenhouse gas reduction targets, by designing new infrastructures for sustainable and secure energy supply chains and by conducting cost analysis studies for integrating new technologies into future energy market frameworks.
All contributions are welcome:
- If you have a question, want to report a bug, or have a feature request, please open an Issue. We will then take care of the issue as soon as possible.
- If you want to contribute with additional features or code improvements, open a Pull request.
Please respect our code of conduct.
This work was supported by the Helmholtz Association under the Joint Initiative "Energy System 2050: A Contribution of the Research Field Energy".

