Geo-X

June 15, 2026 · View on GitHub

Geospatial analysis of commodity production costs

Important

Using a version of this repository from and after commit ba7abe3 (committed on October 2nd 2025) requires weather data to be re-collected again when used for the first time. This is due to changes made in src/prep/get_weather_data.py.

Geo-X calculates the levelised cost (LC) of commodity production at specified demand locations, accounting for production, storage, transport, and where relevant conversion costs across all potential production locations.

These results can be compared with current or projected regional prices to assess economic competitiveness.

Implemented commodities

Geo-X currently supports the following commodities:

  • Green hydrogen
  • Green ammonia
  • Green copper

Copper production is modelled under off-grid, hybrid, and grid-connected electricity supply scenarios, which are reported separately. Hydrogen and ammonia production, by contrast, are restricted to off-grid renewable electricity.

The codebase is written in a modular and extensible manner, allowing additional commodities to be implemented in the future.

Example use cases

The repository includes illustrative case studies:

  • Namibia: hydrogen and ammonia production
  • Zambia: copper production

These should be changed for your run(s). Parameter references for the hydrogen case are provided at the end of this file.
Because the framework is generalised, Geo-X can be applied to a wide range of geographic regions beyond these examples.

Geo-X builds upon:


Contents

Setup instructions

Follow the steps below before running Geo-X.

Geo-X is implemented using Snakemake, which automates workflow execution using rules. Each rule corresponds to a specific part of the codebase and performs a distinct function.

This installation requires Git for version control. If Git is not installed, follow these instructions: https://git-scm.com/book/en/v2/Getting-Started-Installing-Git

1) Clone the repository

Clone the Geo-X repository using Git.

... % git clone https://github.com/ClimateCompatibleGrowth/Geo-X.git

2) Set up the environment

The Python package requirements are specified in the environment.yaml file.

Install these requirements in a new environment using the mamba package and environment manager (installation instructions are available here):

.../geo-x % mamba env create -f environment.yaml

Activate the newly created environment:

.../geo-x % mamba activate geox

3) Get a Climate Data Store (CDS) API key

To simulate commodities produced using renewable energy, historical climate data are required as an input.

The get_weather_data rule can be used to download the relevant data from the ERA5 reanalysis dataset using Atlite to create a weather cutout.

To enable this step, register for and configure your CDS API key as described on the Climate Data Store website.

4) Install a solver

To run the plant_optimization rule, an optimisation solver must be installed.

You can use any solver compatible with PyPSA, such as:

  • Cbc: free and open source
  • Gurobi: commercial, with free academic licences available

Install your chosen solver following the instructions provided in the solver's documentation.


Preparing input data

Before running Geo-X, you must prepare the required input data.

Geo-X uses three types of input data:

  1. Spatial input data
  2. Techno-economic and plant parameters
  3. A configuration file

If you intend to include hydropower or geothermal or nuclear as generation technologies, additional input files are required, as described below.

1) Prepare input hexagons

Note

This step (and any optional steps, if required) must be completed for each country you wish to analyse.

Spatial input data are represented as a set of hexagons using the H3 standard.

To analyse a different area of interest, the hexagon file must be replaced with one that follows the same structure and conventions as the provided example. Both example hexagon files might require updating at the time of use.

A full walkthrough for creating these hexagons, including the required tools, is available in the Geo-X-data-prep repository.

Required hexagon attributes

Each hexagon file must contain the following attributes:

  • waterbody_dist: Distance to selected waterbodies in area of interest
  • waterway_dist: Distance to selected waterways
  • road_dist: Distance to road network
  • solar: Theoretical potential of standardised PV plants (can be calculated with GLAES)
  • wind: Theoretical potential of standardised wind turbines (can be calculated with GLAES)

Additional attributes

For coastal countries, the following attribute is required:

  • ocean_dist: Distance to ocean coastline

For copper analyses, the following additional attributes are required:

  • grid_dist: Distance to the electricity grid network
  • pop: Population within the hexagon (required when community_energy_access is due to be set to a float value in the config file)

The ccg-spider repository can be used to combine multiple spatial data into standard H3 hexagons.

File placement

Once the hexagon file has been created, place it in the following location:

data/[COUNTRY ISO CODE]/hex_final_[COUNTRY ISO CODE].geojson

Important


