The main purpose of the package is providing an extensible, simple-to-use generation and transmission capacity extension model that allows to address a diverse set of research questions in the area of energy systems planning. The secondary purposes are:
- Providing a simple process to integrate (clustered) time-series input data, geographical input data, cost input data, and technology input data.
- Providing a model configuration, a modular model setup and model optimization.
- Providing an interface between the optimization result and further analysis.
|Model class||Capacity Expansion Problem|
|Model type||Optimization, Linear optimization model input-data depending energy system|
|Carriers||Electricity, Hydrogen, ...|
|Technologies||dispathable and non-dispathable Generation, Conversion, Storage (seasonal), Transmission|
|Decisions||investment and dispatch|
|Objective||Total system cost|
|Variables||Cost, Capacities, Generation, Storage, Lost-Load, Lost-Emissions|
|Input Data Depending||Provided Input Data|
|Regions||California, USA (single and multi-node) and Germany, Europe (single and multi-node)|
|Geographic Resolution||aggregated regions|
|Network coverage||transmission, DCOPF load flow|
The package uses TimeSeriesClustering as a basis for its time-series aggregation.
This package runs under julia v1.0 and higher. It depends on:
JuMP.jl- for the modeling environment
CSV.jl- for handling of
DataFrames.jl- for handling of tables
StatsBase.jl- for handling of basic
JLD2.jl- for saving your result data
FileIO.jl- for file accessing
TimeSeriesClustering.jl- for time-series data
using Pkg Pkg.add("CapacityExpansion")
A solver is required to run an optimization as explained in section Solver. Install e.g.:
using Pkg Pkg.add("Clp")