Commit Graph

5125 Commits

Author SHA1 Message Date
Tom Brown
c58f18667d Add non-EU28 energy demand per country and sector for today
Use the industrial production per sector and multiply with EU28
averages for energy per sector.
2020-09-07 19:12:47 +02:00
Tom Brown
783e026ebf Separate ammonia from basic chemicals in today's industry energy 2020-09-07 18:41:07 +02:00
Tom Brown
04629b5113 For DRI+EAF route for primary steel, add electricity for DRI shaft 2020-09-07 17:23:31 +02:00
Tom Brown
916aa5e0d9 Generate today's industry demand per ct and per sector
Only covers EU28 at the moment.

Uses the energy balances sheets from JRC-IDEES.
2020-09-07 16:48:06 +02:00
Tom Brown
aa3ffb9ac2 Remove biomass from chemicals, cement; increase in PPA, FBT
Remove non-existing biomass from chemicals and cement, since these
need higher temperatures than achievable with residues and waste.

Increase biomass in pulp and paper (since already used extensively
here and T < 500), and replace methane with biomass in food, beverages
and tobacco, since temperatures needed are low (T < 500).
2020-09-07 14:49:20 +02:00
Tom Brown
f3dcda9179 Include integrated steelworks in industry_sector_ratio
Also switch it from sep=";" to ","
2020-09-07 11:04:50 +02:00
Fabian
fee8ef92d4 fixup (follow up to #183) correct transmission constraint name 2020-08-28 22:28:23 +02:00
Tom Brown
f45b9a37ae Separate ammonia from other "Basic chemicals"
This allows us to control the substitution of natural gas for hydrogen
in NH3 production.

Remaining basic chemicals are olefins, BTX and chlorine.

For 2015 NH3 production, we use the USGS data source.
2020-08-28 19:13:18 +02:00
FabianHofmann
cfd815aa42
Don't remove capital cost for lines and links when setting lv, lc limit (#183)
* solve #175

* adjust wildcards explanation

* allow lv and lc limits below 1
2020-08-28 17:59:51 +02:00
Tom Brown
b761281b3d Move changes to primary/secondary routes for Al/St to new script
This was handled before in industry_sector_ratios.csv which was
confusing.

Now industry_sector_ratios.csv represents the genuine energy
consumption per tonne of material for each industrial route
(MWh/tMaterial).

An new file is created with ktMaterial/a in
industrial_production_per_country_tomorrow.csv which contains changes
to the fraction of primary/secondary routes compared to today's
production in industrial_production_per_country.csv.

This is less confusing I think.
2020-08-26 16:13:01 +02:00
Tom Brown
851142fe0f Separate script for industrial production per ct from energy demand 2020-08-26 13:12:16 +02:00
Tom Brown
37f36047ca Industry demand: Also record material production per industry 2020-08-26 12:06:01 +02:00
Fabian
e9617bca64 store cost data in resources
enable retrievement in config
2020-08-26 10:06:10 +02:00
Fabian
0b4abb4c30 revert unit adjustment for EUR/MW only 2020-08-25 21:51:29 +02:00
Fabian
2b6fb0ee66 Snakefile add rule 'retrieve_cost_data'
update cost.csv to default year 2030
add_electricity.py: adjust to new format
2020-08-25 21:41:21 +02:00
FabianHofmann
04f19f214d
fix emission prices (#171)
* fix emission prices

I'm not sure if the previous setup was intentional, but regarding that different generators might have different efficiencies and the emissions are carrier specific only, it makes more sense set net emission price.

* small fix

* update release_notes and config
2020-08-25 12:12:00 +02:00
Fabian Neumann
e2605a25dc amend release notes from GCP PR [skip travis] 2020-08-24 14:39:10 +02:00
Max Parzen
2c1626f1dd
Adding Google Cloud Platform set-up (#177)
* Adding default file

* Added GCP purpose

* Google Cloud Platform registration

* Created  VM set-up step

* Installation of Cloud SDK

* Step 5 - Extra.

* Installation of WinSCP

* Note field

* Important tips

* Update GCP-set-up-for-windows.rst

* Adding YouTube video for WinSCP

* minor corrections

* Rename rst file

* Updated index.rst

* Update text according to Fabian

* Update doc/cloudcomputing.rst

Co-authored-by: Fabian Neumann <fabian.neumann@outlook.de>
2020-08-24 14:19:23 +02:00
Fabian Neumann
e2c3b80ec4
Remove onwind-landcosts from data/costs.csv and add_electricity.py (#180) 2020-08-24 11:19:57 +02:00
FabianHofmann
1cde8d300a
Fix up add_nice_carrier_names for new pandas (#178)
* solve #174

* update release notes

Co-authored-by: Fabian Neumann <fabian.neumann@outlook.de>
2020-08-24 11:04:54 +02:00
Fabian Neumann
2f4852347a
Fix two issues with new 2020 ENTSO-E grid extract (#181)
* base: fix errors in new entsoe extract

* add release notes

* apply suggestions from code review - remove hardcode
2020-08-24 10:33:46 +02:00
Tom Brown
515416fd75 PyPSA-Eur-Sec Version 0.2.0
Please see the release notes:

https://pypsa-eur-sec.readthedocs.io/en/latest/release_notes.html#pypsa-eur-sec-0-2-0-21st-august-2020

for more information.
2020-08-21 12:34:20 +02:00
Tom Brown
18ffb38bb1 doc: release notes for Version 0.2.0 2020-08-21 12:16:15 +02:00
Tom Brown
beefb57c25 Fix plotting of maps and balances; move log/benchmark to results/ 2020-08-21 12:15:01 +02:00
Tom Brown
fa767772d6 Remove onshore wind land costs, since included in latest DEA data 2020-08-20 18:41:19 +02:00
Tom Brown
d4368a966a Replace _ with - in technology_data and prenetworks_brownfield
Preferred by kubernetes.

Also updated the documentation accordingly.
2020-08-20 18:00:27 +02:00
Tom Brown
9b2fa7c140 config.default.yaml: overnight, new config.myopic.yaml for myopic 2020-08-20 17:12:20 +02:00
Tom Brown
95e676828a Remove old data/costs.csv and dependencies on it 2020-08-20 14:26:39 +02:00
Tom Brown
3f5aa60ad2 solve_network: Refactor land use constraints for renewables 2020-08-19 20:25:04 +02:00
Tom Brown
6b40504159 add_existing_baseyears: Correct for p_nom data is thermal output
p_nom in PyPSA is capacity on the input side (from final energy),
whereas existing capacities are given on output side (i.e. heat
delivered).
2020-08-19 12:51:53 +02:00
Tom Brown
6444f7fde9 Weight offshore connection costs with aggregation weight
Rather than taking a mean of the clustered connection costs.

Apply cost update also for overnight scenarios based on planning year.

Add land costs for onshore wind.
2020-08-19 12:41:17 +02:00
martavp
35e1d4b03b fix bug when determining elec_buses 2020-08-17 12:08:49 +02:00
martavp
8fbcea1ac4 Merge branch 'master' of https://github.com/martavp/pypsa-eur-sec 2020-08-17 12:05:45 +02:00
martavp
d4be632e7a add add_land_constraint. The constraint is now imposed in a simplified way.
The p_nom for already installed capacities are substrated from the p_nom_max of extendable capacities.
2020-08-17 12:04:45 +02:00
martavp
59f2a8b09d
Update myopic.rst 2020-08-17 11:56:29 +02:00
martavp
20512754ce
Update myopic.rst 2020-08-14 12:32:00 +02:00
martavp
661804da7c add rough description of myopic code 2020-08-14 12:18:18 +02:00
martavp
6037882dbb small change in commented line 2020-08-14 11:04:35 +02:00
Tom Brown
8c196a7a21 Take care of CHPs when doing p_nom < threshold & extra_functionality
- add_brownfield.py: Have to make sure that for each CHP there is both
  a heat and electric link, but they have different p_nom for each
  CHP, so have to make sure we don't remove one without the other.

- solve_network.py: Make sure extra_functionality constraints for CHP
  power-heat feasibility graph also work for non-extendable CHPs.
2020-08-14 09:11:19 +02:00
Tom Brown
7e6c7b3dd3 Merge branch 'master' of github.com:martavp/pypsa-eur-sec into martavp-master 2020-08-12 18:10:41 +02:00
Tom Brown
663e1195e1 Add suffix -year to optimized components before solving
This simplifies the structure of add_brownfield.py dramatically.

Some other changes need to be make elsewhere because of name
changes (e.g. battery constraints in solve_network.py).
2020-08-12 18:08:01 +02:00
martavp
89a48bfad3 include existing conventional carriers in config file 2020-08-12 11:24:15 +02:00
martavp
18ff256811 Update cost for wind and solar, including the AC and DC connection costs for offshore.
In order to calculate connection costs, average values for underground_fraction and average_distance are calculated for all the buses in the initial network mapped to the clustered network.
2020-08-12 11:08:09 +02:00
Tom Brown
9012125585 Snakefile: Force configs to be copied before solving
This reinstates old behaviour for both myopic and overnight foresight
settings.

Also account for the fact that the planning_horizon is now integer in
config.yaml rather than a string.
2020-08-11 11:41:53 +02:00
Tom Brown
16b05a570d Distribute heating technologies within each country by population 2020-08-11 11:09:39 +02:00
Tom Brown
a59b2bce19 Add location attribute to each bus
E.g. "DE0 0 residential rural heat" has location "DE0 0", and "EU gas"
and "co2 atmosphere" have location "EU".
2020-08-11 11:07:55 +02:00
Tom Brown
1d6b6483e0 add_existing_baseyear: Divide p_nom by efficiency for Links
This is because the p_nom of a Link is the thermal capacity at bus0,
whereas the capacities we have are the electrical capacity at bus1.
2020-08-11 09:55:39 +02:00
martavp
e7cf956902
Merge pull request #1 from PyPSA/master
Update my fork
2020-08-11 09:00:24 +02:00
Tom Brown
658f8ad00c Distribute existing power plants to the correct nodes
Previously they were distributed only by country to the first node in
the country.

Now conventional power plants are assigned to the correct node using
the bus map from PyPSA-Eur.

Wind and solar are distributed in each country by capacity factor.

The code has been refactored and a bug was fixed whereby total
capacities of wind and solar in each country were not correct.

Now the years in the config.yaml for myopic are integers not strings.
2020-08-10 20:30:29 +02:00
Tom Brown
b57a6c18f8 Make directory for costs files configurable
Default to parallel directory for technology_data repository.
2020-07-30 08:27:33 +02:00