COUNTRY ISO CODE must be the country’s ISO standard 2-letter abbreviation.

(Optional) Hydropower files

Hydropower input files can be obtained by:

Place the following files inside data/[COUNTRY ISO CODE]/, one file must be renamed to match the required format:

  • [COUNTRY ISO CODE]_hydropower_dams.gpkg
  • All the files from the HydroBASINS download (or the Shapefile cannot be used)

(Optional) Geothermal GeoPackage file

The geothermal GeoPackage file can be obtained by running the Geo-X-data-prep repository.

Place the following file inside data/[COUNTRY ISO CODE]/, it must be renamed to match the required format:

  • [COUNTRY ISO CODE]_geothermal_plants.gpkg

(Optional) Nuclear GeoPackage file

The nuclear GeoPackage file can be obtained by running the Geo-X-data-prep repository.

Place the following file inside data/[COUNTRY ISO CODE]/, it must be renamed to match the required format:

  • [COUNTRY ISO CODE]_nuclear_plants.gpkg

2) Prepare input parameter Excel files

Next, prepare the techno-economic input parameter spreadsheets.

Required input parameters include the spatial area of interest, total annual demand for the commodity, and prices and cost of capital for infrastructure investments.

These values can be either current conditions or projected values for a single snapshot in time.

All parameter values used by the model are specified in a set of Excel and CSV files located in the parameters folder. All files should be checked to ensure they are correctly set up before running the model.

Parameter file overview

  • Basic plant parameters The basic_[COMMODITY ABBREVIATION]_plant folder contains several CSV files defining global parameters for optimizing the plant design.
    • All power units must be in MW
    • All energy units must be in MWh
    • The generators.csv file must only include the generators that you wish to use in the optimisation

For further details on these parameters, refer to the PyPSA documentation.

Important

COMMODITY ABBREVIATION can be h2, nh3 or cu, corresponding to the currently implemented commodities.

  • Conversion parameters The conversion_parameters.xlsx file defines parameters related to converting between different states of the commodity. This file is required for the hydrogen and copper folders.

  • Country parameters Thecountry_parameters.xlsx file includes country- and technology-specific parameters such as:

    • Interest rates
    • Heat and electricity costs
    • Asset lifetimes.

    Additional notes:

    • Interest rates should be expressed as decimals (e.g. 5% as 0.05).
    • Asset lifetimes should be in years.
    • The file may contain columns for generators that are not being considered.
  • Demand parameters The demand_parameters.xlsx file defines the set of demand centers.

    For each demand center, the following must be specified:

    • Latitude and longitude
    • Annual demand
    • Commodity state at the demand location
  • Pipeline parameters The pipeline_parameters.xlsx file contains price, capacity, and lifetime data for different pipeline sizes. This file is required for the hydrogen and ammonia folders.

  • Technology parameters The technology_parameters.xlsx file includes parameters related to:

    • Water costs and/or usage
    • Road infrastructure
  • Transport parameters The transport_parameters.xlsx file defines parameters for road transport of the commodity, including:

    • Truck speed
    • Transport cost
    • Asset lifetime
    • Transport capacity

Important

All parameter files must be stored in a folder structure organised by country and commodity. Each commodity must be placed in a sub-folder named after the commodity, within a folder named using the corresponding country’s ISO standard 2-letter abbreviation. As currently implemented, the commodity must be one of hydrogen, ammonia, or copper. For the illustrative case studies:

  • Namibia uses the folder NA, with sub-folders hydrogen and ammonia
  • Zambia uses the folder ZM, with the sub-folder copper

3) Modify the config file

High-level workflow settings are controlled in the configuration file: config.yaml.

Wildcards

Wildcards are defined in the scenario section of the config file and determine which data are used in the workflow.

They can be changed to match the case you're analysing:

  • country: ISO standard 2-letter country abbreviation
  • weather_year: A 4-digit year from 1940 onwards included in the ERA5 dataset
  • plant_type: The commodity to be produced (hydrogen, ammonia, or copper)

Weather data

The amount of weather data used in the analysis is controlled using the following parameters:

  • years_to_check: The number of years of weather data to use (must be an integer value)

For example, if you want weather data to start in 2015 and span five years, set
weather_year to 2015 and years_to_check to 5.

The temporal resolution of the data used in the optimisation can be set using:

  • freq: Data frequency (e.g., 1H for hourly, 3H for three-hourly)

