From Wiki
Jump to: navigation, search

Please cite as: Hughes, Barry B., José R. Solórzano, and Dale S. Rothman. 2014. "IFs Energy Model Documentation." Working paper 2014.10.17. Pardee Center for International Futures, Josef Korbel School of International Studies, University of Denver, Denver, CO. Accessed DD Month YYYY <>

The energy model combines a growth process in production with a partial equilibrium process.  The energy model automatically replaces the energy sector in the full economic model unless the user disconnects that linkage. 

For energy, the partial equilibrium structures have distinct demand and supply sides, using price to seek a balance.  As in the economic model, however, no effort is made to obtain a precise equilibrium in any time step.  Instead stocks serve as a temporary buffer and the model again chases equilibrium over time.

Gross domestic product (GDP) from the economic model provides the basis for energy demand calculations.  Energy demand elasticities tend, however, to be quite high.  Thus the physical constraints on the supply side are terribly important in determining the dynamics of the energy model.

IFs distinguishes six energy production categories: oil, natural gas, coal, hydroelectric, nuclear, and other renewables.  For each category both conventional and unconventional sources are considered, but these have only been fully implemented for oil.  IFs computes only aggregated regional or national energy demands and prices, however, on the assumption of high levels of long-term substitutability across energy types and a highly integrated market.  The model also conducts energy trade only in a single, combined energy category.  Finally, at the moment, there is not a full connection between the energy model and access to electricity and electricity production (see the IFs Infrastructure Model Documentation for a description of the electricity aspects of IFs).

Structure and Agent System: Energy

Organizing Structure
Partial market
Capital, resources, reserves
Production, consumption, trade, discoveries, investment
Key Aggregate  Relationships 
(illustrative, not comprehensive)
Production function with exogenous technology change;
Energy demand relative to GDP;
Price determination
Key Agent-Class Behavior  Relationships
(illustrative, not comprehensive)
Government taxes, subsidies

Dominant Relations: Energy

Energy demand (ENDEM) is a function of GDP and the energy demand per unit of GDP (ENRGDP).  Energy production (ENP) is a function of capital stock in each energy type, the capital/output ratio (QE) for that energy type, and a capacity utilization factor (CPUTF).

The following key dynamics are directly linked to the dominant relations:

DEMAND Energy demand per unit of GDP depends on GDP per capita, energy prices, and an autonomous trend in energy efficiency.  The first two of these are computed endogenously, the latter exogenously.  The user can control the price elasticity of energy demand (elasde ) and the autonomous trend in efficiency of energy use (enrgdpgr ).  The user can also use an energy demand multiplier (endemm ) to directly modify energy demand.

PRODUCTION For fossils fuels and hydro, there are upper bounds on production.  For fossil fuels, these are based on reserve production ratios, as well as user-specified upper bounds (enpoilmax , enpgasmax , and enpcoalmax ).  For hydro, the upper bound relates to hydropower potential.  The model user can also control production using an energy demand multiplier (enpm ) to directly modify energy production by energy type.

CAPITAL/OUTPUT RATIO The capital/output (capital/production) ratios for all fuel types decline over time due to technological improvements at rates determined by two user controllable parameters (etechadv and etechadvuncon ).  For fossil fuels, this is counteracted by a factor that increases the capital/output ratio as the amount of remaining resources decreases.  Something similar happens for hydro and other renewables, but here the capital/output ratios increase as production approaches a maximum possible level.  The user can further modify the capital/output ratios with the multipliers (qem and qeunconm ).

CAPITAL Energy capital, by fuel type, is initialized based on the initial levels of production and capital/output ratios.  Energy capital depreciates at a rate determined by the lifetime of energy capital (lke ) and it grows with investment.  Total desired investment in energy capital is influenced by many factors, including existing capital, domestic and global energy demand, the production of other renewables, changes in the global capital/output ratio, world and domestic energy stocks, expected overall profits in the energy sector, and imports.  Users can influence this in the aggregate (via eninvm ) and can also control the effect of expected profits (eleniprof and eleniprof2 ) and world energy stocks (elenpr and elenpr2 ).  Desired investment by energy type increases with individual profit expectations, but also by limits related to reserve production factors (for fossil fuels and hydro), any exogenous restrictions on maximum production (for fossil fuels), ultimate potential (for hydro), and other, unspecified factors (nuclear).  Users can influence the effect of profit expectations by fuel type (via elass ) as well as influence the desired investment by energy type in the aggregate (via eninvtm ).  The user can also specify an exogenous growth rate for energy investment by fuel type (eprodr ).  The economic model ultimately determines whether all of the investment needs can be met; in case of shortfalls, the investment in each type of energy is reduced proportionately.

RESOURCES/RESERVES/STOCKS IFs separately represents ultimate resources and reserves, where the latter are the amount of energy resources available to be produced.  Resources and reserves, both conventional and unconventional, are set in the pre-processor.  The user can modify the default assumptions on ultimate resources, either directly (resor , resoruncon ) or via the use of multipliers (resorm , resorunconm ).  Reserves decline with production and increase with discoveries.  The rate of discovery depends on the ultimate resources remaining, the intensity of current production, world energy prices, and a base rate of discovery (rdi ).  The user can control the effect of world prices on discovery (elasdi ), augment the base rate of discovery (rdinr ), and use a multiplier to affect the rates of discovery (rdm ).  Finally, IFs keeps track of any production not used in the current year, i.e., stocks, and shortages.

ENERGY PRICES Domestic energy prices are influenced by world stocks, domestic stocks, and the ratio of capital to production at the global level.  The user can control the effect of domestic stocks on prices (epra and eprafs ).  Users can also include a “cartel premium” (encartpp ) and a carbon tax (carbtax ).  More directly users can set domestic energy prices exogenously for just the first year (enprixi ) or for multiple future years (enprix ).  The world energy price is calculated as a weighted sum of the domestic prices.

TRADE The energy model also provides representation and control over energy trade.  The levels of imports and exports depend upon levels of production and demand, as well as past propensities to import and export energy.  The user can set maximum limits on of energy imports (enml ) and energy exports (enxl ), as well as general limits on trade (trademax ).

Energy Flow Charts


The production growth process in energy is simpler than that in agriculture or the full economic model.  Because energy is a very capital-intensive sector, production depends only on capital stocks and changes in the capital-output ratio, which represents technological sophistication and other factors (such as decreasing resource bases) that affect production costs.

The key equilibrating variable is again inventories.  It works via investment to control capital stock and therefore production, and via prices to control domestic consumption.  Production and consumption, in turn, control trade.

Specifically, as inventories rise, investment falls, restraining capital stock and energy production, and thus holding down inventory growth.  As inventories rise, prices fall, thereby increasing domestic consumption, which also holds down inventory growth.

Visual representation of the energy production growth process

Energy Production Detail

Energy production is a function of the capital stock in energy and the capital-output ratios, modified by a capacity utilization factor and exogenous multipliers and production limits.  The capital-output ratios are affected by the amount of remaining resources as a share of the initial levels, technological progress, and user-controlled multipliers.  The capacity utilization factor is influenced by domestic stocks and shortages.

Visual representation of energy production

Energy Capital and Investment Detail

