Forecasting

Itron's 2021 Annual Energy Forecasting Group Meeting

May 11, 2021

Truth be told, I would rather be in New Orleans eating beignets and discussing issues with the best forecasters in the world than sitting at my desk for a web conference. But COVID-19 has changed our world (at least for now). So instead of being together in New Orleans, Itron held its annual Energy Forecasting Group Meeting virtually from April 21 through April 23.

This year’s meeting consisted of five sessions focused on today’s key forecasting issues including COVID-19 (who would have guessed?), electric vehicles, long term forecasting trends and the state of the economy. The sessions are listed below.

  • EIA Residential and Commercial Updates, Kevin Jarzomski, Energy Information Administration
  • Economic Outlook, Dante DeAntonio, Moody’s Economics
  • COVID-19 Effects Panel Discussion
    • Brian Childers, Tennessee Valley Authority
    • Randy Holliday, American Electric Power
    • Todd Mobley and Nhi Diep Alt, Duquesne Light Company
    • Markus Leuker, DTE Energy
  • EV Market Outlook and Load Impacts – Itron Staff
  • SAE Data Spreadsheet Updates – Itron Staff

 

At the top of everyone’s mind was the past, present and future impacts of COVID-19. The past and present were covered in the COVID-19 Effects Panel Discussion. In this session, four utilities shared their experience with COVID-19’s energy impact, using models to understand the effects and how to model the effects. The near-term future was captured in the Economic Outlook session which showed the economic recovery variability based on health care policy, federal fiscal support and pent-up demand. Finally, the long-term future was presented in the EIA Residential and Commercial Updates session which captured energy policy and end-use information trends. 

While there is no debate on whether COVID-19 has had an impact, there is much debate on near-term and long-term impacts. When will the economy return to “normal”? Has the pandemic created structural changes to our economy? If so, will these changes impact our energy consumption? While this year’s conference provided insights into these questions, we (as forecasters) will closely monitor the situation throughout the year. While the meeting itself has already passed, if you register you can still receive a summary of this year’s conference and gain access to the recordings at https://cvent.me/BQrGba.

Finally, I look forward to sitting in New Orleans, eating beignets and discussing these issues with you on April 13-15, 2022.

Wystąpił błąd podczas przetwarzania szablonu.
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>