Generators

The renewable generation technologies considered for plant construction are defined in the generators_dict section.

Currently supported generator types are:

  • solar
  • wind
  • hydro
  • geothermal
  • nuclear

Ensure that all generators you wish to consider are included in the dictionary, and remove any that are not required.

Generator-specific technology assumptions can be modified as follows:

  • panel: Solar panel technology (used if solar is included)
  • turbine: Wind turbine technology (used if wind is included)

Installed capacity assumptions are defined in the gen_capacity section:

  • solar and wind: Values can be adjusted as needed for the analysis
  • hydro, geothermal and nuclear: Values should not be changed

Efficiency of generator plants

Average generation efficiencies can be specified for:

  • hydro
  • geothermal
  • nuclear

Efficiencies should be provided as float values and adjusted as necessary.

Other configuration options

  • solver: Specify the name of the optimisation solver to be used

Water constraints

The water section controls whether water scarcity is considered:

  • has_ocean_dists: Set to True if country is coastal, otherwise False for a landlocked country
  • has_limit: Set to True to include a water availability constraint. Only required for hydrogen and ammonia
  • annual_limit: Annual water availability limit in cubic meters (required if has_limit is set to True)

Transport infrastructure

The transport section controls whether infrastructure construction is permitted:

  • pipeline_construction: Enable or disable pipeline construction. Only required for hydrogen and ammonia
  • road_construction: Enable or disable road construction

Currency

Specify the currency used across all parameter files.

For example, in any case study’s technology_parameters.xlsx file, the Water sheet contains a row labelled Water specific cost (euros/m3). If you change the currency in the parameter files, you must also update this value to ensure consistency across the model.

Spatial filtering

  • restrict_hexagons: If set to True, results will only be produced for hexagon(s) containing demand centres. All other hexagons will be set to null.

Copper-only configuration options

The following settings are only relevant when plant_type is set to copper:

  • grid_construction: If True, grid infrastructure may be constructed to supply electricity

  • size_offgrid_feedstocks: If True, a file containing costs related to an off-grid feedstock system will be outputted to the results/ folder

Note


country and weather_year may be provided as lists if multiple countries or years are being analysed.
You must ensure that all required input files for each country and year are present in the correct locations, as described earlier.


Running Geo-X with Snakemake

Once the repository setup is complete and all input data have been prepared, you are ready to run Geo-X!

This repository uses Snakemake to automate the workflow. For a gentle introduction to Snakemake, see Getting Started with Snakemake on The Carpentries Incubator.

Geo-X is executed by specifying a rule name when running Snakemake. Snakemake will automatically resolve dependencies and execute all required rules defined in the Snakefile to produce the requested outputs.

Computational resources

When running any Snakemake rule, you must specify the number of CPU cores to use; NUMBER OF CORES TO BE USED. The maximum is 4 cores.

Expected run times

Run times vary depending on the rule being executed:

  • get_weather_data: Depending on country size and internet connection, this rule may take from a few minutes to several hours. Ensure that sufficient disk space is available, as weather data files can be several GB in size.

  • optimize_plant: Depending on country size and the number of demand centres, this rule may take from several minutes to several hours.

  • All other rules: Usually complete within a few seconds.

1) Get weather data (if needed)

If you already have weather data for your area of interest, you can proceed directly to the next step. Otherwise, run the weather data rule to download the required data from the CDS API:

snakemake -j [NUMBER OF CORES TO BE USED] run_weather

2) Run optimization or mapping rules

Next, run the Geo-X optimisation workflow.

The rules in this section execute the entire workflow, so you do not need to run each individual rule step-by-step. If any input files are modified after a completed run, the same command can be executed again and Snakemake will automatically re-run only the steps required to update the results.

Before running these rules, ensure that the required weather file(s) are present in the cutouts directory. Each file must be named [COUNTRY ISO CODE]_[WEATHER YEAR].nc for each country being analysed.

Run total commodity cost optimisation

To calculate the total commodity cost for all scenarios, run:

snakemake -j [NUMBER OF CORES TO BE USED] optimise_all

Generate component breakdown and cost maps

To generate a further breakdown of the energy component and spatial maps of commodity costs for all scenarios, run:

snakemake -j [NUMBER OF CORES TO BE USED] map_all

Definitions of all rules

All rules are documented below for completeness; however, you do not need to run each rule individually.

