Structure of the repository#

This repository has the following structure:

  • inputs: input data in format .csv or .xlsx

  • outputs: technology data saved as costs_{year}.csv format for defined years. In the output costs_{year}.csv are specified

    • technology (e.g. ‘onwind’)

    • parameter (e.g. FOM)

    • value (e.g. 1.18)

    • unit (e.g. %/year)

    • source (e.g. DEA, excel_file_name.xlsx)

    • further description (specific assumptions, sheet name if data from a multi-sheet Excel file)

  • conifg:

    years : [2020, 2025, 2030, 2035, 2040, 2045, 2050]
    
    expectation : "" # tech data uncertainty, possible options [None, "optimist", "pessimist"]
    
    rate_inflation : 0.02
    
    #year for EUR outputs
    #NB: 2015 is standard year in DEA, and DEA is NOT yet adjusted
    #if this is changed, only non-DEA
    # DEA takes for solar PV eur_year 2020!
    eur_year : 2015
    
    # add solar from different source
    solar_utility_from_vartiaien : false
    solar_rooftop_from_etip : false
    
    energy_storage_database:
        h2_from_budischak: false  # add fuel cell/electrolysis efficiencies from Budischak (DEA assumptions very conservative)
        ewg_home_battery: true  # add home battery data derived from DEA data and EWG study
        pnnl_energy_storage:
            add_data: true  # add storage data mainly from PNNL
    

the following parameters can be set in the config.yaml

  • years : numpy array of all the years of which an output costs csv should be created

  • rate_inflation : inflation rate (currently: rate_inflation=0.02)

  • solar_utility_from_vartiaien : Bool (True/False) if solar utility data is taken from DEA or Vartiaien

  • solar_rooftop_from_etip : Bool (True/False) if solar rooftop data is taken from DEA or ETIP

  • h2_from_budischak : Bool (True/False) if fuel cell and electrolyzer efficiencies are taken from DEA or Budischak

  • offwind_no_gridcosts : Bool (True/False) if offshore wind grid connection costs should be removed (they are calculated seperately in PyPSA-Eur)

  • scripts :

    • compile_cost_assumptions.py converts input data from multiple sources to cost_{year}.csv for chosen year. Interpolates data for missing years or calculates the costs at a certain year based on the inflation rate. Technology data from the Danish Energy Agency are preferred. If data are missing from all sources, these are taken from the old PyPSA cost assumptions (with a printed warning).

    • convert_pdf_fraunhofer_to_dataframe.py converts table from Fraunhofer ISE report in pdf to csv format for input data. Script can be modified to convert other .pdf sources to .csv format

    • retrieve_data_from_dea.py downloads up-to-date technology data from DEA website and saves it in the input folder. Optional, also retrieves the documentation of the data into the folder docu

  • docu: reports, paper, additional information about the input data, format .pdf

  • latex_tables: .tex files with tables of the cost.csv and two python scripts

    • tables_in_latex.py to create .tex files with nice names

    • tables_in_csv.py to create csv files with nice name (which can be used in latex with csv autotabular)

The data licences and sources are given in the following table.

description

file/folder/function in script

licence

source

Danish Energy Agency Technology Database, most technologies

technology_data*.xlsx, energy_transport_data_sheet_dec_2017.xlsx

https://ens.dk/en/our-services/projections-and-models/technology-data

Vartiaien et. al., utility-scale solar PV

function in script

https://onlinelibrary.wiley.com/doi/full/10.1002/pip.3189

Fraunhofer ISE Studie, gas pipeline costs

Fraunhofer_ISE_*.csv

https://www.ise.fraunhofer.de/de/veroeffentlichungen/studien/wege-zu-einem-klimaneutralen-energiesystem.html

Older data collected by the PyPSA team from a variety of sources

costs_PyPSA.csv

The European Technology and Innovation Platform for Photovoltaics, solar rooftop

function in script

https://etip-pv.eu/

Lazard, conventional carriers

function in script

https://www.lazard.com/media/451086/lazards-levelized-cost-of-energy-version-130-vf.pdf

Zappe et. al., fuel cost

function in script

https://doi.org/10.1016/j.apenergy.2018.08.109

Umweltbundesamt – Entwicklung Kohlendioxid, fuel cost

function in script

https://www.umweltbundesamt.de/publikationen/entwicklung-der-spezifischen-kohlendioxid-5