Storage parameters

These parameters configure storage in a scenario, including storage costs, performance, pre-existing capacity, capacity and investment limits, and connections between storage and technologies.

Capital cost storage

Cost to build a unit of capacity for the specified storage.

Tip

Since storage is typically linked to charging and discharging technologies (see TechnologyToStorage and TechnologyFromStorage), and capital costs are typically defined for those technologies, it may not be necessary to use this parameter. If it is used, the costs specified by CapitalCostStorage are added to the technology costs.

Scenario database

Table: CapitalCostStorage

NameTypeDescription
idintegerUnique identifier for row
rtextRegion
stextStorage
ytextYear
valrealCost (scenario's cost unit / region's energy unit)
Note

Note that capacity for storage is denominated in energy terms.

Interest rate storage

Interest rate used to calculate financing costs for endogenously built storage capacity.

Scenario database

Table: InterestRateStorage

NameTypeDescription
idintegerUnique identifier for row
rtextRegion
stextStorage
ytextYear
valrealRate (0 to 1)

Minimum storage charge

Minimum fraction of a storage's capacity that must be charged. NEMO ensures the charge never drops below this level.

Note

When this parameter is set, NEMO assumes that new storage capacity (endogenous and exogenous) is delivered with the minimum charge.

Warning

If you set a minimum storage charge, make sure the corresponding storage start level is at least as large as the minimum. Otherwise your model will be infeasible.

Scenario database

Table: MinStorageCharge

NameTypeDescription
idintegerUnique identifier for row
rtextRegion
stextStorage
ytextYear
valrealFraction (0 to 1)

Operational life storage

Lifetime of a storage in years. NEMO uses this parameter to:

  1. Retire endogenously determined capacity. If a unit of capacity is built endogenously in year y, NEMO will retire the capacity in year y + OperationalLife.
  2. Calculate the salvage value of endogenously determined capacity remaining at the end of the modeling period (see DepreciationMethod).

In this way, the parameter serves as both an operational and an economic lifetime.

Note

NEMO does not automatically retire exogenously specified storage capacity, which is defined by ResidualStorageCapacity. It is up to you to do so in the values you provide for ResidualStorageCapacity.

Scenario database

Table: OperationalLifeStorage

NameTypeDescription
idintegerUnique identifier for row
rtextRegion
stextStorage
valrealLifetime (years)

Residual storage capacity

Exogenously specified capacity for a storage. Note that NEMO does not automatically retire this capacity; it is up to you to do so in the values you provide for ResidualStorageCapacity.

Scenario database

Table: ResidualStorageCapacity

NameTypeDescription
idintegerUnique identifier for row
rtextRegion
stextStorage
ytextYear
valrealCapacity (region's energy unit)

Storage full load hours

Factor relating endogenously determined capacity for a storage and technologies that discharge it (see TechnologyFromStorage). When this parameter is specified, each unit of endogenous discharging capacity is accompanied by enough endogenous storage capacity to power it for the full load hours.

Scenario database

Table: StorageFullLoadHours

NameTypeDescription
idintegerUnique identifier for row
rtextRegion
stextStorage
ytextYear
valrealHours

Storage maximum charge rate

Maximum charging rate for a storage.

Tip

When storage is linked to charging technologies (see TechnologyToStorage), the capacity of these technologies also limits the charging rate of the storage. This can obviate StorageMaxChargeRate in many cases.

Scenario database

Table: StorageMaxChargeRate

NameTypeDescription
idintegerUnique identifier for row
rtextRegion
stextStorage
valrealCharging rate (region's energy unit / year)

Storage maximum discharge rate

Maximum discharging rate for a storage.

Tip

When storage is linked to discharging technologies (see TechnologyFromStorage), the capacity of these technologies also limits the discharging rate of the storage. This can obviate StorageMaxDischargeRate in many cases.

Scenario database

Table: StorageMaxDischargeRate

NameTypeDescription
idintegerUnique identifier for row
rtextRegion
stextStorage
valrealDischarging rate (region's energy unit / year)

Storage start level

Fraction of exogenous storage capacity that is charged at the start of the first modeled year.

Scenario database

Table: StorageLevelStart

NameTypeDescription
idintegerUnique identifier for row
rtextRegion
stextStorage
valrealFraction (0 to 1)

Technology from storage

Indicator of whether a technology can discharge a storage.

Scenario database

Table: TechnologyFromStorage

NameTypeDescription
idintegerUnique identifier for row
rtextRegion
ttextTechnology
stextStorage
mtextMode of operation
valrealIndicator (0 for no, 1 for yes)
Tip

It is not necessary to populate zeros in TechnologyFromStorage for technologies that aren't connected to a storage. NEMO assumes no connection if a technology isn't represented in the table.

Note

If a technology is connected to storage via TechnologyFromStorage, the fuels it produces must be time-sliced (FUEL.timesliced = 1).

Technology to storage

Indicator of whether a technology can charge a storage.

Scenario database

Table: TechnologyToStorage

NameTypeDescription
idintegerUnique identifier for row
rtextRegion
ttextTechnology
stextStorage
mtextMode of operation
valrealIndicator (0 for no, 1 for yes)
Tip

It is not necessary to populate zeros in TechnologyToStorage for technologies that aren't connected to a storage. NEMO assumes no connection if a technology isn't represented in the table.

Note

If a technology is connected to storage via TechnologyToStorage, the fuels it consumes must be time-sliced (FUEL.timesliced = 1).

Total annual maximum capacity storage

Maximum capacity for a storage in a year (including both exogenous and endogenous capacity). Only specify this parameter if you want to enforce a particular limit.

Scenario database

Table: TotalAnnualMaxCapacityStorage

NameTypeDescription
idintegerUnique identifier for row
rtextRegion
stextStorage
ytextYear
valrealCapacity (region's energy unit)

Total annual maximum capacity investment storage

Maximum addition of endogenously determined capacity for a storage in a year. Only specify this parameter if you want to enforce a particular limit. This parameter is scaled up to account for non-modeled years when selected years are calculated.

Scenario database

Table: TotalAnnualMaxCapacityInvestmentStorage

NameTypeDescription
idintegerUnique identifier for row
rtextRegion
stextStorage
ytextYear
valrealCapacity (region's energy unit)

Total annual minimum capacity storage

Minimum capacity for a storage in a year (including both exogenous and endogenous capacity). Only specify this parameter if you want to enforce a particular limit (other than 0, which NEMO assumes by default). This parameter is scaled up to account for non-modeled years when selected years are calculated.

Scenario database

Table: TotalAnnualMinCapacityStorage

NameTypeDescription
idintegerUnique identifier for row
rtextRegion
stextStorage
ytextYear
valrealCapacity (region's energy unit)

Total annual minimum capacity investment storage

Minimum addition of endogenously determined capacity for a storage in a year. Only specify this parameter if you want to enforce a particular limit (other than 0, which NEMO assumes by default).

Scenario database

Table: TotalAnnualMinCapacityInvestmentStorage

NameTypeDescription
idintegerUnique identifier for row
rtextRegion
stextStorage
ytextYear
valrealCapacity (region's energy unit)