Forecasting
May 20 Update: Latest Trends in Estimated Load Impacts of COVID-19 Mitigation Policies
This data is for March 15, 2020 – May 17, 2020
As previously discussed in the first of this series on April 13, the Itron Forecasting Team is leveraging publicly available hourly load data for most North American Independent System Operators (ISOs) to build a picture of the load impacts of COVID-19 by region. Actual loads when many of these policies began are compared to baseline loads without COVID-19 policy impacts.
The estimated load impacts for the weeks starting March 15 are presented below. For the aggregate ISO load, the average estimated impact is a reduction in average loads of about -7.5% over the period March 29 through May 17 when most COVID-19 mitigation policies were enacted. The later part of this period also covers the start of the re-opening of the North American economy. The biggest impact is estimated for the morning hours with an average reduction over this period of -9.6%. This could reflect the fact that despite more people staying at home, there is not enough residential HVAC load in the morning hours to offset the reduction in non-residential loads. The afternoon hours have an estimated reduction of -7.2% and the evening hours have an estimated reduction of -7.1%. The reduced impact in the afternoon hours could reflect a higher than usual residential air conditioning load that is offsetting the reduction in non-residential loads.
Beginning around the end of April, the CAISO and ERCOT control regions experienced significant temperature increases that led to a rise in air conditioning loads. The increased temperatures have uncovered an interesting side effect of the shelter-in-place policies, specifically higher than normal weather response to hot temperatures. The CAISO and ERCOT analysis highlights the additional air conditioning load associated with people staying at home. In both regions, this has led to peak loads greater than expected. Further, the peak load days are associated with higher-than-expected ramp rates throughout the morning, afternoon and evening hours. If the economy re-opens with a large portion of the population remaining at home, it is plausible that this summer utilities will experience higher than normal peak loads and ramping events.
For a detailed summary of the estimated load impacts for each region, go to the forecasting website to download the latest COVID-19 Load Impact memo.
The Itron Forecasting Team will continue to post updated summary blogs and corresponding memos on these trends.
Subscribe to our blog to be notified of new posts, and contact us at forecasting@itron.com if you have further questions.
As previously discussed in the first of this series on April 13, the Itron Forecasting Team is leveraging publicly available hourly load data for most North American Independent System Operators (ISOs) to build a picture of the load impacts of COVID-19 by region. Actual loads when many of these policies began are compared to baseline loads without COVID-19 policy impacts.
The estimated load impacts for the weeks starting March 15 are presented below. For the aggregate ISO load, the average estimated impact is a reduction in average loads of about -7.5% over the period March 29 through May 17 when most COVID-19 mitigation policies were enacted. The later part of this period also covers the start of the re-opening of the North American economy. The biggest impact is estimated for the morning hours with an average reduction over this period of -9.6%. This could reflect the fact that despite more people staying at home, there is not enough residential HVAC load in the morning hours to offset the reduction in non-residential loads. The afternoon hours have an estimated reduction of -7.2% and the evening hours have an estimated reduction of -7.1%. The reduced impact in the afternoon hours could reflect a higher than usual residential air conditioning load that is offsetting the reduction in non-residential loads.
Beginning around the end of April, the CAISO and ERCOT control regions experienced significant temperature increases that led to a rise in air conditioning loads. The increased temperatures have uncovered an interesting side effect of the shelter-in-place policies, specifically higher than normal weather response to hot temperatures. The CAISO and ERCOT analysis highlights the additional air conditioning load associated with people staying at home. In both regions, this has led to peak loads greater than expected. Further, the peak load days are associated with higher-than-expected ramp rates throughout the morning, afternoon and evening hours. If the economy re-opens with a large portion of the population remaining at home, it is plausible that this summer utilities will experience higher than normal peak loads and ramping events.
For a detailed summary of the estimated load impacts for each region, go to the forecasting website to download the latest COVID-19 Load Impact memo.
The Itron Forecasting Team will continue to post updated summary blogs and corresponding memos on these trends.
Subscribe to our blog to be notified of new posts, and contact us at forecasting@itron.com if you have further questions.
Kesalahan terjadi ketika Memproses Template.
The following has evaluated to null or missing:
==> authorContent.contentFields [in template "44616#44647#114455" at line 9, column 17]
----
Tip: It's the step after the last dot that caused this error, not those before it.
----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----
----
FTL stack trace ("~" means nesting-related):
- Failed at: contentFields = authorContent.content... [in template "44616#44647#114455" at line 9, column 1]
----
1<#assign
2 webContentData = jsonFactoryUtil.createJSONObject(author.getData())
3 classPK = webContentData.classPK
4/>
5
6<#assign
7authorContent = restClient.get("/headless-delivery/v1.0/structured-contents/" + classPK + "?fields=contentFields%2CfriendlyUrlPath%2CtaxonomyCategoryBriefs")
8contentFields = authorContent.contentFields
9categories=authorContent.taxonomyCategoryBriefs
10authorContentData = jsonFactoryUtil.createJSONObject(authorContent)
11friendlyURL = authorContentData.friendlyUrlPath
12authorCategoryId = "0"
13/>
14
15<#list contentFields as contentField >
16 <#assign
17 contentFieldData = jsonFactoryUtil.createJSONObject(contentField)
18 name = contentField.name
19 />
20 <#if name == 'authorImage'>
21 <#if (contentField.contentFieldValue.image)??>
22 <#assign authorImageURL = contentField.contentFieldValue.image.contentUrl />
23 </#if>
24 </#if>
25 <#if name == 'authorName'>
26 <#assign authorName = contentField.contentFieldValue.data />
27 <#list categories as category >
28 <#if authorName == category.taxonomyCategoryName>
29 <#assign authorCategoryId = category.taxonomyCategoryId />
30 </#if>
31 </#list>
32 </#if>
33 <#if name == 'authorDescription'>
34 <#assign authorDescription = contentField.contentFieldValue.data />
35
36 </#if>
37
38 <#if name == 'authorJobTitle'>
39 <#assign authorJobTitle = contentField.contentFieldValue.data />
40
41 </#if>
42
43</#list>
44
45<div class="blog-author-info">
46 <#if authorImageURL??>
47 <img class="blog-author-img" id="author-image" src="${authorImageURL}" alt="" />
48 </#if>
49 <#if authorName??>
50 <#if authorName != "">
51 <p class="blog-author-name">By <a id="author-detail-page" href="/w/${friendlyURL}?filter_category_552298=${authorCategoryId}"><span id="author-full-name">${authorName}</span></a></p>
52 <hr />
53 </#if>
54 </#if>
55 <#if authorJobTitle??>
56 <#if authorJobTitle != "">
57 <p class="blog-author-title" id="author-job-title" >${authorJobTitle}</p>
58 <hr />
59 </#if>
60 </#if>
61 <#if authorDescription??>
62 <#if authorDescription != "" && authorDescription != "null" >
63 <p class="blog-author-desc" id="author-job-desc">${authorDescription}</p>
64 <hr />
65 </#if>
66 </#if>
67</div>
The following has evaluated to null or missing: ==> authorContent.contentFields [in template "44616#44647#114455" at line 9, column 17] ---- Tip: It's the step after the last dot that caused this error, not those before it. ---- Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: contentFields = authorContent.content... [in template "44616#44647#114455" at line 9, column 1] ----
1<#assign
2 webContentData = jsonFactoryUtil.createJSONObject(author.getData())
3 classPK = webContentData.classPK
4/>
5
6<#assign
7authorContent = restClient.get("/headless-delivery/v1.0/structured-contents/" + classPK + "?fields=contentFields%2CfriendlyUrlPath%2CtaxonomyCategoryBriefs")
8contentFields = authorContent.contentFields
9categories=authorContent.taxonomyCategoryBriefs
10authorContentData = jsonFactoryUtil.createJSONObject(authorContent)
11friendlyURL = authorContentData.friendlyUrlPath
12authorCategoryId = "0"
13/>
14
15<#list contentFields as contentField >
16 <#assign
17 contentFieldData = jsonFactoryUtil.createJSONObject(contentField)
18 name = contentField.name
19 />
20 <#if name == 'authorImage'>
21 <#if (contentField.contentFieldValue.image)??>
22 <#assign authorImageURL = contentField.contentFieldValue.image.contentUrl />
23 </#if>
24 </#if>
25 <#if name == 'authorName'>
26 <#assign authorName = contentField.contentFieldValue.data />
27 <#list categories as category >
28 <#if authorName == category.taxonomyCategoryName>
29 <#assign authorCategoryId = category.taxonomyCategoryId />
30 </#if>
31 </#list>
32 </#if>
33 <#if name == 'authorDescription'>
34 <#assign authorDescription = contentField.contentFieldValue.data />
35
36 </#if>
37
38 <#if name == 'authorJobTitle'>
39 <#assign authorJobTitle = contentField.contentFieldValue.data />
40
41 </#if>
42
43</#list>
44
45<div class="blog-author-info">
46 <#if authorImageURL??>
47 <img class="blog-author-img" id="author-image" src="${authorImageURL}" alt="" />
48 </#if>
49 <#if authorName??>
50 <#if authorName != "">
51 <p class="blog-author-name">By <a id="author-detail-page" href="/w/${friendlyURL}?filter_category_552298=${authorCategoryId}"><span id="author-full-name">${authorName}</span></a></p>
52 <hr />
53 </#if>
54 </#if>
55 <#if authorJobTitle??>
56 <#if authorJobTitle != "">
57 <p class="blog-author-title" id="author-job-title" >${authorJobTitle}</p>
58 <hr />
59 </#if>
60 </#if>
61 <#if authorDescription??>
62 <#if authorDescription != "" && authorDescription != "null" >
63 <p class="blog-author-desc" id="author-job-desc">${authorDescription}</p>
64 <hr />
65 </#if>
66 </#if>
67</div>