The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
First it’s necessary to load the package:
You need to set the path to an Antares study in “input” mode:
Or you can simply create a new study:
Before modifying your study, you can save it in an archive:
This will create a .tar.gz
file in your study
folder.
You can create a new area with:
You can specify the localization of the area on the map, and also its color.
There are two helper functions for area parameters:
filteringOptions()
for filtering options, like
filter-year-by-year
nodalOptimizationOptions()
for nodal optimizations
options.You can initialize a cluster with some parameters:
createCluster(
area = "myarea",
cluster_name = "myareacluster",
group = "other",
unitcount = 1,
nominalcapacity = 8400,
`min-down-time` = 0,
`marginal-cost` = 0.010000,
`market-bid-cost` = 0.010000
)
You can also edit the settings of an existing cluster:
createLink(
from = "area1",
to = "area2",
propertiesLink = propertiesLinkOptions(
hurdles_cost = FALSE,
transmission_capacities = "enabled"
),
dataLink = NULL
)
You can edit the settings of an existing link:
For example, set the output of simulation year by year, and limit the number of Monte-Carlo years to 10:
You can remove areas, links, clusters and binding constraints from
input folder with remove*
functions, e.g.:
First, update general settings to activate time series to generate:
Then run TS-generator:
Launch an Antares simulation from R:
To update an existing time series and write it, you can use the following commands :
# Filepath of the study, version >= 820
my_study <- file.path("", "", "")
opts <- setSimulationPath(my_study, simulation ="input")
opts$timeIdMax <- 8760
# Links, use only one link
my_link <- as.character(getLinks()[1])
ts_input <- readInputTS(linkCapacity = my_link, opts = opts)
# Sort the data to ensure its reliability
data.table::setorder(ts_input, cols = "tsId", "timeId")
# Reshape to wide format : writeInputTS expects a 8760 * N matrix
metrics <- c("transCapacityDirect", "transCapacityIndirect")
ts_input_reformatted <- data.table::dcast(ts_input,
timeId ~ tsId,
value.var = metrics
)
# Add a value my_param to your matrix
my_param <- 123
writeInputTS(data = ts_input_reformatted[,2:ncol(ts_input_reformatted)] + my_param,
type = "tsLink",
link = my_link,
overwrite = TRUE,
opts = opts
)
# Thermal, use only one area and one cluster
my_area <- "zone"
my_cluster <- "mon_cluster"
ts_input <- readInputTS(thermalAvailabilities = my_area, opts = opts)
ts_input <- ts_input[cluster == paste0(my_area,"_",my_cluster)]
# Sort the data to ensure its reliability
data.table::setorder(ts_input, cols = "tsId", "timeId")
# Reshape to wide format : writeInputTS expects a 8760 * N matrix
metrics <- c("ThermalAvailabilities")
ts_input_reformatted <- data.table::dcast(ts_input,
timeId ~ tsId,
value.var = metrics
)
# Add a value my_param to your matrix
my_param <- 1000
editCluster(area = my_area,
cluster_name = my_cluster,
time_series = ts_input_reformatted[,2:ncol(ts_input_reformatted)] + my_param,
opts = opts
)
# Run of River, use only one area
my_area <- "zone"
ts_input <- readInputTS(ror = my_area, opts = opts)
# Sort the data to ensure its reliability
data.table::setorder(ts_input, cols = "tsId", "timeId")
# Reshape to wide format : writeInputTS expects a 8760 * N matrix
metrics <- c("ror")
ts_input_reformatted <- data.table::dcast(ts_input,
timeId ~ tsId,
value.var = metrics
)
# Add a value my_param to your matrix
my_param <- 1000
writeInputTS(area = my_area,
type = "hydroROR",
data = ts_input_reformatted[,2:ncol(ts_input_reformatted)] + my_param,
overwrite = TRUE,
opts = opts
)
# set the path to an Antares study
my_study <- file.path("", "", "")
opts <- setSimulationPath(my_study, simulation ="input")
# choose geographic trimming when creating new Antares areas
# default filtering : c("hourly","daily","weekly","monthly","annual")
initial_filtering_synthesis <- c("weekly","monthly")
initial_filtering_year_by_year <- c("monthly","annual")
opts <- createArea(name = "area1",
filtering = filteringOptions(
filter_synthesis = initial_filtering_synthesis,
filter_year_by_year = initial_filtering_year_by_year),
opts = opts)
opts <- createArea(name = "area2",opts = opts)
opts <- createLink(from = "area1",
to = "area2",
propertiesLink = propertiesLinkOptions(
filter_synthesis = initial_filtering_synthesis,
filter_year_by_year = initial_filtering_year_by_year),
opts = opts)
# check the initial filters
initial_GT <- getGeographicTrimming(areas="area1",links=TRUE,opts=opts)
print(initial_GT$areas[["area1"]])
print(initial_GT$links[["area1 - area2"]])
# edit geographic trimming of an existing area or link
new_filtering_synthesis <- c("monthly")
new_filtering_year_by_year <- c("annual")
opts <- editArea(name = "area1",
filtering = list(
"filter_synthesis" = paste(new_filtering_synthesis,collapse = ", ")
"filter_year_by_year" = paste(new_filtering_year_by_year,collapse = ", ")),
opts = opts)
opts <- editLink(from = "area1",
to = "area2",
filter_year_by_year = new_filtering_year_by_year,
filter_synthesis = new_filtering_synthesis,
opts = opts)
# check the new filters
new_GT <- antaresRead::getGeographicTrimming(areas="area1",links=TRUE,opts=opts)
print(new_GT$areas[["area1"]])
print(new_GT$links[["area1 - area2"]])
# important : make sure that `geographic-trimming` parameter is activated in general settings
opts <- updateGeneralSettings(geographic.trimming = TRUE,opts = opts)
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.