In most cases, you can simply run one of the optimisation or mapping rules described in the previous section. Snakemake will automatically ensure that all required rules are executed in the correct order.

Note

PLANT TYPE refers to the commodity being produced (currently either hydrogen, ammonia, or copper).

get_weather_data rule

Downloads weather data for the area of interest to support generation optimisation.

snakemake -j [NUMBER OF CORES TO BE USED] cutouts/[COUNTRY ISO CODE]_[WEATHER YEAR].nc

optimize_transport rule

Calculates the cost of the optimal commodity transportation strategy from each hexagon to each demand centre, using available transport options.

This rule uses parameters from:

  • technology_parameters.xlsx
  • demand_parameters.xlsx
  • country_parameters.xlsx

For hydrogen and copper, the parameters from conversion_parameters.xlsx are also included.

snakemake -j [NUMBER OF CORES TO BE USED] resources/hex_transport_[COUNTRY ISO CODE]_[PLANT TYPE].geojson

calculate_water_costs rule

Calculates water supply costs from water sources for commodity production in each hexagon.

This rule uses parameters from:

  • technology_parameters.xlsx
  • country_parameters.xlsx
snakemake -j [NUMBER OF CORES TO BE USED] resources/hex_water_[COUNTRY ISO CODE]_[PLANT TYPE].geojson

optimize_plant rule

Designs a production plant to meet the commodity demand profile for each demand centre, accounting for all available transportation options.

Ensure that:

  • Plant parameters are specified in basic_[COMMODITY ABBREVIATION]_plant
  • Demand centres are defined in demand_parameters.xlsx
snakemake -j [NUMBER OF CORES TO BE USED] resources/hex_lc_[COUNTRY ISO CODE]_[WEATHER YEAR]_[PLANT TYPE].geojson

calculate_total_cost rule

Combines calculated componenets to identify the lowest-cost supply option for each demand centre.

snakemake -j [NUMBER OF CORES TO BE USED] results/hex_total_cost_[COUNTRY ISO CODE]_[WEATHER YEAR]_[PLANT TYPE].geojson

calculate_cost_components rule

Calculates the cost contribution of components within the energy component for each hexagon.

snakemake -j [NUMBER OF CORES TO BE USED] results/hex_cost_components_[COUNTRY ISO CODE]_[WEATHER YEAR]_[PLANT TYPE].geojson

calculate_map_costs rule

Generates spatial visualisations of different cost components per kilogram of commodity.

snakemake -j [NUMBER OF CORES TO BE USED] plots/[COUNTRY ISO CODE]_[WEATHER YEAR]_[PLANT TYPE]

Limitations

Geo-X has several important limitations that should be considered when interpreting results.

The model primarily considers greenfield generation, meaning that it does not account for existing generation assets.
Electricity supply is assumed to be based on newly constructed infrastructure, and any excess electricity generation is assumed to be fully curtailed.

Grid electricity is not considered for most commodities, except where explicitly enabled (e.g. grid-connected and hybrid scenarios for copper) and still takes a broad approach with calculating the costs associated.

While the design of the commodity plant is convex and therefore guaranteed to find the global optimum solution if it exists, the selection of the trucking strategy is greedy to avoid the long computation times and potential computational intractability associated with a mixed-integer optimization problem.

Currently, only land transport is considered in the model. To calculate the cost of commodity production for export, any additional costs for conversion and transport via ship or undersea pipeline must be added in post-processing.

Transport costs are calculated from the center of the hexagon to the demand center. When using large hexagon sizes, this assumption may over- or underestimate transportation costs significantly. Additionally, only path length is considered when calculating the cost of road and pipeline construction. Additional costs due to terrain are not considered.


Citation

If you decide to use Geo-X, please kindly cite us using the following:

Sanchez-Lopez, M., Naqvi, S., Leonard, A., Schirren, L., & Hirmer, S. (2026). Geo-X: Generalised geospatial software for production of green commodities. SoftwareX, 34, 102712. https://doi.org/10.1016/j.softx.2026.102712

