Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dev #10

Open
wants to merge 2,854 commits into
base: main
Choose a base branch
from
Open

Dev #10

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
2854 commits
Select commit Hold shift + click to select a range
875fcdd
address geopandas future warning
fneum May 16, 2023
7d4dacf
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] May 16, 2023
dabce64
Merge pull request #667 from PyPSA/pre-commit-ci-update-config
fneum May 16, 2023
7fad9e2
Update supply_demand.rst
lilanger May 16, 2023
2b62c01
Merge pull request #669 from lilanger/patch-1
fneum May 16, 2023
8d6d661
Update support.rst
pz-max May 16, 2023
c1bc7c0
Merge pull request #670 from PyPSA/pz-max-patch-1
pz-max May 16, 2023
859e32f
Merge pull request #668 from PyPSA/0523-deprecations
fneum May 17, 2023
d2f6138
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] May 22, 2023
0f09545
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] May 22, 2023
0c95b5a
Merge pull request #671 from PyPSA/pre-commit-ci-update-config
fneum May 23, 2023
312dd81
Fix bug with underground H2 storage creation
koen-vg May 24, 2023
015a6a1
Merge pull request #672 from koen-vg/fix-h2-underground-storage
fneum May 24, 2023
dc043d8
Update Discord link README.md
LucieRC May 24, 2023
80eadcf
Merge pull request #674 from LucieRC/master
pz-max May 25, 2023
702563d
merged upstream into pypsa-eur
LukasFrankenQ Jun 1, 2023
fa298f9
now allows choosing country to be focussed
LukasFrankenQ Jun 2, 2023
ca3b9cd
added gb plotting scripts to workflow
LukasFrankenQ Jun 6, 2023
6bdca21
merged into upstream master
LukasFrankenQ Jun 6, 2023
3eaebd3
added desired shapefiles to default data
LukasFrankenQ Jun 7, 2023
ca3c81d
added custom busmaps to default data
LukasFrankenQ Jun 7, 2023
29e38d1
added gb_regions to wildcards, prelim solution for regions
LukasFrankenQ Jun 8, 2023
efc2425
removed redundant backup in rules
LukasFrankenQ Jun 8, 2023
75d8d29
fixed memory allocation based on zonal choice
LukasFrankenQ Jun 8, 2023
f1bc381
added base versus turndown model foundation
LukasFrankenQ Jun 11, 2023
bf026ac
added config file
LukasFrankenQ Jun 13, 2023
cd4dcc6
added data from turndown events
LukasFrankenQ Jun 13, 2023
8454d04
adapted year
LukasFrankenQ Jun 13, 2023
3485b12
corrected imports in build_electricity
LukasFrankenQ Jun 13, 2023
d681263
added eso, dno busmaps
LukasFrankenQ Jun 13, 2023
b2cd8cb
added countries back in config.yaml
LukasFrankenQ Jun 13, 2023
c230646
changed weather year to 2022
LukasFrankenQ Jun 13, 2023
ae2928f
changed cutout retrieval to false
LukasFrankenQ Jun 13, 2023
30f4353
updated config
LukasFrankenQ Jun 14, 2023
a8b3579
adjusted cutout size
LukasFrankenQ Jun 15, 2023
56f0020
ignoring files in notebooks/
LukasFrankenQ Jun 15, 2023
51aad08
split load into default_load.csv and load.csv
LukasFrankenQ Jun 17, 2023
bb8331d
added partial aggregation of generators
LukasFrankenQ Jun 19, 2023
82c46a3
cleanup after coding
LukasFrankenQ Jun 19, 2023
caa15df
added mainland europe co2 and fuel prices
LukasFrankenQ Jun 20, 2023
84c60c3
added data on historic exchange rates pound to euro
LukasFrankenQ Jun 20, 2023
42a32ac
added script to extract monthly fuel prices
LukasFrankenQ Jun 21, 2023
10a5739
added fuel and co2 prices to network
LukasFrankenQ Jun 21, 2023
e4742e3
started adding validation plotting tools
LukasFrankenQ Jun 22, 2023
600572e
added plotting for validation and saving sessions
LukasFrankenQ Jun 25, 2023
e007769
refined plotting adjusting demand
LukasFrankenQ Jun 26, 2023
836bf04
added script to extract FES data
LukasFrankenQ Jun 28, 2023
a02427a
cleaned gb demand creation script
LukasFrankenQ Jun 30, 2023
b9b8f6a
added infrastructure for capacity constraint per country
LukasFrankenQ Jun 30, 2023
158162b
removed config from gitignore and added config
LukasFrankenQ Jun 30, 2023
d688a91
added FES scenario selection
LukasFrankenQ Jun 30, 2023
14b0ee7
now allows constraint over multiple carriers
LukasFrankenQ Jul 3, 2023
f2e59db
added choice of fes to workflow
LukasFrankenQ Jul 4, 2023
cfcb354
fixed bugs in fes scripts
LukasFrankenQ Jul 4, 2023
bf43469
fixed bugs in building fes constraints
LukasFrankenQ Jul 5, 2023
fa903c8
removed redundant print from common
LukasFrankenQ Jul 5, 2023
2df47ac
added heat pump load to electricity
LukasFrankenQ Jul 6, 2023
e663999
added methods to fix total generation capacity in GB
LukasFrankenQ Jul 7, 2023
76256e0
added p_nom fixes for solar, wind, nuclear
LukasFrankenQ Jul 8, 2023
02942bb
adapted map plotting script to our workflow
LukasFrankenQ Jul 10, 2023
6d1b505
intermediate changes towards ev inclusion
LukasFrankenQ Jul 10, 2023
161f168
moved method to get fes data to dedicated script
LukasFrankenQ Jul 10, 2023
08fd707
added electric vehicles battery infrastructure
LukasFrankenQ Jul 11, 2023
5ae0ec2
intermediate changes to dac and beccs inclusion
LukasFrankenQ Jul 12, 2023
238439e
towards including ccs generation and dac into model
LukasFrankenQ Jul 14, 2023
35b0eea
added co2 control through adding conventionals as links
LukasFrankenQ Jul 17, 2023
b51219e
added automatic scaling of p_nom of conventional generators
LukasFrankenQ Jul 17, 2023
5979265
towards dac
LukasFrankenQ Jul 18, 2023
c7e6773
bug fixes around going from generators to links
LukasFrankenQ Jul 19, 2023
ee2a364
added dac, fixing bugs
LukasFrankenQ Jul 19, 2023
05a5399
bug fixes, towards autmoated summaries
LukasFrankenQ Jul 20, 2023
8567e7c
added pipeline to plot capacities
LukasFrankenQ Jul 21, 2023
b59ad46
added timeseries plotting
LukasFrankenQ Jul 22, 2023
03ebdcb
completed timeseries plotting script
LukasFrankenQ Jul 23, 2023
fe19ec1
small cleanup
LukasFrankenQ Jul 24, 2023
3d59f39
polished emission plotting
LukasFrankenQ Jul 24, 2023
7ea669f
added gas CCS generation
LukasFrankenQ Jul 24, 2023
267949d
added nuclear generation
LukasFrankenQ Jul 25, 2023
f59b467
added biogas to system
LukasFrankenQ Jul 25, 2023
1d7319f
added co2 barplot
LukasFrankenQ Jul 26, 2023
1e599aa
towards full carbon management
LukasFrankenQ Jul 26, 2023
2afbba9
added heat demand to dac, changed wildcard names
LukasFrankenQ Jul 27, 2023
f98ae61
added regular demand flex
LukasFrankenQ Jul 27, 2023
9aabf0a
bugfix in regular flex
LukasFrankenQ Jul 28, 2023
6d8bd66
added winter events
LukasFrankenQ Jul 28, 2023
ad3e77a
minor cleanup
LukasFrankenQ Jul 29, 2023
0a47e1f
updated FES workbook, added grid level batteries
LukasFrankenQ Jul 31, 2023
a270bec
various fixes
LukasFrankenQ Jul 31, 2023
210d520
fixed wilcard constraints for flexopts
LukasFrankenQ Aug 1, 2023
8623e57
added total generation script for GB, bugfixes
LukasFrankenQ Aug 1, 2023
af54688
focused area of data extraction to event time
LukasFrankenQ Aug 2, 2023
620f22f
towards feasible LW > 2040
LukasFrankenQ Aug 2, 2023
796e578
fixed issue in p_nom_max, made switch for bev
LukasFrankenQ Aug 3, 2023
e72703b
added heating flex; cleanup outstanding
LukasFrankenQ Aug 3, 2023
cfeb7d6
bug fix in heat pump load, added standing loss
LukasFrankenQ Aug 4, 2023
4b47cab
fixed bug causing coal not to phase out
LukasFrankenQ Aug 4, 2023
2295d10
added interconnector constraints and import/export balance
LukasFrankenQ Aug 4, 2023
0ebb440
bug fix in interconnectors, added timeseries output
LukasFrankenQ Aug 4, 2023
8e0382f
fixed bug that prevented v2g to be included
LukasFrankenQ Aug 4, 2023
dfc41bf
included heat demand in data postprocessing
LukasFrankenQ Aug 5, 2023
aa46a3b
added new compiling script
LukasFrankenQ Aug 5, 2023
686dda9
adjusted config to current runs
LukasFrankenQ Aug 6, 2023
0479875
changed max number threads of solve_network
LukasFrankenQ Aug 7, 2023
3f0f380
fixed bug in gas & nuclear generation capacity
LukasFrankenQ Aug 8, 2023
3af136c
started splitting bev into intelligent charging and v2g
LukasFrankenQ Aug 8, 2023
67bd8de
towards heat-like data pipeline for bev
LukasFrankenQ Aug 8, 2023
0702df6
corrected v2g timeseries
LukasFrankenQ Aug 9, 2023
1d158d8
added balance check in and outflow
LukasFrankenQ Aug 9, 2023
38d77fc
integrated change in industrial and commercial demand
LukasFrankenQ Aug 9, 2023
937a04d
refactored scripts and added timeseries plotting wildcard
LukasFrankenQ Aug 10, 2023
a1dbea8
added generalized method to get subsection of snapshots
LukasFrankenQ Aug 11, 2023
4bc19ea
fixed bug in weekly plotting
LukasFrankenQ Aug 13, 2023
b12e807
now can model autarky, bugfix in heat flex
LukasFrankenQ Aug 14, 2023
eea64fd
bugfixing
Aug 15, 2023
09081dd
towards 100 percent renewable scenario
Aug 15, 2023
babab3f
towards 100 percent renewable scenario runs
LukasFrankenQ Aug 16, 2023
de6235d
fixed plotting script
LukasFrankenQ Aug 20, 2023
141c5d7
cleanup
LukasFrankenQ Aug 21, 2023
32fc67c
switched on dac
LukasFrankenQ Aug 22, 2023
e860e63
minor cleanup
LukasFrankenQ Aug 23, 2023
9aef115
added dedicated script to make timeseries
LukasFrankenQ Aug 24, 2023
fbc5ebd
monthly plot of timeseries now shows just two weeks
LukasFrankenQ Aug 24, 2023
5b11a43
towards more elaborate timeseries plotting
LukasFrankenQ Aug 24, 2023
7b6188a
improved timeseries plotting
LukasFrankenQ Aug 25, 2023
e0bc13d
improved timeseries plotting
LukasFrankenQ Aug 26, 2023
a4169ca
adjusted config
LukasFrankenQ Aug 27, 2023
5ce93d4
minor cleanup
LukasFrankenQ Aug 29, 2023
f1096c0
added fes image to readme
LukasFrankenQ Aug 30, 2023
3beac8d
adjustments in event flexibility
LukasFrankenQ Aug 31, 2023
4476e8e
changed default config
LukasFrankenQ Sep 1, 2023
7f7318a
changed purge message
LukasFrankenQ Sep 8, 2023
99002ae
removed redundant imports
LukasFrankenQ Sep 10, 2023
a123590
added code for gas shortage experiments
LukasFrankenQ Sep 12, 2023
c2b2e6b
ensures flex is more expensive than vrg
Sep 12, 2023
81ce09d
minor correction
LukasFrankenQ Sep 18, 2023
7664497
minor cleanup in config
LukasFrankenQ Sep 20, 2023
60b8ed3
beautified plotting
LukasFrankenQ Sep 21, 2023
d2fc1c5
minor cleanup
LukasFrankenQ Sep 25, 2023
967aff4
harmonized config.yaml and config.default.yaml
LukasFrankenQ Sep 26, 2023
e94c691
added FES workbooks
LukasFrankenQ Sep 26, 2023
442fdf2
removed gb_regions wildcard
LukasFrankenQ Sep 26, 2023
3fe321f
removed redundant script
LukasFrankenQ Sep 26, 2023
a23accf
removed gb_regions from make_summary
LukasFrankenQ Sep 26, 2023
0f1a1e7
removed gb_regions, migrated rules to build_electricity
LukasFrankenQ Sep 26, 2023
5edefad
added pypsa_fes flowchart
LukasFrankenQ Sep 26, 2023
354a0bd
started README overhaul
LukasFrankenQ Sep 26, 2023
895c9de
finished version 1.0 of readme
LukasFrankenQ Sep 26, 2023
0be52e7
improved README
LukasFrankenQ Sep 27, 2023
73c28ad
minor cleanup, GB demand data now again taken from 2013 ENTSO-E
LukasFrankenQ Sep 27, 2023
b926b9e
fixed an issue with nan biomass plants in DE
LukasFrankenQ Sep 27, 2023
12191e1
changed snapshots to 2013, towards removal of monthly fuel prices
LukasFrankenQ Sep 27, 2023
2a914ba
updated clustering, started cleaning doc
LukasFrankenQ Sep 28, 2023
3031f23
removed redundant helper script
LukasFrankenQ Sep 28, 2023
0cc1cb1
towards correcting regions
LukasFrankenQ Sep 28, 2023
2666cd5
reinstantiated (fixed) wildcard eso
LukasFrankenQ Sep 29, 2023
715fc4e
minor fix
LukasFrankenQ Sep 29, 2023
5eaca52
fixed clustering
LukasFrankenQ Sep 29, 2023
43a6164
fixed typo in build_electricity
LukasFrankenQ Sep 29, 2023
8887db6
removed redundant print
LukasFrankenQ Sep 29, 2023
e08d99e
towards fixed clustering
LukasFrankenQ Sep 29, 2023
96da4d7
started reworking docs
LukasFrankenQ Sep 29, 2023
6149e6b
small fix
LukasFrankenQ Sep 30, 2023
456bef7
fixed bug with passing storage max_hours
LukasFrankenQ Oct 1, 2023
819d92f
fixed add_extrac_components
LukasFrankenQ Oct 1, 2023
2784e92
fixed prepare_netowrk
LukasFrankenQ Oct 1, 2023
0fa7e8b
fixed bugs in prepare and solve network
LukasFrankenQ Oct 1, 2023
e523fb1
re-added doc requirements
LukasFrankenQ Oct 1, 2023
4818c5a
removed system requirements from readthedocs config
LukasFrankenQ Oct 1, 2023
0dca601
adapted docs to pypsa-fes
LukasFrankenQ Oct 1, 2023
3e0437d
polished doc, fixed typos
LukasFrankenQ Oct 2, 2023
302a516
fixed image import in doc
LukasFrankenQ Oct 2, 2023
f2d388d
fixed image import
LukasFrankenQ Oct 2, 2023
0c897fe
added our own model doc
LukasFrankenQ Oct 4, 2023
7263bbc
updated fixed environment
LukasFrankenQ Oct 4, 2023
55270aa
adjusted config
LukasFrankenQ Oct 4, 2023
040df5d
updated installation
LukasFrankenQ Oct 4, 2023
aea7f35
fixed typos in installation
LukasFrankenQ Oct 4, 2023
5934a8b
made adapting config to highs/gurobi use easier
LukasFrankenQ Oct 5, 2023
806d908
added safety mechanism to rule purge
LukasFrankenQ Oct 5, 2023
d468ef1
added import export balance based on FES
LukasFrankenQ Oct 5, 2023
9d4afbb
added warning about lack of testing
LukasFrankenQ Oct 5, 2023
4e35ac4
added warning to hard coded 2030 costs
LukasFrankenQ Oct 6, 2023
f83c6d6
fixed bug in import export balance
LukasFrankenQ Oct 7, 2023
eedff7b
towards basing network bus labelling on global variable
LukasFrankenQ Oct 7, 2023
8157851
removed development tools
LukasFrankenQ Oct 7, 2023
a134a10
included carbon tracking in new nodes
LukasFrankenQ Oct 7, 2023
d5060a5
unified bus assignment
LukasFrankenQ Oct 8, 2023
c30d37b
towards inclusion of ESPENI dataset
LukasFrankenQ Oct 10, 2023
23e44df
inluded espeni dataset for demand
LukasFrankenQ Oct 11, 2023
cb25cd7
made 2019 default year
LukasFrankenQ Oct 11, 2023
956ac71
downcorrected hydropowerplant capacities that were based on faulty data
LukasFrankenQ Oct 14, 2023
28df046
fixed typos in bevs
LukasFrankenQ Oct 15, 2023
77583cb
added distribution grid
LukasFrankenQ Oct 15, 2023
61fb640
typo fixes
LukasFrankenQ Oct 15, 2023
ac9ef9b
towards adding interconnection based on year
LukasFrankenQ Oct 19, 2023
ae5f099
added dynamic adding of interconnectors
LukasFrankenQ Oct 19, 2023
d3387a1
ensured propper function of interconnections
LukasFrankenQ Oct 20, 2023
ae2d90d
added distributed solar generation
LukasFrankenQ Oct 20, 2023
5053c4e
added rooftop solar
LukasFrankenQ Oct 20, 2023
4a2c156
added timestamped and geolocated interconnectors
LukasFrankenQ Oct 20, 2023
d4cb04e
added hydrogen demand
LukasFrankenQ Oct 20, 2023
7fa9b26
added logger on how much hydrogen should be produced
LukasFrankenQ Oct 20, 2023
314f7f7
towards inclusion of morocco
LukasFrankenQ Oct 21, 2023
0d51a39
added morocco shape
LukasFrankenQ Oct 21, 2023
9036a48
fixed bugs in morocco profiles
LukasFrankenQ Oct 21, 2023
0d76962
minor cleanup
LukasFrankenQ Oct 21, 2023
dbff1a3
updated model flowchart
LukasFrankenQ Nov 8, 2023
57c6aaf
added flexopts check
LukasFrankenQ Nov 8, 2023
2900b13
towards inclusion of octopus-go type tariff
LukasFrankenQ Nov 9, 2023
c95d5d4
add go and intelligent bev charging tariff
LukasFrankenQ Nov 9, 2023
f4f0074
minor cleanup of empty spaces
LukasFrankenQ Nov 9, 2023
44a8371
removed redundant print statements
LukasFrankenQ Nov 9, 2023
0ecf564
removed wrong non-unity efficiency from battery to car links
LukasFrankenQ Nov 9, 2023
193d972
added simple version of hot water tank flex
LukasFrankenQ Nov 10, 2023
2850636
added buffer to CO2 target
LukasFrankenQ Nov 16, 2023
b07fd4d
cleanup in root
LukasFrankenQ Nov 17, 2023
6f71e16
removed docker files, added sync-send
LukasFrankenQ Nov 17, 2023
2993cbe
fixed infeasibility bus due to interconns
LukasFrankenQ Nov 17, 2023
b0fd444
added modular nuclear
LukasFrankenQ Nov 17, 2023
eda70d1
updated config
LukasFrankenQ Nov 18, 2023
e6096b4
added method to draw generation timeseries from ESPENI data
LukasFrankenQ Nov 18, 2023
f05eea4
added beis generation data
LukasFrankenQ Nov 18, 2023
f6fc7f5
expanded use of snakemake.params
LukasFrankenQ Nov 18, 2023
2c08797
towards validation
LukasFrankenQ Nov 19, 2023
0e84e53
fixed removal of import export tracker
LukasFrankenQ Nov 25, 2023
ac1b3a6
added ESPENI and DUKES dataset
LukasFrankenQ Nov 25, 2023
a933ea6
updated fes constraints
LukasFrankenQ Nov 25, 2023
4b722df
adjusted to cluster
LukasFrankenQ Nov 26, 2023
66b4d84
setup cluster runs
LukasFrankenQ Nov 26, 2023
8135fa0
added flexibility metric to make_summary
LukasFrankenQ Nov 27, 2023
c3d0156
temporary bug fix to make_summary
LukasFrankenQ Nov 27, 2023
8322b22
small fix to make_summary, improved doc in config
LukasFrankenQ Nov 28, 2023
b11d769
fixed bug in summary script
LukasFrankenQ Nov 29, 2023
5599a55
removed redundant files about saving sessions
LukasFrankenQ Nov 30, 2023
b23aa03
added halloran et al data
LukasFrankenQ Dec 4, 2023
f817f88
adding heat pump demand profiles from Halloran et al
LukasFrankenQ Dec 5, 2023
bfbf80d
added method to get heating tech mix
LukasFrankenQ Dec 5, 2023
ca96a8d
towards splitting heat demand
LukasFrankenQ Dec 5, 2023
d589f2b
fully included halloran et al 2023, cleanup heat, bev args
LukasFrankenQ Dec 7, 2023
f4f9372
fixed type problem in summary
LukasFrankenQ Dec 8, 2023
9c112eb
added saving sessions as a default run
LukasFrankenQ Dec 9, 2023
e484ca3
fixed wiring of electric heating
LukasFrankenQ Dec 12, 2023
ad1eba5
added transmission capacity times length to summary metrics
LukasFrankenQ Dec 12, 2023
03f94d6
dispatchable generation efficiency now expressed as electric cap
LukasFrankenQ Dec 14, 2023
13be527
added doc which fes table is used in script
LukasFrankenQ Dec 28, 2023
75bb593
electrolyser capacity, v2g share now from FES 2023
LukasFrankenQ Dec 28, 2023
2a3c725
integrated share of heating with smart tariff
LukasFrankenQ Dec 28, 2023
7da3051
transmission expansion limit now only refers to GB
LukasFrankenQ Dec 31, 2023
e624861
added hnd and historic gb transmission investment
LukasFrankenQ Dec 31, 2023
819767c
chnaged ll wildcard to binary HND or historic
LukasFrankenQ Dec 31, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .dockerignore