The capital stock by energy type decreases with depreciation and grows with investment.  Investment or growth in the capital stock, while affected by numerous factors, is driven heavily by energy profits and stocks (unless the user intervenes with a scenario multiplier), and constrained by the reserves available of each specific energy type and production constraints.  The user can use a direct multiplier on total energy investment, multipliers on energy investment by energy type to influence investment, or specify a desired rate of growth in investment by energy type.

Visual representation of energy capital and investment

Energy Demand Detail

Energy demand is estimated as a function of the energy demand per unit GDP (in PPP terms) and total GDP (in PPP terms), with adjustments related to energy prices and improvements in energy use efficiency.  The energy demand per unit GDP depends on GDP per capita (in PPP Terms).  The improvement in energy use efficiency is a combination of autonomous trend in efficiency of energy use (enrgdpgr ) and an additional amount that accelerates the improvements for (non-exporting) countries that have efficiencies below the global average.  The price effect takes into account both the domestic and global prices of energy, as well as any carbon tax (carbtax ).  The user can control the price elasticity of energy demand (elasde ) and the historical weight used to smooth energy prices (ehw ).  Finally, the user can also use an energy demand multiplier (endemm ) to directly modify energy demand.

Visual representation of energy demand

Energy Resources and Reserves Detail

IFs distinguishes between ultimate resources and reserves, where the latter represent the amount of energy actually discovered and available for production.  Ultimate resources are initially determined in the pre-processor, but the user can override these estimates using either absolute values (resor , resoruncon ) or multipliers (resorm , resorunconm ).  There is also a parameter controlling the portion of unconventional oil that is economic to produce (enresorunce ).  For non-renewable energy types, i.e., fossil fuels, reserves increase with discoveries and decrease with production.  The rate of discovery includes a base rate (rdi ) and an annual increment (rdinr ).  There are further adjustments related to the world energy price, the remaining resources, and the current rate of production.  The user can control the effect of world prices on discovery (elasdi ) and can also intervene with a discovery multiplier (rdm ).
Visual representation of energy resources and reserves

Energy Equations


This section of the Help system will present and discuss the equations that are central to the functioning of the energy model: supply, demand, trade, stocks, price, investment, economic linkages, capital, natural resources and energy indicators.  Here we follow the order of calculations in all years but the first, noting specific calculations that are made in the first year or pre-processor as necessary.

Energy Demand

The key energy demand variable in IFs, ENDEM, tracks total primary energy demand.  For the most part, IFs does not represent the transformation of this primary energy into final energy forms, or end-user energy demand.  The one exception relates to electricity use, which is described in the documentation of the Infrastructure model.

In the first year, total primary energy demand is calculated as an apparent demand, with attention paid to stocks and expected growth in production.

$ ENDEM_{r,t=1}=\sum_eENP_{r,e,t=1}+ENM_{r,t=1}-ENX_{r,t=1}-ENST_{r,t=1}*AVEPR_{r,t=1} $


  • ENP, ENM, ENX, ENST, and AVEPR are energy production, energy imports, energy exports, energy stocks, and an average of the expected growth in production across all energy types.  The calculations of the initial values of these variables are described later in the Equations section under the appropriate headings.

Note that this calculation does not directly use the historical data on total primary energy demand and there can be a significant difference between the initialized value of ENDEM and the actual historical data for the base year.  This information is used by the variable ENDEMSH, which is described in the Infrastructure documentation.

In future years, the calculation of total primary energy demand begins with an estimate of the predicted amount of energy demand per unit of GDP (in PPP terms), compendemperunit, as a function of GDP per capita (in PPP terms).[1] This function is show in the figure below[2]:
Total primary energy demand

A small amount, 0.0005, is added to this computed value to account for the fact that the demand data used to estimate the function above is less than apparent demand globally.

The initial data for countries is unlikely to fall exactly on this function.  To reconcile this fact, IFs calculates values for both predicted energy demand per unit GDP in the first year, compendemperuniti, and empirical demand per unit GDP (in PPP terms) in the first year, actendemperuniti.  Over a time period controlled by the parameter enconv , IFs gradually adjusts the difference between these two values so that the estimate of energy demand per unit GDP (in PPP terms) eventually does fall on the function.

IFs then calculates an initial estimate of total energy demand, endemba, by multiplying this adjusted value of energy demand per unit GDP (in PPP terms), endemperunit, by GDP (in PPP terms).[3]

$ endemba_r=GDPP_r*endemperunit_r $

IFs then considers the effect of price on total primary energy demand.  IFs keeps track of the global energy price as both an index (WEP, base year = 100) and as an actual dollar value (WEPBYEAR, $ per BBOE). It also tracks a country level energy price index (ENPRI, base year =100).[4]  Finally, it can also consider a tax on carbon, expressed by the variable CarTaxEnPriAdd, which has the units $ per BBOE.

The calculation of the effect of prices on total energy begins with the calculation of a variable called renpri.  renpri is a moving average country-level price index that starts at the level of the country level price index in the base year, ENPRII, and then tracks changes in world energy prices and country-level carbon taxes.[5]  The historical weight is controlled by the parameter ehw , so that:

$ renpri_{r,t}=\mathbf{ehw}*renpri_{r,t-1}+(1-\mathbf{ehw})*(WEP_{t-1}+CarTaxEnPriAdd_{r,t-1}*\frac{WEP_{t=1}}{WEPBYEAR_{t=1}}) $


  • renpri is the moving average country level price index
  • ehw is the weight given to the historical value of renpri
  • WEP is the global energy price index
  • WEPBYEAR is the global energy price in $ per BBOE
  • CarTaxEnPriAdd is the country level carbon tax in $ per BBOE of total energy and is calculated as the exogenous value of the carbon tax in $ per ton of carbon, carbtax , times a production weighted average of the carbon contents of oil, gas, and coal, carfuel1-3 :
$ CarTaxEnPri_r=\frac{\sum_e(ENP_{r,e}*\mathbf{carfuel_e})}{\sum_eENP_{r,e}}*\mathbf{carbtax_r} $

The parameter specifying the price elasticity of energy demand, elasde , is adjusted based on the relationship between renpri and and ENPRII to yield a new parameter, elasadjusted.

$ elasadjusted_r=\mathbf{elasde_r}*\frac{ENPRII_r}{renpri_r} $

This, in effect, decreases the price elasticity of energy demand as prices increase.

This adjusted elasticity is then used to calculate the impact on energy demand, elasterm, as

$ elasterm_r=1+\frac{renpri_r+ENPRII_r}{ENPRII_r}*elasadjusted_{r^6} $

The user can also introduce a further adjustment to total primary energy demand with a multiplier, endemm , yielding:

$ ENDEM_r=endemba_r*elasterm_r*\mathbf{endemm_r} $

IFs makes a final adjustment to total primary energy demand related to changes in energy efficiency of the economy unrelated to prices.[6] All countries receive an annual boost in energy efficiency related to technology given by the parameter enrgdpr .  In addition, if a country is not a major energy exporter and its economy is less energy efficient than the global average, measured as ENDEM divided by GDP (in PPP terms)[7], it gets an additional boost to its energy efficiency.  This effect is cumulative, so ENDEM is adjusted as follows:

$ ENDEM_r=ENDEM_r*(1+\frac{EnRGDPGRCalc_r}{100})^{iy} $


  • EnRGDPGRCalc is the annual average boost in energy efficiency
  • iy is the number of years since the base year plus 1

Finally, IFs makes an initial estimate of energy use per unit GDP in MER terms, ENRGDP.  An estimate of GDP based on the previous year’s GDP in MER terms and a growth rate is used due to the order of calculations, but this is corrected later in the model sequence.

[1] Here, IFs uses GDP from the previous time cycle, with an estimate of growth, to calculate GDPPCP, because the recursive structure of IFs computes current GDP later.  The current value of population, POP, has already been computed at this stage.

[2] The exact equation is compendemperunit = 0.0023428 -0.0003878*ln(GDPPCP).

[3] Again, IFs uses GDP from the previous time cycle here, because the recursive structure of IFs computes current GDP later.

[4] The model also has a variable representing the price index in each economic sector, one of which is energy. This value is stored in the variable PRI, which uses an index value of 1 in the base year.  ENPRI and PRI (energy) track each other, with former having a value 100 times that of the latter due to the different initial index values.

[5] Because energy prices and carbon taxes are computed later in the model sequence, the previous year’s values are used here.

[6] This is generally referred to as autonomous energy efficiency improvement, or aeei.

[7] An estimate of this year’s GDPP based on the previous year’s GDPP and a growth rate is used here due to the order of calculations.

Energy Supply

The computation of energy production (ENP) is considerably easier than that of gross sectoral production in the economic model or of agricultural production in the agricultural model.  Only capital is considered important as a factor of production (not labor, land, or even weather).  Energy production is initially estimated by dividing the quotient of capital in each energy category (ken) and the appropriate capital-to-output ratio (QE).  A multiplier, enpm , can be used to increase or decrease production.  This yields:

$ ENP1_{r,e}=\frac{ken_{r,e}}{QE_{r,e}}*\mathbf{enpm_{r,e}} $

The dynamics of the capital-to-output ratios, QE, are discussed in this section.

Known reserves (RESER) and exogenously specified maximums pose constraints on production of certain energy types.  The affected energy types are oil, gas, coal, and hydro.  The impact of reserves is felt via a limit on the fraction of reserves that can be produce in any year. Specifically, the reserve-to-production ratio may not fall below the value of prodtf , which is initially set in the pre-processor, but can be overridden by the user.  In addition, as the actual reserve-to-production ratio approaches this limit, its rate of decrease is limited.  The exogenously specified maximums apply only to oil, gas, and coal, and are given by the parameters enpoilmax , enpgasmax , and enpcoalmax .  This yields a second estimate for energy production, given as:

$ ENP2_{r,e}=MIN(\frac{RESER_{r,e}}{MAX(\mathbf{prodtf}_{r,e},sResProdR_{r,e}-1)},enpmax_{r,e}) $


  • e only applies to oil, gas, coal, and hydro
  • enpmax takes on the value enpoilmax , enpgasmax , and enpcoalmax ,depending upon the fuel.
  • sResProdR is the reserve-to-production ratio from the previous year; this limit only takes effect when sResProdR falls below 30 and remains above prodtf

IFs then selects the minimum of ENP1 and ENP2 as the estimate of energy production ENP.  The dynamics of energy reserves are discussed in this section.

Two final adjustments are made to energy production.  The first accounts for capacity utilization, CPUTF, and the second only comes into play when a restriction is placed on energy exports.  Since these are not calculated until the calculation of energy stocks and shortages, they are described in the appropriate places in the Domestic Energy Stocks section and the Energy Prices and Final Adjustments section. 

Energy Trade

The energy model in IFs keeps track of trade in energy in physical quantities; the trade in energy in monetary terms is handled in the economic model.  As opposed to the agricultural model, where trade in crops, meat, and fish are treated separately, the energy model considers trade in energy in the aggregate.  Furthermore, it only considers production from oil, gas, coal, and hydro as being available for export.  Finally, as with other aspects of trade, IFs uses a pooled trade model rather than representing bilateral trade.

The first estimate of energy imports and exports by country are determined based upon a country’s propensity to export, propensity to import, and moving averages of its energy production and demand.

The moving average of energy production, identified as smoothentot, is calculated simply as a moving average of production of energy from oil, gas, coal, and hydro. In the first year of the model:

$ smoothentot_{r,t=1}=EnTot_{r,t=1}=\sum_eENP_{r,e,t=1} $


  • e is oil, gas, coal, and hydro

In future years,

$ smoothentot_{r,t}=0.9*smoothentot_{r,t-1}+0.1*\sum_eENP_{r,e,t} $


  • e is oil, gas, coal, and hydro

The moving average of energy demand, identified as smoothpendem has a few more nuances, particularly after the first year.  In the first year, IFs calculates:

$ smoothpendem_{r,t=1}=ENDEM_{r,t=1} $

In future years, rather than using the value of ENDEM calculated earlier, the model uses a slightly different measure of energy demand, referred to as pendem.  pendem differs from ENDEM in two main ways:

1. rather than using the moving average country-level price index, renpri, to calculate the effect of prices on energy demand, it uses only current values:

$ PEnPri_{r,t}=WEP_{t-1}+CarTaxEnPriAdd_{r,t-1}*\frac{WEP_{t=1}}{WEPBYEAR_{t=1}} $

2. it does not include the additional boost in energy efficiency beyond enrgdpr in calculating the autonomous changes in energy efficiency

Thus, in future years, we have

$ smoothpendem_{r,t}=0.8*smoothpendem_{r,t-1}+0.2*pendem_{r,t} $

A country’s propensities to import and export energy are given by the variables MKAVE and XKAVE.  These are moving averages of the ratios of imports to an import base related to energy demand and exports to an export base related to energy production and demand, respectively.  MKAVE is initialized to the ratio of energy imports to energy demand in the first year.  A maximum value, MKAVMax is also set at this time to the maximum of 1.5 times this initial value or the value of the parameter trademax .  XKAVE is initialized to the ratio of energy exports to the sum of energy production from oil, gas, coal and hydro and energy demand from all energy types in the first year.  Its maximum value, XKAVMAX is set to the maximum of this initial value and the parameter trademax .  The updating of MKAVE and XKAVE occur after the calculation of imports and exports, so we will return to that at the end of this section.

The initial estimates of energy exports, ENX, and energy imports, ENM, are calculated as:

$ ENX_r=MIN(XKAVE_r,XKAVMAX_r)*exportbase_r $
$ ENM_r=MIN(MKAVE_r*pendem_r,MKAVMAX_r*smoothpendem_r) $


$ exportbase_r=smoothentot_r+smoothpendem_r $

At this point, IFs makes some adjustments to energy imports and exports depending upon whether a country is considered in energy surplus or deficit.  Where a country sits in this regard involves considering domestic and global stocks in addition to current production and demand.

Domestic energy stocks are computed as the sum of stocks carried over from the previous year, while also considering any shortages

$ stocks_{r,t}=ENST_{r,t-1}-ENSHO_{r,t-1} $

A stock base is also calculated as 

$ StBase_r=smoothpendem_r+smoothpendemr $

