Lukasz Wrote:I am writing you with a question regarding the modeling of loadcurves for commoditities, which are not Demand-Commodities and can have a flow from more than one source.Indeed, FLO_FR can be used for defining load curves for individual process flows only, and it is rarely needed. The standard way of defining load curves in TIMES is to specify COM_FR for the commodity. This is especially convenient for demands, because the resulting load curve is imposed both for the total demand, and also for any individual processes operating at the ANNUAL level producing the demand. Therefore, all the competing technologies producing the demand will see the same demand load curve (as long as the technologies are normal processes at ANNUAL level, or NST processes where also the demand itself is ANNUAL).
My question relates to the commodity VEHSTI (VehicleStorageIN) : I would like to place some sort of FLO_FR, UC_FLO on Timeslice level (here: weekly) to enforce an exogenously given loadcurve for that commodity.
How to implement an enforced loadcurve (distribution of Flows per TS) for commodity VEHSTI?
• From my understanding a FLO_FR will not work since it is defined PER process and not as a sum of processes, correct?
• How to model a load curve for a commodity (which is not a demand) and which can come from a variety of processes?
If I understand correctly, you seem to want to define an exogenous load curve for the total production of an "intermediate" weekly level commodity, upstream of the demand (as you said you want it for the "sum of processes"). If so, let's assume this commodity is C1.
One easy way of forcing an exogenous load curve for the total balance of C1 would be to use the same method as for ANNUAL level demand technologies. That would only require introducing a single new "load process", operating at the ANNUAL level, consuming C1 and producing a new weekly level commodity C2 (=PCG of the process). Then you would just need to change the input of all processes that were originally consuming C1 to consume C2 instead, and define the load curve for C2 by using COM_FR. This method is illustrated in the top part of the Figure below. Of course, FLO_FR could also be used for such a load process, instead of COM_FR for C2, but it would just create more extra equations.
Another way is to define the load curve by using user constraints. As such constraints might become quite large in non-zeros if there are many timeslices on the target level, I would rather suggest a nested constraint, as illustrated in the bottom part of the Figure below. The example defines an exogenous load curve for the ELC commodity in the DEMO model. Note that the example works only for the production of ELC from normal processes; including IRE or storage processes would require additional consideration, or changing it to operate on VAR_COMPRD instead of VAR_FLO.
I tested the example myself with the DEMO model, and it worked perfectly well, verified to work fully as expected.