EnergyInnovation / eps-us

Energy Policy Simulator - United States
GNU General Public License v3.0
22 stars 7 forks source link

Add new hour subscript to EPS model #185

Closed robbieorvis closed 1 year ago

robbieorvis commented 2 years ago

On today's check-in we discussed the possibility of adding a new subscript, hour, to the EPS (values could be 0-23 or 1-24... 0-23 is probably most common).

The addition of this subscript could be used for several new/modified features in the EPS, including:

1) For capacity expansion modeling the power sector, an hourly subscript, when combined with the season subscript, can be used to do much better capacity planning, checking hourly power plant availability against hourly demand (discussed next). This would all the EPS to much more closely match the way other models do capacity expansion modeling.

2) For peak electricity demand, we currently determine the peak hour outside of the model and feed in multipliers. With the addition of an hour subscript, we can make this internal in the model. This data has been very hard to find outside of the US, so this addition might make the process easier by using the EPS to come up with peak demand instead of having to use external values.

3) For estimating policy costs and time of use rates, having an hour subscript would let us build this into the model (we currently don't track this). This type of structure could become important for looking at EV and distributed energy policies, as well as helping better capture storage and demand response costs/savings.

jrissman commented 2 years ago

Adding the subscript is the easy part. The hard part would be finding data about which hour of the day each type of electricity user uses power. Without those data, we don't have the data to calculate which hour is the peak hour (per task 2 above), and we don't know which electricity rate to charge a given user (such as the "iron and steel industry") under TOU pricing (per task 3 above).

You indicate that it is hard to find a ratio of peak-to-average power demand for regions outside the U.S., but that is already a simplified and easier-to-find quantity than what is being proposed here. To use TOU pricing and calculate the peak hour ourselves, we need to know how each type of electricity user's demand is distributed throughout the 24-hour day. In contrast, the system load factor (SLF) that we use today can be observed from real world electricity generation data, without needing any knowledge about which sector or electricity user is consuming that power. So unless I misunderstand something, this change would make the input data requirements vastly more difficult to satisfy, not easier.

The industry sector is the example in my mind. I'm not sure if data on hourly power demand by industry is publicly available. When building a model for country X, we'd need to know the hourly electricity demand of their iron and steel industry, their chemicals industry, and each other industry they have, aggregated across all facilities within each industry. I wonder if those data even exist for the U.S., let alone for non-U.S. countries. We'd need similarly hourly data for every other type of electricity user.

It sounds like you are familiar with capacity expansion modeling - if you know more about what input data that sort of model requires, that might be helpful in determining what would be feasible for us.

jrissman commented 1 year ago

Adding an hour subscript is just an implementation detail for features such as hourly dispatch (#232), so it doesn't need its own GitHub issue. We can discuss implementation in issue #232.