The ratio of stocks to StBase can be defined as domesticstockratio. A moving average of a trade base, smoothtradebase, is also calculated for each country:

$ smoothtradebase_{r,t}=MAX(ENDEM_r,0.9*smoothtradebase_{r,t-1}+0.1*2*(ENX_r+ENM_r)) $


$ smoothtradbase_{r,t+1}=MAX(ENDEM_{r,t=1},2*(ENX_{r,t=1}+ENM_{r,t=1})) $

Global energy stocks, GlobalStocks, and the global stock base, GlobalStBase, are the sum of the domestic stocks and stock bases across countries, and the value of the globalstockratio is defined as GlobalStocks divided by GlobalStBase.

For each country, the level of deficit or surplus, endefsurp, is calculated as:

$ endefsurp_r=(globalstockratio-domesticstockratio_r)*StBase_r $

This implies that if a countries stock ratio is less (greater) than the global average, it is considered in deficit (surplus).

If a country is in deficit, i.e., endefsurp > 0, IFs will act to reduce its exports and increase its exports.  The recomputed value of exports is:

$ ENX_r=MAX(0.5*ENX_r,ENX_r*(1-\frac{endefsurp_r}{smoothtradebase_r})) $

In words, the decrease in energy exports is determined by the ratio of the level of deficit to the smoothed trade base, but can be no greater than 50 percent.

The recomputed value of imports is:

$ ENM_r=ENM_r*(1+\frac{endefsurp_r}{smoothtradebase_r}) $

with a maximum level given as:

$ ENMMax_r=ENM_r+(\frac{pendem_r*MKAVMAX_r-ENM_r}{5}) $

Similarly, if a country is in surplus, i.e., endefsurp < 0, IFs will act to increase exports and reduce imports.  The amount of increase in exports is controlled, in part, by the exchange rate for the country, EXRATE, specifically its difference from a target level of 1 and its change from the previous year.  As with other adjustment factors of this type, the ADJSTR function is used, yielding a factor named mul.  After first multiplying ENX by a value that is bound from above by 1.05 and from below by the maximum of 0.95 and mul, the recomputed value of ENX is:

$ ENX_r=ENX_r*(1-\frac{endefsurp_r}{smoothtradebase_r}) $

Here, a maximum level is given as:

$ ENXMax_r=ENX_r+(\frac{exportbase_r*XKAVMAX_r-ENX_r}{5}) $

where this maximum value is computed prior to the adjustments to ENX noted above.

The recomputed value of imports is:

$ ENM_r=MAX(0.5*ENM_r,ENM_r*(1+\frac{endefsurp_r}{smoothtradebase_r})) $

In words, the decrease in energy imports is determined by the ratio of the level of surplus to the smoothed trade base, but can be no greater than 50 percent.

Because of the frequent use and importance of government trade restrictions in energy trade, model users may want to establish absolute export (enxl )  or import (enml ) limits, which can further constrain energy exports and imports.  An export constraint may also affect the production of oil and gas as described in the next section.

As it is unlikely that the sums of these values of ENX and ENM across countries will be equal, which is necessary for trade to balance.  To address this, IFs computes actual world energy trade (WET) as the average of the global sums of exports and imports.

$ WET=\frac{\sum_rENX_r+\sum_rENM_r}{2} $

and recomputes energy exports and imports, as:

$ ENX_r=WET*\frac{ENX_r}{\sum_rENX_r} $
$ ENM_r=WET*\frac{ENM_r}{\sum_rENM_r} $

This maintains each country’s share of total global energy exports and imports.

IFs can now update the moving average export (XKAVE) and import (MKAVE) propensities for the next time step.  This requires historic weights for exports (xhw ) and imports (mhw ), yielding the equations:

$ XKAVE_{r,t+1}=XKAVE_r*\mathbf{xhw}+(1-\mathbf{xhw})*\frac{ENX_r}{exportbase_r} $
$ MKAVE_{r,t+1}=MKAVE_r*\mathbf{mhw}+(1-\mathbf{mhw})*\frac{ENM_r}{smoothpendem_r} $

A further adjustment is made related to the import propensity, MKAVE, related to the difference between this propensity and a target level, ImportTarget, and the change in this difference since the previous year.  This target starts at the level of MKAVE in the first year and gradually declines to 0 over a 150 year period.  As in many other situations in IFs, this process makes use of the ADJUSTR function to determine the adjustment factor.  The value of mulmlev is not allowed to exceed 1, so its effect can only be to reduce the value of MKAVE.

Finally, XKAVE and MKAVE are checked to make sure that they do not exceed their maximum values, XKAVMAX and MKAVMAX, respectively.

[1] The previous year’s values of WEP and CarTaxEnPriAdd are used as the current year’s values are not calculated until later in the model sequence. 

Domestic Energy Stocks

IFs sets a target for energy stocks in each country as a fraction of a domestic stock base, StBase, which was defined earlier as the sum of a moving average of energy demand, smoothpendem, and a moving average of the production of oil, gas, coal, and hydro, smoothentot.  This fraction is defined by the parameter dstlen .

Stocks are initialized in the first year as dstlen multiplied by the initial domestic stock base, which is the sum of production of all energy types and an estimated value of apparent energy demand.

$ ENST_{r,t=1}=\mathbf{dstlen}*(\sum_cENP_{r,e,t=1}+ENDEMEst_{r,t=1}) $


  • e includes all energy types
  • ENDEMEst is calculated as:
$ ENDEMEst_r=(1-\mathbf{dstlen}*AVEPR_r)*\sum_eENP_{r,e,t=1}+ENM_{r,t=1}-ENX_{r,t=1}) $


  • e includes all energy types
  • AVEPR is a weighted average energy production growth rate

In future years, IFs begins by summing the moving average energy demand, smoothpendem, across countries, storing this value as WENDEM and the same for moving average energy production from oil, gas, coal, and hydro, smoothentot, which it stores as WorldEnp.  It also sums the moving average energy demand just for countries that have low propensity for exports, XKAVE < 0.2, and stores this value as WEnDemIm.

At this point, IFs adjusts energy production by multiplying by a capacity utilization factor, CPUTF, which is assumed to be the same for all energy types in a country.

$ ENP_{r,e}=ENP_{r,e}*CPUTF_r $ [1]

The value of CPUTF is initialized to 1 in the first year.  How it changes in time is described in the next section after the description of the calculation of the domestic price index.

An initial estimate of energy stocks, ENST, is then calculated as the previous year’s stocks augmented by production and imports and reduced by use and exports

$ ENST_r=ENST_{r,t-1}+-ENDEM_r-ENX_r $

If after this calculation, there are excess stocks, i.e., ENST > dstlen * StBase, and there is an export constraint, given by enxl , adjustments are made to the production of oil and gas[2], and, in turn, to energy stocks.  The total reduction in oil and gas production is given as the amount of excess stocks, with a maximum reduction being the total amount of oil and gas production.  This total amount of reduced production is then shared proportionately between oil and gas.  The total reduction is also removed from ENST.

Later, after the determination of prices, ENST is modified to: 1) ensure that they are not less than zero and 2) to account for any global shortfalls.  These modifications are described in the next section.

