CapacityExpansion is a julia implementation of a input-data-scaling capacity expansion modeling framework.
Model Information | |
---|---|
Model class | Capacity Expansion Problem |
Model type | Optimization, Linear optimization model input-data depending energy system |
Sectors | (currently) Electricity |
Technologies | dispathable and non-dispathable Generation, 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 |
Time resolution | hourly |
Network coverage | transmission, DCOPF load flow |
The package uses TimeSeriesClustering as a basis for it's time-series aggregation.
This package is developed by Elias Kuepper @YoungFaithful and Holger Teichgraeber @holgerteichgraeber.
This package runs under julia v1.0 and higher. It depends on:
JuMP.jl
- for the modeling environmentCSV.jl
- for handling of.csv
-FilesDataFrames.jl
- for handling of tablesStatsBase.jl
- for handling of basicJLD2
- for saving your result dataFileIO
- for file accessingTimeSeriesClustering.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")
using CapacityExpansion
using Clp
optimizer=Clp.Optimizer # select optimizer
## LOAD DATA ##
# laod ts-data
ts_input_data = load_timeseries_data_provided("GER_1"; T=24, years=[2016])
# load cep-data
cep_data = load_cep_data_provided("GER_1")
## OPTIMIZATION ##
# run a simple
run_opt(ts_input_data,cep_data,optimizer)