@article{Geo-X-2026,
title = {Geo-X: Generalised geospatial software for production of green commodities},
journal = {SoftwareX},
volume = {34},
pages = {102712},
year = {2026},
issn = {2352-7110},
doi = {https://doi.org/10.1016/j.softx.2026.102712},
author = {Miguel Sanchez-Lopez and Samiyha Naqvi and Alycia Leonard and Lukas Schirren and Stephanie Hirmer},
}

Case study parameters

This repository includes sample parameters for a hydrogen production case in Namibia. References for these parameters are included in the tables below for reference. For the results of this case, please refer to the GeoH2 model MethodsX article: https://doi.org/10.1016/j.mex.2024.102660.

Green hydrogen plant parameters:

HardwareParameterValueUnitsRef.
Solar photovoltaicCapex1,470,000€/MWAllington et al., 2021
Wind turbinesCapex1,580,000€/MWAllington et al., 2021
Hydrogen electrolysisCapex1,250,000€/MWMüller et al., 2022
Hydrogen electrolysisEfficiency0.59MWh H2/MWh elTaibi et al., 2020
Hydrogen compressionIsentropic efficiency0.051MWh el/MWh H2Müller et al., 2022
Hydrogen storage unloadingEfficiency1MWh H2/MWh H2-storedAssumption
BatteryCapex95,000€/MWBloombergNEF, 2022
Hydrogen storageCapex21,700€/MWhMüller et al., 2022

Conversion parameters:

ProcessParameterValueUnitsRef.
500 bar compressionHeat capacity0.0039444kWh/kg/KKurzweil and Dietlmeier, 2016
500 bar compressionInput temperature298.15KMüller et al., 2022
500 bar compressionInput pressure25barMüller et al., 2022
500 bar compressionIsentropic exponent1.402Kurzweil and Dietlmeier, 2016
500 bar compressionIsentropic efficiency0.8Müller et al., 2022
500 bar compressionCompressor lifetime15yearsCerniauskas, 2021
500 bar compressionCompressor capex coefficient40,035€/kg H2/dayCerniauskas, 2021
500 bar compressionCompressor opex4% capex/yearCerniauskas, 2021
Hydrogen liquificationElectricity demand9.93kWh/kg H2Ausfelder and Dura
Hydrogen liquificationCapex quadratic coefficient-0.0002€/(kg H2)^2Müller et al., 2022
Hydrogen liquificationCapex linear coefficient1,781.9€/kg H2Müller et al., 2022
Hydrogen liquificationCapex constant300,000,000Müller et al., 2022
Hydrogen liquificationOpex8% capex/yearCerniauskas, 2021
Hydrogen liquificationPlant lifetime20yearsCerniauskas, 2021
LOHC hydrogenationElectricity demand0.35kWh/kg H2Andersson and Grönkvist, 2019
LOHC hydrogenationHeat demand-9kWh/kg H2Hydrogenious, 2022
LOHC hydrogenationCapex coefficient0.84kWh/kg H2/yearIEA, 2020
LOHC hydrogenationOpex4% capex/yearIEA, 2020
LOHC hydrogenationPlant lifetime25yearsIEA, 2020
LOHC hydrogenationCarrier costs2€/kg carrierClark, 2020
LOHC hydrogenationCarrier ratio16.1kg carrier/kg H2Arlt and Obermeier, 2017
LOHC dehydrogenationElectricity demand0.35kWh/kg H2Andersson and Grönkvist, 2019
LOHC dehydrogenationHeat demand12kWh/kg H2Hydrogenious, 2022
LOHC dehydrogenationCapex coefficient2.46kWh/kg H2IEA, 2020
LOHC dehydrogenationOpex4% capex/yearIEA, 2020
LOHC dehydrogenationPlant lifetime25yearsIEA, 2020
Ammonia synthesisElectricity demand2.809kWh/kg H2IEA, 2021
Ammonia synthesisCapex coefficient0.75717kWh/g H2/yearIEA, 2021
Ammonia synthesisOpex1.5% capex/yearIEA, 2020
Ammonia synthesisPlant lifetime25yearsIEA, 2020
Ammonia crackingHeat demand4.2kWh/kg H2Andersson and Grönkvist, 2019
Ammonia crackingCapex coefficient17,262,450kWh/g H2/hourCesaro et al., 2021
Ammonia crackingOpex2% capex/yearMüller et al., 2022
Ammonia crackingPlant lifetime25yearsMüller et al., 2022

Trucking parameters:

HardwareParameterValueUnitsRef.
All trucksAverage truck speed70km/hAssumption
All trucksWorking hours24h/dayAssumption
All trucksDiesel price1.5€/LAssumption
All trucksDriver wage2.85€/hMüller et al., 2022
All trucksWorking days365days/yearAssumption
All trucksMax driving distance160,000km/yearMüller et al., 2022
All trucksTruck capex160,000Reuss et al., 2017
All trucksTruck Opex12% capex/yearReuss et al., 2017
All trucksDiesel consumption35L/100 kmReuss et al., 2017
All trucksTruck lifetime8yearsReuss et al., 2017
All trucksTrailer lifetime12yearsReuss et al., 2017
500 bar hydrogen trailerTrailer capex660,000Cerniauskas, 2021
500 bar hydrogen trailerTrailer opex2% capex/yearCerniauskas, 2021
500 bar hydrogen trailerTrailer capacity1,100kg H2Cerniauskas, 2021
500 bar hydrogen trailerLoading and unloading time1.5hoursCerniauskas, 2021
Liquid hydrogen trailerTrailer capex860,000Reuss et al., 2017
Liquid hydrogen trailerTrailer opex2% capex/yearReuss et al., 2017
Liquid hydrogen trailerTrailer capacity4,300kg H2Reuss et al., 2017
Liquid hydrogen trailerLoading and unloading time3hoursReuss et al., 2017
LOHC trailerTrailer capex660,000IEA, 2020
LOHC trailerTrailer opex2% capex/yearReuss et al., 2017
LOHC trailerTrailer capacity1,800kg H2Reuss et al., 2017
LOHC trailerLoading and unloading time1.5hoursReuss et al., 2017
Ammonia trailerTrailer capex210,000IEA, 2020
Ammonia trailerTrailer opex2% capex/yearIEA, 2020
Ammonia trailerTrailer capacity2,600kg H2IEA, 2020
Ammonia trailerLoading and unloading time1.5hoursIEA, 2020

Road parameters:

Road lengthParameterValueUnitsRef.
Short road (<10 km)Capex626,478.45€/kmMüller et al., 2022
Long road (>10 km)Capex481,866.6€/kmMüller et al., 2022
All roadsOpex7,149.7€/km/yearMüller et al., 2022

Pipeline parameters:

Pipeline sizeParameterValueUnitsRef.
All pipelinesOpex1.25% capex/yearJens et al., 2021
All pipelinesAvailability95%Müller et al., 2022
All pipelinesPipeline lifetime42.5yearsJens et al., 2021
All pipelinesCompressor lifetime24yearsJens et al., 2021
All pipelinesElectricity demand0.000614kWh/kg H2/kmJens et al., 2021
Large pipelineMaximum capacity13GWJens et al., 2021
Large pipelinePipeline capex2,800,000€/kmJens et al., 2021
Large pipelineCompressor capex620,000€/kmJens et al., 2021
Medium pipelineMaximum capacity4.7GWJens et al., 2021
Medium pipelinePipeline capex2,200,000€/kmJens et al., 2021
Medium pipelineCompressor capex310,000€/kmJens et al., 2021
Small pipelineMaximum capacity1.2GWJens et al., 2021
Small pipelinePipeline capex90,000€/kmJens et al., 2021
Small pipelineCompressor capex90,000€/kmJens et al., 2021

Water parameters:

TypeParameterValueUnitsRef.
FreshwaterTreatment electricity demand0.4kWh/m^3 waterUS Dept. of Energy, 2016
Ocean waterTreatment electricity demand3.7kWh/m^3 waterPatterson et al., 2019
All waterTransport cost0.1€/100 km/m^3 waterZhou and Tol, 2005
All waterWater specific cost1.25€/m^3 waterWasreb, 2019
All waterWater demand21L water/kg H2Taibi et al., 2020

Country-specific parameters:

CountryParameterValueUnitsRef.
NamibiaElectricity price0.10465€/kWhGlobalPetrolPrices.com
NamibiaHeat price0.02€/kWhAssumption
NamibiaSolar interest rate6%Assumption
NamibiaSolar lifetime20yearsAssumption
NamibiaWind interest rate6%Assumption
NamibiaWind lifetime20yearsAssumption
NamibiaPlant interest rate6%Assumption
NamibiaPlant lifetime20yearsAssumption
NamibiaInfrastructure interest rate6%Assumption
NamibiaInfrastructure lifetime50yearsMüller et al., 2022