[1] This is the first of the two adjustments to energy production noted at the end of the Energy Supply section.

[2] This is the second of the two adjustments to energy production noted at the end of the Energy Supply section.

Energy Prices and Final Adjustments to Domestic Energy Stocks and Capacity Utilization

IFs keeps track of separate domestic, ENPRI, and world, WEP, energy price indices, that apply to all forms of energy.  These are initialized to a value of 100 in the first year.  It also tracks the world energy price in terms of dollars per BBOE, WEPBYEAR, which is initialized as a global parameter.

A number of pieces are needed for the calculation of energy prices.  These include a world stock base, wstbase, world energy stocks, wenst, world energy production by energy type, WENP, world energy capital, WorldKen, and a global capital output ratio, wkenenpr.  These are calculated as follows:

$ wstkbase=\sum_rStBase_r $
$ wenstks=\sum_r(ENST_r-ENSHO_{r,t-1}) $
$ WENP_e=\sum_rENP_{r,e} $
$ WorldKen=\sum_r\sum_e(ken_e*\frac{CPUTF_r}{MAX(5,\mathbf{lke_e})}) $
$ wkenenpr=\frac{WorldKen}{WorldEnp} $


  • ENSHO is domestic energy shortage (described below)
  • ken is capital for each energy type
  • lke is the average lifetime of capital for each energy type

In cases when at least one country has an exogenous restriction on the production of oil, i.e., enpm(oil) < 1 for at least one country, a few additional variables are calculated:

$ GlobalShortFall=\sum_r\sum_eMax(0,ENP_{r,e,t-1}-1.05*ENP_{r,e,t}) $
$ WorldEnProd=\sum_eWENP_e $
$ ShortFallSub=GlobalShortFall*MIN(10,\frac{WorldEnProd}{WENP(oil)}) $

Otherwise these three variables all take on a value of 0.

These values are used to calculate an adjustment factor driven by global energy stocks that affects domestic energy prices.  The effect in the current year, wmul, is calculated using the ADJSTR function, which looks at the difference between world energy stocks, wenstks and the desired level, given by dstlen * wstbase, and the change in world energy stocks from the previous year.  The presence of an exogenous restriction on the production of oil has two effects on the calculation of wmul.  First, the value of ShortFallSub affects the two differences that feed into the ADJSTR function.  Second, the elasticities applied in the ADJSTR function are tripled.

The adjustment factor calculated in the current year is not applied directly to the calculation of domestic energy prices.  Rather, a cumulative value, cumwmul, is calculated as:

$ cumwmul_t=cumwmul_{t-1}*(1+(wmul-1)*\mathbf{eprohw}) $

Other factors affect the domestic energy price index – domestic energy stocks, possible cartel price premiums, encartpp , the first year value of the world energy price index, IWEP, changes in the global capita output ratio from the first year, whether the user has set a global energy price override. enprixi, and whether there are any restriction on oil production.

The domestic energy stocks affect a country-specific “markup” factor, MarkUpEn.  This starts at a value of 1 and changes as a function of the value of mul, which is calculated using the ADJSTR function.  Here the differences are those between domestic energy stocks and desired stocks, given as dstlen * StBase, and the changes in energy stocks from the previous year.  Shortages from the previous year are also taken into account.  The user can also control the elasticities used in the ADJSTR function with the parameters epra and eprafs .  This markup evolves over time as

$ MarkUpEn_{r,t}=MarkUpEn_{r,t-1}*mu $

The domestic energy price index, ENPRI, is first calculated as:

$ ENPRI_r=\mathbf{X}*mul_r*cumwmul+\mathbf{encartpp} $


  • X = enprixi, when this parameter is set to a value greater than 1 and IWEP otherwise

It is then recomputed as:

$ ENPRI_r=MIN(ENPRI_r,ENPRI_{r,t-1}+\mathbf{encartpp}_t-\mathbf{encartpp}_{t-1}+\mathbf{X}) $


  • X is 100 whenthere is a restriction on oil production in at least one country and 20 otherwise

Furthermore, ENPRI is not allowed to fall by more than 10 in a given year.

It is possible for the user to override this price calculation altogether.  Any positive value of the exogenous country-specific energy price specification (enprix ) will do so.

It is only now that a country’s energy stocks and shortages are finalized for the current year.  If ENST is less than 0, then a shortage is recorded as ENSHO = -ENST and ENST is set to 0.  In addition, for countries that have a low propensity for exports, XKAVE < 0.2, a share of any global shortfall is added to their shortage, with the share determined by the country’s share of moving average energy demand among those countries:

$ ENSHO_r=ENSHO_r+GlobalShortFall*\frac{smoothpendem_r}{WEnDemIm} $

The energy shortage enters the Economic model in the calculation of gross sectoral production.

The same differences in domestic stock from their target level and their change since the previous year, taking into account shortages from the previous year, are used to update the value of capacity utilization in energy, CPUTF, which was introduced earlier.  The multiplier affecting CPUTF, Mul, is calculated using the ADJSTR function, with elasticities given by elenpst and elenpst2 .  In addition, the capacity utilization is smoothed over time.

$ CPUTF_{r,t}=0.5*CPUTF_{r,t-1}+0.5*Mul $

This value is further assumed to converge to a value of 1 over a period of 100 years and is bound to always have a value between 0.2 and 2.

This still leaves the need to calculate the world energy price.  IFs actually tracks a world price including carbon taxes, WEP, and a world price ignoring carbon taxes, WEPNoTax.  Carbon taxes are ignored in cases where the energy price is set exogenously using enprix .

In both cases, the world energy price is a weighted average of domestic energy prices:

$ WEP=\frac{TENP}{TENPRI} $
$ WEPNoTax=\frac{TENP}{TENPRINoTax} $


$ TENP=\sum_r\sum_eENP_{r,e} $
$ TENPRINoTax=\sum_r\sum_e(ENPRI_r*ENP_{r,e}) $
$ TENPRI=\sum_r\sum_e((ENPRI_r+CarTaxEnPriAdd_r*\frac{WEP_{t=1}}{WEPBYEAR_{t=1}})*ENP_{r,e}) $


  • WEP and WEPBYEAR convert CarTaxEnPriAdd from $/BBOE to an index value
  • the term with CarTaxEnPriAdd is ignored in countries with exogenous energy prices in a given year
  • CarTaxEnPriAdd is 

Finally, the value of WEPBYEAR is computed as:

$ WEPBYEAR=WEPBYEAR_{t=1}*\frac{WEP}{WEP_{t=1}} $

Energy Investment

Investment in energy is relatively complex in IFs, because changes in investment are the key factor that allows us to clear the energy market in the long term.  It is also different and perhaps slightly more complex in IFs than investment in agriculture.  Whereas the latter involves computing a single investment need for agricultural capital, and subsequently dividing it between land and capital, in energy a separate demand or need is calculated for each energy type, based on profit levels specific to each energy type.

We begin by calculating a total energy investment need (TINEED) to take to the economic model and place into the competition for investment among sectors.  This investment need is a function of energy demand, adjusted by a number of factors, some global and some country-specific. To begin with, TINEED is calculated as

