• 38 views | 3 messages Discussion: LEAP
    Topic: Storage charge and discharge ratesSubscribe | Previous | Next
  • Matthew Davis 3/2/2025

    Hello,

    In modelling energy storage for optimization of a single module with NEMO, I just wanted to confirm if there is an implicit assumption about charge rates, and if it can be modified:
    • In the built in LEAP-NEMO, is it assumed that the charge rate is equal to the discharge rate? Systems could have slower charge rates, so wondering how this is handled, and what is the default.
    • Can the LEAP modeller modify the charge rate NEMO variable with a custom NEMO configuration file?
    Thanks,
    Matt
  • Jason Veysey 3/4/2025
      Best Response

    Hi, Matt -

    I believe you're talking about maximum charge and discharge rates, not the actual charge and discharge rates calculated in a given time slice. Ordinarily, NEMO allows the actual charge and discharge rates for storage in a time slice to differ.

    By default in LEAP-NEMO models, the capacity associated with a storage process in LEAP sets the maximum charge and discharge rates for the storage. Both are equal to the capacity.

    NEMO has parameters for the maximum charge and discharge rates for storage (see https://sei-international.github.io/NemoMod.jl/stable/parameters/#StorageMaxChargeRate and https://sei-international.github.io/NemoMod.jl/stable/parameters/#StorageMaxDischargeRate), but they're not currently accessible in the LEAP interface. We plan to add them to the interface in an upcoming release. Once we do, you'll be able to specify maximum charge and discharge rates that differ.

    In the meantime, there's unfortunately no option to set these parameters in NEMO configuration files. You could pass them to NEMO at model calculation time using LEAP and NEMO scripts, however. It's a bit complicated, but it is possible. The basic pattern is:

    1) Create and populate user variables for the parameters in LEAP.
    2) Create a LEAP before calculation, before scenario, or before transformation script that uses the LEAP API to extract the parameters' values and write them to a temporary file in the LEAP working directory.
    3) Create a NEMO before scenario script that reads the parameters' values from the temporary file and adds them to the NEMO scenario database that's being calculated.
    4) Activate the NEMO before scenario script by pointing to it in your model's NEMO configuration file.

    I hope this helps.

    Thanks,

    Jason
  • Matthew Davis 3/4/2025
      Best Response

    Hi Jason,

    Thank you for the quick response. This answers my question. I will await the udpate!

    Thanks,
    Matt