The antaresProcessing
package provides functions that
uses data created with package antaresRead
to compute
standard aggregate like customer surplus or sector surplus. This
document demonstrates how to use the main functions of the package.
The antaresProcessing
package can be installed from zip
file. Its installation requires that the antaresRead
package has already been installed. If it is not already the case, you
can use the following commands.
install.packages(c("data.table", "plyr", "lubridate"))
install.packages("path/to/package/antaresRead_***.zip")
In all cases, run:
The usage of the package is quite straightforward. First one has to
read data from an antares study with readAntares
and then
pass it to a function of antaresProcessing
. Each function
requires different type of data (areas, links…) and different level of
detail. Generally, functions that perform non-linear calculations
require hourly data for each Monte-Carlo scenario but they have
arguments to then aggregate the results at the desired level of detail.
On the contrary, functions that do linear calculations accept every
level of detail and their output has the same level of detail as their
input.
The following table sums up the required data and the output of the different functions. For more details, one can look at the help file of each function. Especially, each help page contains an example that minimizes the amount of data read.
Function | Description | requires | time step | works on synthesis |
---|---|---|---|---|
surplus | Consumer and producer surplus | areas, links | hourly | no |
surplusClusters | Surplus of clusters | clusters, areas | hourly | no |
surplusSectors | Surplus of sectors of production | areas, clusters | hourly | no |
addNetLoad | Net load | areas and/or districts | all | yes |
netLoadRamp | Ramp of net load | areas and/or districts | hourly | no |
margins | Downward and upward margins of an area | areas, clusters | all | yes |
modulation | modulation of cluster units or sectors | areas or districts or clusters | all | yes |
There is also a compare
function that can be used to
compare two tables with same shape. It is useful to compare the results
of two simulations.
studyPath <- "path/to/study"
setSimulationPath(studyPath, 1)
data1 <- readAntares(areas = "all", links = "all", synthesis = FALSE)
surplus1 <- surplus(data1, timeStep = "annual", synthesis = TRUE)
setSimulationPath(studyPath, 2)
data2 <- readAntares(areas = "all", links = "all", synthesis = FALSE)
surplus2 <- surplus(data2, timeStep = "annual", synthesis = TRUE)
compare(surplus1, surplus2)
## 'antaresDataTable' object with dimension 72 x 8
## Type: surplusComparison
## TimeStep: annual
## Synthesis: TRUE
## area timeId time consumerSurplus producerSurplus storageSurplus ...
## 1: 01_pt Annual 2017 -57046.01 10371.915 0
## 2: 02_es Annual 2017 -956371.65 517675.155 0
## 3: 03_es Annual 2017 2435946.66 -1978004.005 0
## 4: 04_fr Annual 2017 -70700.07 110701.300 0
## ...
By default, compare
computes the difference between two
tables, but it can also compute a ratio or a variation rate.