$ TINEED_r=ENDEM_r*mulendem*\frac{wkenenpri_t}{wkenenpri_{t-1}}*mulkenenpr*mulwst*mulstocks^{0.5}*mulrprof_r*mulrenew_r*sendeminvr_r $


  • mulendem is the ratio of global energy demand per unit GDP in the current year to that in the previous year
$ mulkenenpr=\frac{WENDEM_t/WGDP_t}{WENDEM_{t-1}/WGDP_{t-1}} $
  • wkenenpri is the ratio of global energy capital to global energy production
$ wkenenpr=\frac{WorldKen}{WorldEnp} $
  • mulkenenpr is the ratio of wkenenpr in the current year to that in the previous year
$ mulkenenpr=\frac{wkenenpr_t}{wkenenpr_{t-1}} $
  • mulwst and mulstocks are factors related to global energy stocks. mulwst is calculated using the ADJSTR function, where: the first order difference is that between global energy stocks, wenstks, and desired global energy stocks, DesStocks = dstlen * wstbase; the second order difference is between the level of world energy stocks in the current year and those in the past year; and the elasticities are given by the parameters elenpr and elenpr2 . mulstocks is also related to global energy stocks, but is more directly related to the desired level of global energy stocks:
$ mulstocks=\frac{DesStocks}{MAX(0.5*DesStocks,MIN(4*DesStocks,enstks))} $

Note that mulstocks will always take on a value between ¼ and 4.

  • mulrprof is a function of the expected level of profits in the energy sector as a whole in a country, EPROFITR.  Energy profits are calculated as the ratio of returns, EnReturn, to costs, ProdCosts.  EPROFITR is actually a moving average of these profits relative to those in the base year, with a historical weighting factor controlled by the parameter eprohw .  In full, we have:
$ EnReturn_r=WEPNoTax*\sum_eENP_{r,e} $ [1]
$ ProdCost_r=\sum_e\frac{ken_{e,r}}{MAX(5,\mathbf{lke_e})} $
$ EnReturn_r=\frac{EnReturn_r}{ProdCost_r} $
$ EPROFIT_{r,t}=\mathbf{eprohw}*EPROFIT_{r,t-1}+(1-\mathbf{eprohw})*\frac{EnReturn_{r,t}}{EnReturn_{r,t=1}} $

We can now calculate mulrprof using the ADJSTR function.  The first order difference is between the current value of EPROFITR and a target value of 1; the second order difference is the change in the value of EPROFITR from the previous year; the elasticities applied to these differences are given by the parameters eleniprof and eleniprof2 .

  • mulrenew is a function of the share of other renewables in the energy mix in a country.  It is assigned a value of 1 unless the production of energy from renewables exceeds 70% of total energy demand.  If so, we have:
$ mulrenew_r=MAX(0.5,1-(\frac{ENP_{r,renew}}{ENDEM_r}-0.7)*1) $

Given these conditions, mulrenew can take on values between 0.5 and 1, with larger values associated with larger amounts of renewable production.

  • sendeminvr is a moving average of the ratio of investment need to energy demand in a country, with an accounting for changes in the global capital production ratio since the first year and is updated as[2]:
$ sendeminvr_{r,t+1}=0.95*sendeminvr_{r,t}+0.05*\frac{TINEED_{r,t}}{ENDEM_{r,t=1}}*\frac{wkenenpr_{t=1}}{wkenenpr_t} $

After this initial calculation, two further adjustments are made to TINEED.  The first is a reduction related to a possible reduction of inventory, invreduc, carried over from the previous year.  The calculation of invreduc is described later in this section, where we look at reductions in investment in specific energy types due to resource constraints or other factors. The effect on TINEED is given as:

$ TINEED_r=TINEED_r-MIN(0.7*invreduc_{r,t-1},0.6*TINEED_r) $

Thus, the reduction in TINEED can be no more than 60 percent.

Finally, the user can adjust TINEED with the use of the multiplier eninvm .

Before this total investment need, TINEED, is passed to the Economic model, there is a chance that it may need to be further reduced.  This depends on the calculation of a bound, TINeedBound.  TINeedBound arises from a bottom-up calculation of the investment needs for each energy type individually, ineed.  These depend upon the profits for each energy type and any possible bounds on production related to reserves and other factors.

As with the estimate of total profits to energy, the returns by energy type depend upon production and costs. 

$ EnReturnS_{r,e}=\frac{ENP_{r,e}}{EnCost_{r,e}} $

For the non-fossil fuel energy types – hydro, nuclear, and other renewable – EnCost is based solely on capital depreciation

$ EnCost_{r,e}=\frac{ken_{r,e}}{\mathbf{lke_e}} $


  • e = hydro, nuclear, renew

For the fossil fuel energy types – oil, gas, and coal – we must also consider any possible carbon taxes. EnCost is calculated as 

$ EnCost_{r,e}=\frac{ken_{r,e}}{\mathbf{lke_e}}+ENP_{r,e}*\mathbf{carfuel}_e*\mathbf{carbtax}_r+MAX(-0.5*\frac{ken_{r,e}}{\mathbf{lke_e}},ENP_{r,e}*(\mathbf{carfuel}_e-AvgCarFuel)*emtax_r) $


  • e = oil, coal, gas
  • carfuel is the carbon content of the fuel in tons per BBOE
  • AvgCarFuel is the unweighted arithmetic average of the carbon content of oil, gas, and coal
  • carbtax is an exogenously specified country-specific carbon tax in $ per BBOE
  • emtax is the number of years since the first year plus one multiplied by 2

The change in eprofitrs from the first year is then calculated as:

$ eprofitrs_{r,e}=\frac{EnReturnS_{r,e,t}}{EnReturnS_{r,e,t=1}} $

An average return, avgreturn, is calculated as the weighted sum of the individual returns:

$ avgreturn_r=\sum_e(ENP_{r,e}*EnReturnS_{r,e})smoothentot_r $

Investment need by energy type, ineed, grows in proportion to capital and as a function of relative profits.

$ ineed_{r,e,t}=ineed_{r,e,t=1}*\frac{ken_{r,e,t}}{ken_{r,e,t=1}}*eprofitrs^{elass_{r,e}}_{r,e} $


  • elass are country and energy-specific user controlled parameters

At this point, ineed is checked to make sure that it does not fall by more than 20% or increase by more than 40% in any single year. 

Also, if the user has set an exogenous target for production growth, i.e., eprodr > 0, all of the above is overridden and ineed is calculated as:

$ ineed_{r,e}=\frac{ken_{r,e}*(1+\mathbf{enprodr}_e)}{\mathbf{lke}_e} $

These investment needs are checked to make sure that they do not exceed what the known reserve base can support.  This applies only to oil, gas, coal, and hydro. An initial estimate of the maximum level of investment is given by:

$ maxinv_{r,e}=(\frac{RESER_{r,e}}{\mathbf{prodtf}_{r,e}}-\frac{ken_{r,e}}{QE_{r,e}}+\frac{ENP_{r,e}}{\mathbf{lke}_e})*QE_{r,e} $


  • e = oil, gas, coal, or hydro

The first term in parentheses, when multiplied by QE, indicates the amount of capital that would be necessary in order to yield the maximum level of production given the lower bound of the reserve production ratio, prodtf . The second term is simply the current level of capital and the third term indicates the level of depreciation of existing capital.  This implies that countries will not make investments beyond those that would give it the maximum possible level of production for a given energy type.