This file was deleted.

1 change: 0 additions & 1 deletion .env.template

This file was deleted.

5 changes: 0 additions & 5 deletions .flake8

This file was deleted.

8 changes: 8 additions & 0 deletions .git-blame-ignore-revs
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# SPDX-FileCopyrightText: : 2022 The PyPSA-Eur Authors
#
# SPDX-License-Identifier: CC0-1.0

# Exclude pre-commit applications
5d1ef8a64055a039aa4a0834d2d26fe7752fe9a0
92080b1cd2ca5f123158571481722767b99c2b27
13769f90af4500948b0376d57df4cceaa13e78b5
6 changes: 6 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# SPDX-FileCopyrightText: : 2017-2023 The PyPSA-Eur Authors
#
# SPDX-License-Identifier: CC0-1.0

*.h5 filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
27 changes: 27 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
---
name: Bug report
about: Create a report if something doesn't work quite right.
title: ''
labels: bug
assignees: ''
---

<!-- Please do not post usage questions here. Ask them on the PyPSA mailing list: https://groups.google.com/forum/#!forum/pypsa -->

## Checklist

- [ ] I am using the current [`master`](https://github.com/PyPSA/pypsa-eur/tree/master) branch or the latest [release](https://github.com/PyPSA/pypsa-eur/releases). Please indicate.
- [ ] I am running on an up-to-date [`pypsa-eur` environment](https://github.com/PyPSA/pypsa-eur/blob/master/envs/environment.yaml). Update via `conda env update -f envs/environment.yaml`.

## Describe the Bug

*Please provide a description of what the bug is and add a minimal example/command for reproducing the bug.*

## Error Message

*If applicable, paste any terminal output to help illustrating your problem.*
*In some cases it may also be useful to share your list of installed packages: `conda list`.*

```
<paste here>
```
8 changes: 8 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
blank_issues_enabled: false
contact_links:
- name: PyPSA Mailing List
url: https://groups.google.com/forum/#!forum/pypsa
about: Please ask and answer general usage questions here.
- name: Stackoverflow
url: https://stackoverflow.com/questions/tagged/pypsa
about: Please ask and answer code-related questions here.
15 changes: 15 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: enhancement
assignees: ''

---

<!-- Please do not post usage questions here. Ask them on the PyPSA mailing list: https://groups.google.com/forum/#!forum/pypsa -->

## Describe the feature you'd like to see

*Please give a clear and concise description and provide context why the feature would be useful.*
*Also, we'd appreciate any implementation ideas and references you already have.*
13 changes: 13 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
Closes # (if applicable).

## Changes proposed in this Pull Request


## Checklist

- [ ] I tested my contribution locally and it seems to work fine.
- [ ] Code and workflow changes are sufficiently documented.
- [ ] Changed dependencies are added to `envs/environment.yaml`.
- [ ] Changes in configuration options are added in all of `config.default.yaml`.
- [ ] Changes in configuration options are also documented in `doc/configtables/*.csv`.
- [ ] A release note `doc/release_notes.rst` is added.
118 changes: 118 additions & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
# SPDX-FileCopyrightText: : 2021-2023 The PyPSA-Eur Authors
#
# SPDX-License-Identifier: CC0-1.0

name: CI

# Caching method based on and described by:
# epassaro (2021): https://dev.to/epassaro/caching-anaconda-environments-in-github-actions-5hde
# and code in GitHub repo: https://github.com/epassaro/cache-conda-envs

on:
push:
branches:
- master
pull_request:
branches:
- master
schedule:
- cron: "0 5 * * TUE"

env:
CONDA_CACHE_NUMBER: 1 # Change this value to manually reset the environment cache
DATA_CACHE_NUMBER: 2

jobs:
build:

strategy:
fail-fast: false
matrix:
include:
# Matrix required to handle caching with Mambaforge
- os: ubuntu-latest
label: ubuntu-latest
prefix: /usr/share/miniconda3/envs/pypsa-eur

- os: macos-latest
label: macos-latest
prefix: /Users/runner/miniconda3/envs/pypsa-eur

- os: windows-latest
label: windows-latest
prefix: C:\Miniconda3\envs\pypsa-eur

name: ${{ matrix.label }}

runs-on: ${{ matrix.os }}

defaults:
run:
shell: bash -l {0}

steps:
- uses: actions/checkout@v3

- name: Setup secrets
run: |
echo -ne "url: ${CDSAPI_URL}\nkey: ${CDSAPI_TOKEN}\n" > ~/.cdsapirc

- name: Add solver to environment
run: |
echo -e "- glpk\n- ipopt<3.13.3" >> envs/environment.yaml
if: ${{ matrix.label }} == 'windows-latest'

- name: Add solver to environment
run: |
echo -e "- glpk\n- ipopt" >> envs/environment.yaml
if: ${{ matrix.label }} != 'windows-latest'

- name: Setup Mambaforge
uses: conda-incubator/setup-miniconda@v2
with:
miniforge-variant: Mambaforge
miniforge-version: latest
activate-environment: pypsa-eur
use-mamba: true

- name: Set cache dates
run: |
echo "DATE=$(date +'%Y%m%d')" >> $GITHUB_ENV
echo "WEEK=$(date +'%Y%U')" >> $GITHUB_ENV

- name: Cache data and cutouts folders
uses: actions/cache@v3
with:
path: |
data
cutouts
key: data-cutouts-${{ env.WEEK }}-${{ env.DATA_CACHE_NUMBER }}

- name: Create environment cache
uses: actions/cache@v3
id: cache
with:
path: ${{ matrix.prefix }}
key: ${{ matrix.label }}-conda-${{ env.DATE }}-${{ env.CONDA_CACHE_NUMBER }}

- name: Update environment due to outdated or unavailable cache
run: mamba env update -n pypsa-eur -f envs/environment.yaml
if: steps.cache.outputs.cache-hit != 'true'

- name: Test snakemake workflow
run: |
conda activate pypsa-eur
conda list
snakemake -call solve_elec_networks --configfile config/test/config.electricity.yaml --rerun-triggers=mtime
snakemake -call all --configfile config/test/config.overnight.yaml --rerun-triggers=mtime
snakemake -call all --configfile config/test/config.myopic.yaml --rerun-triggers=mtime

- name: Upload artifacts
uses: actions/upload-artifact@v3
with:
name: resources-results
path: |
resources
results
if-no-files-found: warn
retention-days: 1
80 changes: 80 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,83 @@
# SPDX-FileCopyrightText: : 2017-2023 The PyPSA-Eur Authors
#
# SPDX-License-Identifier: CC0-1.0

.snakemake*
.ipynb_checkpoints
__pycache__
*dconf
gurobi.log
.vscode

/bak
/resources
/resources*
/results
/networks
/benchmarks
/logs
/notebooks
/data
/cluster_runs
/cutouts

doc/_build

config.yaml

dconf
/data/links_p_nom.csv
/data/*totals.csv
/data/biomass*
/data/emobility/
/data/eea*
/data/jrc*
/data/heating/
/data/eurostat*
/data/odyssee/
/data/transport_data.csv
/data/switzerland*
/data/.nfs*
/data/Industrial_Database.csv
/data/retro/tabula-calculator-calcsetbuilding.csv
/data/nuts*
data/gas_network/scigrid-gas/
data/costs_*.csv

dask-worker-space/
publications.jrc.ec.europa.eu/

*.org

*.nc

*~
/scripts/old

*.pyc
/cutouts
/tmp
/pypsa
/notebooks

*.xlsx

doc/_build

*.xls

*.geojson

*.ipynb

data/costs_*

merger-todos.md

entsoe_api_key.txt

# .gitignore from github.com/centrefornetzero

.vscode
**/.DS_Store

Expand Down
Loading
Loading