UI for Critical Loads and Grid Outage for all BTM Storage Configs#707
Conversation
Widget can be used for losses, outages, curtailment, etc. so "losses" is misleading.
* Add escalation rate for critical load with defaults * Reorganize Electric Load UI forms for better usability * Add Grid Outage input and default for BTM battery configs TO DO: * Modify LossAdjustment widget to work with grid_outage (and curtailment) input * Update regular load page to match critical load page * Test with SSC
* Reorganize inputs for better usability * Add tooltips and explanatory text
* Add description property Still needs additional work to implement description property.
This reverts commit 9fcbc5d.
Requires larger effort described here: #703
brtietz
left a comment
There was a problem hiding this comment.
Looks good overall. The one caveat is that the current behavior (resiliency calcs with no outage specified) is broken. Ideally the user would have the option to specify "calculate resiliency for all time steps" when they specify just a critical load and not an outage. I'm not sure if leaving the radio button enabled is the best way to do it or not.
|
When the user specifies a critical load with no grid outage, what does SAM do when run_resiliency_calcs = 0? |
|
The critical load input would be unused in that case. Which is ok (or worth a notice), maybe? |
<table> <tbody> <tr> <td>critical_load</td> <td>grid_outage</td> <td>run_resiliency_calcs</td> <td>Result</td> <td>UI Behavior</td> </tr> <tr> <td>0</td> <td>0</td> <td>0</td> <td>Normal SAM operation</td> <td>Disable run_resiliency_calcs and set to zero.</td> </tr> <tr> <td>0</td> <td>0</td> <td>1</td> <td>Invalid, need critical load.</td> <td>Not possible to get to this state in UI.</td> </tr> <tr> <td>0</td> <td>1</td> <td>0</td> <td>Invalid, need critical load.</td> <td>Disable run_resiliency_calcs and set to zero.</td> </tr> <tr> <td>0</td> <td>1</td> <td>1</td> <td>Invalid, need critical load.</td> <td>Disable run_resiliency_calcs and set to zero.</td> </tr> <tr> <td>1</td> <td>0</td> <td>0</td> <td>Critical load doesn't do anything.</td> <td>Display a UI message to either specify a grid outage and/or set run_resiliency_calcs to 1.</td> </tr> <tr> <td>1</td> <td>0</td> <td>1</td> <td>Equivalent to SAM 2020.11.29: Outage is hypothetical, code starts outage in every time step and sees how long battery survives. Tells you how long could you survive an outage. Does not affect battery SOC.</td> </tr> <tr> <td>1</td> <td>1</td> <td>0</td> <td>Results only for outage time steps. Affects battery SOC.</td> </tr> <tr> <td>1</td> <td>1</td> <td>1</td> <td>Models a real outage that battery has to recover from and a hypothetical one. The resiliency metrics will run for every timestep with a hypothetical outage. During the real outage, they should match the behavior during that outage (in terms of hours of survival). Both during and after the outage, we'll see how many additional hours the system could have survived based on the final SOC.</td> </tr> </tbody> </table>
|
brtietz
left a comment
There was a problem hiding this comment.
Looks good! Need to wait to merge until SSC code is ready. Hopefully this will be possible with the connect_outage_vars_to_powerflow branch.
Fix broken code generation to test broken peak shaving
sjanzou
left a comment
There was a problem hiding this comment.
All my tests are running fine now... first sanity check has passed! Ready to merge.
Goes with NatLabRockies/ssc#618
Add Grid Outage UI form with grid_outage input
Reorganize Electric Load page for better usability
Improve labeling of critical load inputs, including option for time series resiliency calcs
UI conditional messaging to ensure grid outage is not enable without critical load, and check fuel cell configs for enabled battery