At the same time, IFs assumes there is a minimum level of investment, which is basically 30% of the capital depreciated during the current year:

$ mininv_{r,e}=0.3*\frac{ENP_{r,e}}{\mathbf{lke}_e}*QE_{r,e} $


  • e = oil, gas, coal, or hydro

In cases where the current production of oil, gas, or coal already equals or exceeds the exogenously specified maximum for a country – enpoilmax , enpgasmax , or enpcoalmax – maxinv is set equal to mininv.  This again avoids useless investment.

A further constraint is placed on the maximum investment level in capital for hydro production.  This is done by simply replacing RESER/prodtf in the calculation of maxinv with the value ENDEM * EnpHydroDemRI * 2, where EnpHydroDemRI is the ratio of energy produced by hydro in the base year to total energy demand in that year.  In other words, the growth in energy production from hydro in the current year from the first year cannot exceed twice the growth in total energy demand over that period, even if reserves are available, and capital investments are restricted accordingly. 

$ maxHydroProd_{r,t}=2*\frac{ENDEM_{r,t}}{ENDEM_{r,t=1}}*ENP_{r,Hydro,t=1} $

The constraints placed on investment in nuclear energy differ somewhat from these other fuels. IFs does not have an explicit measure of reserves for nuclear.  Rather, it is assumed that the growth in capital in nuclear energy cannot exceed 1 percent of existing capital plus whatever is required to account for depreciation:

$ maxinv_{r,e}=(0.01*\frac{ken_{r,e}}{QE_{r,e}}+\frac{ENP_{r,e}}{\mathbf{lke}_e})*QE_{r,e} $


  • e = nuclear

Also, the minimum level of investment for nuclear energy is assumed to be 50 percent of the capital depreciated in the current year, rather than 30 percent as with oil, gas, coal, and hydro.

There is no limit to the investments in capital for other renewables.

Given these restrictions, the investment needs for oil, gas, coal, hydro, and nuclear are updated so that mininv <= ineed <= maxinv.  Any reductions from the previous estimates of ineed are summed across energy types to yield the value of invreduc, which will affect the estimate of TINEED in the following year as described earlier.

The final estimates of ineed for each energy type are summed to yield TINeedBound.  If TINEED is greater than TINEEDBOUND, then TINEED is recalculated as the average of the two:

$ TINEED_r=0.5*(TINEED_r+TINeedBound_r) $

This value of TINEED is passed to the Economic model as IDSenergy

$ IDS_{r,s=energy}=sidsf_r*TINEED_r $


  • sidsf is an adjustment coefficient converting units of energy capital into monetary values. This gradually converges to a value of 1 after a number of years specified by the parameter enconv .

In the Economic model, the desired investment in energy must compete with other sectors for investment (see more about linkages between the Energy and Economic models in section 3.7).  Once these sectoral investments are determined, a new value for investments in the energy sector, IDSs=energy, is passed back to the Energy model.  The adjustment coefficient is then applied to yield:

$ inen_r=\frac{IDS_{r,s=energy}}{sidsf_r} $

In the meantime, the desired investment for each energy type can be modified with a country and energy-type specific parameter eninvtm , and a new value of TINEED is calculated as the sum of these new levels of desired investment.  The amount of the available investment, inen, going to each energy type is then calculated as:

$ ineed_{r,e}=inen_r*\frac{ineed_{r,e}*\mathbf{eninvtm}_{r,e}}{TINEED_r} $

i.e., all energy types receive the same proportional increase or decrease in investment.

These investments are then translated into units of capital, KEN_Shr,

$ KENShr_{r,e}=ineed_{r,e}-\frac{ken_{r,e}}{\mathbf{lke}_e} $

The new level of capital is determined as:

$ ken_{r,e,t+1}=(ken_{r,e,t}+KENShr_{r,e})*(1-CIVDM_r) $


  • CIVDM is an exogenous factor reflecting civilian damage from war

Note that there is no guarantee that KEN_Shr is positive, so it is theoretically possible for ken to fall below 0; IFs checks to make sure that this does not happen.

[1] World energy price is used to provide stability. The no tax world energy price is used as taxes do not contribute to returns.

[2] Note the careful use of the time subscripts. sendeminvr is not updated until after the computation of the initial value of TINEED, so the initial calculation of TINEED needs to use the previous year’s value of sendeminvr. Furthermore, the updating of sendeminvr occurs after TINEED has been adjusted to reflect any inventory reductions, but before the investment multiplier, eninvm , is applied.

Economic Linkages

The economic model and the two physical models have many variables in common.  As in the agricultural model, IFs generally uses the values in the physical model to override those in the economic model.  To do so, it computes coefficients in the first year that serve to adjust the physical values subsequently. The adjustment coefficients serve double duty - they translate from physical terms to constant monetary ones, and they adjust for discrepancies in initial empirical values between the two models.

The Energy Investment section already described how desired investment, TINEED, is passed to the Economic model using the adjustment coefficient sidsf.  The adjustment coefficient, ZSR is used to convert production: 

$ ZS_{r,s=2}=ZSR_r*WEPBYear_{r,t=1}*\sum^EENP_{r,e} $


$ ZSRI_r=\frac{ZS_{r,s=2,t=1}}{WEPBYear_{r,t=1}*\sum^EENP_{r,e,t=1}} $

ZSR is a convergence of ZSRI to a value of 1 in 30 years and WEPBYear converts the energy units, which are in BBOE to dollars.

The adjustment coefficient SCSF is used to convert consumption:

$ CS_{r,s=2}=SCSF_r*ENDEM_r*0.6 $


$ SCSF_r=\frac{CS_{r,s=2,t=1}}{ENDEM_{r,t=1}*0.6} $

Note that this assumes that consumer make up a constant 60 percent of consumption of total primary energy.  Also SCSF remains constant over time.

For stocks, imports, and exports, WEBPBYear serves as the adjustment coefficient

$ ST_{r,s=2}=WEPBYear_{r,t=1}*ENST_r $
$ XS_{r,s=2}=WEPBYear_{r,t=1_r}*ENX_r $
$ MS_{r,s=2}=WEPBYear_{r,t=1}*ENM_r $

Finally, the indexed price (with a base of 1) in the energy sector of the economic submodel (PRI) is simply the ratio of current to initial regional energy price (ENPRI) time the value of PRI in the first year.

$ PRI_{r,s=2}=PRI_{r,s=2,t=1}*\frac{ENPRI_r}{ENPRI_{r,t=1}} $

Resources and Reserves: Capital-to-Output Ratios and Discoveries

Capital-to-Output Ratios

Resource base is important in selected energy categories of IFs: conventional oil, natural gas, coal, hydroelectric power, and unconventional oil.  Resources are not important in the nuclear category, which represents an undefined mixture of burner, breeder and fusion power.

Resource costs, as represented by the capital required to exploit them, increase as resource availability in the resource-constrained categories decreases.  The capital-to-output ratio captures the increased cost.  Kalymon (1975) took a similar approach.

