newStorage | R Documentation |
Storage type of technological processes with accumulating capacity of a commodity.
newStorage(
name = "",
desc = "",
commodity = character(),
aux = data.frame(),
region = character(),
start = data.frame(),
end = data.frame(),
olife = data.frame(),
charge = data.frame(),
seff = data.frame(),
aeff = data.frame(),
af = data.frame(),
fixom = data.frame(),
varom = data.frame(),
invcost = data.frame(),
capacity = data.frame(),
cap2stg = 1,
fullYear = TRUE,
weather = data.frame(),
optimizeRetirement = FALSE,
misc = list(),
...
)
name |
character. Name of the storage (used in sets). |
desc |
character. Description of the storage. |
commodity |
character. Name of the stored commodity. |
aux |
data.frame. Auxiliary commodities.
|
region |
character. Region where the storage technology exists or can be installed. |
start |
data.frame. Start year when the storage is available for installation.
|
end |
data.frame. Last year when the storage is available for investment.
|
olife |
data.frame. Operational life of the storage technology, applicable to the new investment only, the operational life (retirement) of preexiting capacity is described in the
|
charge |
data.frame. Pre-charged level at the beginning of the operational cycle.
|
seff |
data.frame. Storage efficiency parameters.
|
aeff |
data.frame. Auxiliary commodities efficiency parameters.
|
af |
data.frame. Availability factor parameters.
|
fixom |
data.frame. Fixed operation and maintenance cost.
|
varom |
data.frame. Variable operation and maintenance cost.
|
invcost |
data.frame. Investment cost.
|
capacity |
data.frame. Capacity parameters of the storage technology.
|
cap2stg |
numeric. Charging and discharging capacity to the storing capacity inverse ratio. Can be used to define the storage duration. |
fullYear |
logical. If TRUE (default), the storage technology operates between parent timeframes through the year. The last time-slice in the timeframe is used as a preciding time-slice for the first time-slice in the the same group of time-slices within the parent timeframe. if FALSE, the storage charge and discchare cycle is limited to the parent timeframe. The last time-slice in the timeframe is used as a preciding time-slice for the first time-slice in the the same group of time-slices within the parent timeframe. |
weather |
data.frame. Weather factors multipliers.
|
optimizeRetirement |
logical. Incidates if the retirement of the storage should be optimized. Also requires the same parameter in the |
misc |
list. List of additional parameters that are not used in the model but can be used for reference or user-defined functions. For example, links to the source of the storage data, or other metadata. |
Storage can be used in combination with other processes, such as technologies, supply, or demand to represent complex technological chains, demand or supply technologies with time-shift. Operation of storage includes accumulation, storing, and release of the stored commodity. The storing cycle operates on the ordered time-slices of the commodity timeframe. The cycle is looped either on an annual basis (last time-slice of a year follows the first time slice of the same year) or within the parent time-frame (for example, when commodity time-frame is "HOUR" and the parent time-frame is "DAY" then the storage cycle will be a calendar day).
storage object
STG1 <- newStorage(
name = "STG1",
desc = "Storage description",
commodity = "electricity",
region = "R1",
start = data.frame(region = "R1", start = 0),
end = data.frame(region = "R1", end = 1),
olife = data.frame(region = "R1", olife = 20),
charge = data.frame(
# region = "R1",
year = 2020,
# slice = "HOUR",
charge = 0.1
),
seff = data.frame(
# region = "R1",
# year = 2020,
# slice = "HOUR",
stgeff = 0.999,
inpeff = 0.9,
outeff = 0.9
),
aeff = data.frame(
acomm = "electricity",
region = "R1",
year = 2020,
# slice = "HOUR",
stg2ainp = 0.9,
cinp2ainp = 0.1,
cout2ainp = 0.2,
stg2aout = 0.9,
cinp2aout = 0.9,
cout2aout = 0.9,
cap2ainp = 0.9,
cap2aout = 0.9,
ncap2ainp = 0.9,
ncap2aout = 0.9,
ncap2stg = 0.9
),
af = data.frame(
region = "R1", year = 2020, slice = "HOUR",
af.lo = 0.9, af.up = 0.9, af.fx = 0.9, cinp.up = 0.9,
cinp.fx = 0.9, cinp.lo = 0.9, cout.up = 0.9,
cout.fx = 0.9, cout.lo = 0.9
),
fixom = data.frame(region = "R1", year = 2020, fixom = 0.9),
varom = data.frame(
region = "R1", year = 2020, slice = "HOUR",
inpcost = 0.9, outcost = 0.9, stgcost = 0.9
),
invcost = data.frame(
region = "R1", year = 2020, invcost = 0.9,
wacc = 0.9, retcost = 0.9
),
capacity = data.frame(
region = "R1", year = 2020, stock = 0.9,
cap.lo = 0.9, cap.up = 0.9, cap.fx = 0.9, ncap.lo = 0.9,
ncap.up = 0.9, ncap.fx = 0.9, ret.lo = 0.9, ret.up = 0.9,
ret.fx = 0.9
),
cap2stg = 1,
fullYear = TRUE,
weather = data.frame(
weather = "sunny",
waf.lo = 0.9,
waf.up = 0.9,
waf.fx = 0.9, wcinp.lo = 0.9,
wcinp.fx = 0.9, wcinp.up = 0.9, wcout.lo = 0.9, wcout.fx = 0.9,
wcout.up = 0.9
),
optimizeRetirement = FALSE,
misc = list()
)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.