More specifically, the capital-to-output ratio (QE) increases in inverse proportion to the remaining resource base (as the base is cut in half, costs double; as it is cut to one fourth, costs quadruple).  The model multiplies the initial capital output ratio by the initial resource base (RESOR) times a multiplier (RESORM) by which a model user can exogenously increase or decrease model assumptions.  It then divides that product by initial resources minus cumulative production to date (CUMPR).

Total available resources by energy type, ResorTot, are calculated as:

$ ResorTot_{r,e}=\mathbf{resorm}_{r,e}*\mathbf{resor}_{r,e}+\mathbf{resorunconm}_{r,e}*\mathbf{resoruncon}_{r,e} $


  • resor and resoruncon are exogenously assumed levels of the ultimate amount of conventional and unconventional forms of each energy type.  There is no assumption about conventional resources for nuclear and only oil and gas include unconventional resources
  • resorm and resorunconm are multipliers that can be used to change the amount of assumed ultimate resources by energy type

All energy types begin with basic capital-to-output ratios, BQE and BQEUC.  These are initially set equal to the same values of QE and QEUNCON, which are derived in the pre-processor, and then evolved according to exogenous assumptions about technological advance for each energy type:

$ BQE_{r,e,t}=BQE_{r,e,t-1}*(1-\mathbf{etechadv}_e) $ [1]
$ BQEUNCON_{r,e,t}=BQEUNCON_{r,e,t-1}*(1-\mathbf{etechadvuncon}_e) $

Recall that technological improvements result in declining amounts of capital required for each unit of energy produced.

The initial translation of this basic capital-to-output ratio to the value actually used to determine energy production varies by energy type.

This is most straightforward for nuclear and unconventional energy, which do not take into account remaining resources:

$ QE_{r,e,t+1}=BQE_{r,e,t}*\mathbf{qem_{r,e}} $


  • e is nuclear
  • qem is an exogenous multiplier
$ QEUC_{r,e,t+1}=BQEUC_{r,e,t}*\mathbf{qeunconm_{r,e}} $


  • e is oil or gas
  • qeunconm is an exogenous multiplier

For hydro and other renewables, QE depends upon the remaining resource, which is defined as the difference between the total resource available and a moving average of the difference in production vis-à-vis production in the first year.  In other words, it is not cumulative production that is important, but rather the portion of resources used annually.

$ QE_{r,e,t+1}=BQE_{r,e,t}*\frac{ResorTot_{r,e}}{resorrem_{r,e}}*\mathbf{qem_{r,e}} $


$ resorrem_{r,e}=ResorTot_{r,e}-ENPGR_{r,e} $
$ ENPGR_{r,e}=SmoothENP_{r,e}-ENP_{r,e,t=1} $
$ SmoothENP_{r,e,t}=0.8*SmoothENP_{r,e,t-1}+0.2*ENP_{r,e} $
  • e = hydro or renew

For oil, gas, and coal, the logic is similar, but the definition of remaining resources is somewhat different: 

$ resorrem_{r,e}=MAX(ResorTot_{r,e}-CUMPR_{r,e},MaxFac_{r,e}) $
$ CUMPR_{r,e,t}=CUMPR_{r,e,t-1}+ENP_{r,e} $
$ MaxFac_{r,e}=0.1*ResorTot_{r,e} $

Furthermore, the capital-to-output ratio is calculated as a moving average

$ CompQE_{r,e}=BQE_{r,e}*(\frac{ResorTot_{r,e}}{resorrem_{r,e}})^{0.4} $
$ QE_{r,e,t+1}=(0.8*QE_{r,e,t}+0.2*CompQE_{r,e})*\mathbf{qem_{r,e}} $


  • e is oil, gas, or coal


Energy reserves decrease with production and increase with discoveries, the latter of which are limited by remaining resources and other factors.  This only applies to oil, gas, and coal.

$ RESER_{r,e,t+1}=RESER_{r,e,t}+rd_{r,e}-ENP_{r,e} $

The rate of discovery, rd, is initially computed as a function of a number of factors related to global energy prices, remaining resources, global and domestic production, and several exogenous assumptions

$ rd_{r,e}=rdiaug_e*wepterm*reterm_{r,e}*\mathbf{rdm_{r,e}} $


  • e = oil, gas, coal
  • rdm is a country and energy-specific exogenous multiplier
  • rdi_aug is an energy-specific factor driven entirely by exogenous assumptions about initial rates of discovery, rdi , and annual increments, rdinr :
$ rdiaug_e=\mathbf{rdi}_e+\mathbf{rdinr}_{r,e}*(t-firstyear) $
  • wepterm is a global factor driven by the growth in world energy prices from the first year and an exogenously defined elasticity, elasdi
$ wepterm=1+\frac{WEP_t-WEP_{t=1}}{WEP_{t=1}}*\mathbf{elasdi} $
  • reterm is a country and energy-specific factor representing an average of a country’s remaining resources as a share of original resources and its share of current production
$ reterm_{r,e}=0.5*(\frac{ResorTot_{r,e}-CUMPR_{r,e}-RESER_{r,e}}{\sum_e(ResorTot_{r,e,t=1}-RESER_{r,e,t=1})}+\frac{ENP_{r,e}}{WENP_e}) $

A further assumption is that the rate of discovery cannot exceed 4 percent of the remaining resources in a country, where remaining resources are specified as:

$ resorrem_{r,e}=ResorTot_{r,e}-CUMPR_{r,e}-RESER_{r,e} $


  • e = oil, gas, coal
  • For oil the amount of unconventional oil in ResorTot is also affected by the parameter enresunce [2]
[1] There used to be an additional impact of ICT broadband that would further reduce the BQE for other renewables, but that is currently not active in the model. 

[2] This only affects Canada, which has a value of enresunce = 0.3. Why this is not included in the QE calculations is unclear.

Energy Indicators

Among useful energy or energy-related indicators is the ratio (ENRGDP) of energy demand (ENDEM) to gross domestic product (GDP).

$ ENRGDP_r=\frac{ENDEM_r}{GDP_r} $

Global production of energy by energy type (WENP) is the sum of regional productions (ENP).

$ WENP_e=\sum^RENP_{r,e} $

Global energy production is the basis for examining the build-up of carbon dioxide and Climate Change, as described in the documentation of the Environmental model.

The ratio of oil and gas production globally to total energy production (OILGPR) helps trace the transition to other fuels.

$ OILGPR=\frac{WENP_{e=1}+WENP_{e=2}}{\sum^EWENP_e} $

Global energy reserves (WRESER) and global resources (WRESOR) are sums by energy type across regions, the latter taking into account any resource multiplier (RESORM) that a user specifies to modify basic model resource estimates.

$ WRESER_e=\sum^RRESER_{r,e} $
$ WRESOR_e=\sum^R(RESOR_{r,e}*RESORM_e) $

Energy Bibliography

Kalymon, Basil A. 1975. "Economic Incentives in OPEC Oil Pricing Policy." Journal of Development Economics 2: 337-362.

Naill, Roger F. 1977.Managing the Energy Transition. Vols. 1 and 2. Cambridge, Mass: Ballinger Publishing Co.

Stanford University. 1978. Stanford Pilot Energy/Economic Model. Stanford: Department of Research, Interim Report, Vol. 1.