Purpose: This document provides an accessible introduction to all foundational concepts needed to understand the E3Modelling suite (GEM-E3, PRIMES, PROMETHEUS). It is designed for readers with a basic quantitative background but limited exposure to economics, energy systems, or optimization theory.
How to use this document: Read sequentially for a comprehensive foundation, or jump to specific chapters as needed. Each chapter is self-contained but builds on earlier material.
Part I: Economic Foundations
Part II: Mathematical Methods 4. Optimization Primer 5. Production Functions 6. Discrete Choice Models 7. Stochastic Methods
Part III: Energy Systems 8. Energy Fundamentals 9. Power Sector Basics 10. Technology Representation
Part IV: Trade and Environment 11. International Trade 12. Environmental Policy
Part V: Integration 13. Data and Calibration 14. Model Coupling
Appendices
- A. Glossary
- B. Mathematical Notation
- C. Key Equations Cheat Sheet
- D. Bridging Notes — From Physics & ML to E3 Modeling
A market is any arrangement that brings together buyers and sellers to exchange goods, services, or resources. Markets can be physical (like a farmer's market) or abstract (like the global oil market or the European electricity market).
In energy-economy models, we represent many interconnected markets:
- Goods markets: Steel, chemicals, transportation services
- Factor markets: Labor, capital
- Energy markets: Electricity, natural gas, oil products
- Emissions markets: Carbon permits (in cap-and-trade systems)
Demand describes how much of a good buyers are willing and able to purchase at various prices.
The Law of Demand: All else equal (ceteris paribus—Latin for "other things being equal"), as price increases, quantity demanded decreases. This inverse relationship is fundamental to economics.
Demand curve: A graphical representation showing quantity demanded (Q) as a function of price (P):
Price (P)
│
│\
│ \
│ \
│ \ Demand curve (D)
│ \
└─────\──────── Quantity (Q)
Demand shifters (factors that move the entire curve):
- Income: Higher income typically increases demand
- Prices of related goods: Substitutes and complements
- Preferences: Consumer tastes and habits
- Expectations: Anticipated future price changes
- Population: Number of potential buyers
Supply describes how much of a good producers are willing and able to sell at various prices.
The Law of Supply: All else equal, as price increases, quantity supplied increases. Higher prices make production more profitable.
Supply curve: A graphical representation showing quantity supplied as a function of price:
Price (P)
│ /
│ /
│ / Supply curve (S)
│ /
│ /
│ /
└─────────────── Quantity (Q)
Supply shifters:
- Input prices: Cost of labor, raw materials, energy
- Technology: Productivity improvements
- Number of sellers: Market entry/exit
- Expectations: Anticipated price changes
- Government policies: Taxes, subsidies, regulations
Equilibrium occurs when quantity demanded equals quantity supplied. At the equilibrium price, the market "clears"—there is no excess supply or demand.
Price (P)
│ S
│ /
│ /
│ /
P* │----X-------- ← Equilibrium price
│ / \
│ / \
│/ \ D
└────────────── Quantity (Q)
Q*
↑
Equilibrium quantity
Market clearing condition: $$Q^D(P^) = Q^S(P^)$$
where
This equation is central to all economic models. In GEM-E3, market clearing must hold for all goods, factors, and permits simultaneously.
Elasticity measures responsiveness—how much one variable changes when another changes.
Price elasticity of demand (ε_d):
Point elasticity (calculus form):
The calculus form gives the instantaneous rate of change—more precise for smooth demand curves. The percentage formula above is the discrete approximation (arc elasticity). Both forms are equivalent in the limit.
| Elasticity Value | Classification | Interpretation |
|---|---|---|
| |ε| > 1 | Elastic | Demand responds strongly to price changes |
| |ε| = 1 | Unit elastic | Proportional response |
| |ε| < 1 | Inelastic | Demand responds weakly to price changes |
| ε = 0 | Perfectly inelastic | Demand unchanged by price (e.g., insulin) |
Why elasticity matters in E3 models:
Energy demand is typically inelastic in the short run (you can't immediately change your car or heating system) but more elastic in the long run (you can buy a more efficient car, insulate your home).
| Energy Type | Short-run Elasticity | Long-run Elasticity |
|---|---|---|
| Gasoline | -0.1 to -0.3 | -0.5 to -0.8 |
| Electricity | -0.1 to -0.2 | -0.3 to -0.7 |
| Natural gas | -0.1 to -0.3 | -0.5 to -1.0 |
Literature ranges—values vary substantially by study, time period, region, and estimation method. These are illustrative central tendencies, not consensus estimates. See Espey (1998) for gasoline, Labandeira et al. (2017) for a meta-analysis.
Cross-price elasticity measures how demand for one good responds to prices of another:
- If ε_xy > 0: goods are substitutes (gas and coal for electricity generation)
- If ε_xy < 0: goods are complements (cars and gasoline)
Income elasticity measures how demand responds to income changes:
- Normal goods: ε_I > 0 (demand increases with income)
- Inferior goods: ε_I < 0 (demand decreases with income)
- Necessities: 0 < ε_I < 1
- Luxuries: ε_I > 1
| Model | Application of Supply/Demand Concepts |
|---|---|
| GEM-E3 | Market clearing in all goods, factor, and permit markets |
| PRIMES | Energy demand by sector; price-responsive technology choice |
| PROMETHEUS | Econometric demand functions with income and price elasticities |
Key insight: E3 models don't just assume fixed demand—they model how demand responds to price and income changes through elasticity parameters. Getting these elasticities right is crucial for realistic policy analysis.
Equilibrium is a state where no agent has an incentive to change their behavior given current prices and the choices of others. It's a "rest point" of the economic system.
Think of it like a ball in a bowl: the ball settles at the bottom where forces balance. In economics, equilibrium is where supply and demand forces balance across all markets.
This distinction is crucial for understanding the difference between PRIMES and GEM-E3.
Key terminology:
- Exogenous variable: Determined outside the model; taken as given (e.g., world oil prices in a national model)
- Endogenous variable: Determined within the model by the equilibrium conditions (e.g., domestic prices, quantities)
Partial Equilibrium:
- Analyzes one market in isolation
- Holds prices in other markets constant ("ceteris paribus")
- Ignores feedback effects from the rest of the economy
- Simpler, more detailed for the market in question
Example: Analyzing the electricity market, taking GDP, labor costs, and other prices as given.
General Equilibrium:
- Analyzes all markets simultaneously
- All prices adjust together to clear all markets
- Captures feedback effects and interdependencies
- More complex, but more comprehensive
Example: Analyzing how a carbon tax affects electricity prices, which affects production costs, which affects wages, which affects consumption, which affects electricity demand again...
Partial Equilibrium (PRIMES approach):
+-------------------------------------+
| Energy Sector |
| +---------+ +---------+ |
| | Supply | <> | Demand | |
| +---------+ +---------+ |
| v equilibrium v |
| Energy prices |
+-------------------------------------+
^ v
GDP (fixed) Energy prices
^ v
---------- REST OF ECONOMY (exogenous) ----------
General Equilibrium (GEM-E3 approach):
+-------------------------------------------------+
| ENTIRE ECONOMY |
| +----------+ +----------+ +----------+ |
| | Goods |<>| Factors |<>| Energy | |
| | markets | | (L,K) | | markets | |
| +----------+ +----------+ +----------+ |
| ^ ^ ^ |
| +--------------------------+ |
| v |
| ALL PRICES ADJUST |
| SIMULTANEOUSLY |
+-------------------------------------------------+
The theoretical foundation for Computable General Equilibrium (CGE) models like GEM-E3 comes from Léon Walras (1874) and was formalized by Arrow and Debreu (1954).
Walrasian equilibrium (theoretical framework) is a set of prices such that:
- Each consumer maximizes utility given their budget constraint
- Each firm maximizes profit given its technology
- All markets clear (supply = demand)
Mathematically: $$\text{Find } \mathbf{p}^* = (p_1^, p_2^, ..., p_n^) \text{ such that } z_i(\mathbf{p}^) = 0 \quad \forall i$$
where:
-
$\mathbf{p}$ = price vector (prices of all$n$ goods) -
$z_i(\mathbf{p})$ = excess demand in market$i$ :$z_i = D_i(\mathbf{p}) - S_i(\mathbf{p})$ -
$D_i, S_i$ = demand and supply for good$i$ (functions of all prices, not just$p_i$ )
Key properties of Walrasian equilibrium:
-
Walras' Law: The value of total excess demand is always zero
$$\sum_i p_i \cdot z_i(\mathbf{p}) = 0$$ - If all but one market clears, the last one clears automatically
- Prices are only determined up to a numeraire (we can normalize one price to 1)
Limitations to keep in mind:
- Walrasian equilibrium assumes all agents are price-takers with perfect information—real markets have market power, asymmetric information, and transaction costs
- The theory says nothing about how equilibrium is reached or how long adjustment takes
- Multiple equilibria may exist; the model finds one but can't tell you which one the economy would actually reach
- The framework is comparative statics: it compares equilibria, not the transition path between them
Simple Example: Two-Good Exchange Economy
Consider two consumers (A and B) and two goods (apples and bread):
| Apples | Bread | |
|---|---|---|
| A's endowment | 10 | 0 |
| B's endowment | 0 | 10 |
Both prefer variety. If
- A sells 5 apples, buys 5 bread → ends with (5, 5)
- B sells 5 bread, buys 5 apples → ends with (5, 5)
Market clearing check:
- Apples: A supplies 5, B demands 5 ✓
- Bread: B supplies 5, A demands 5 ✓
This is a Walrasian equilibrium: both maximize utility given their budget, and both markets clear.
Walras imagined a fictional "auctioneer" who:
- Announces prices
- Collects supply and demand from all agents
- Adjusts prices (raise if excess demand, lower if excess supply)
- Repeats until all markets clear
This is called tâtonnement (French for "trial and error" or "groping toward equilibrium"). CGE models effectively implement this process computationally.
Arrow-Debreu Theorem: Under certain conditions (continuous preferences, no increasing returns to scale, etc.), a Walrasian equilibrium exists.
Uniqueness is not guaranteed—there may be multiple equilibria. CGE models typically find one equilibrium (the one closest to the starting point).
CGE models use comparative statics: comparing two equilibria (before and after a policy change) without modeling the transition path.
Equilibrium A → Equilibrium B
(no carbon tax) Policy (with carbon tax)
change
We compare A and B, but don't model the path between them
This is a limitation: CGE models tell you the new equilibrium, not how long it takes to get there or what happens during the transition.
Recursive dynamics (used in GEM-E3):
- Solve a sequence of static equilibria
- Each period, capital stocks update based on previous period's investment
- Agents have adaptive expectations (don't perfectly foresee the future)
Period 1 → Period 2 → Period 3 → ...
↓ ↓ ↓
K₁ → I₁ → K₂ → I₂ → K₃ → ...
Intertemporal optimization (used partly in PRIMES):
- Agents optimize over entire time horizon
- Perfect foresight (or rational expectations)
- More computationally demanding
Standard Walrasian equilibrium assumes all markets clear, including labor. This implies no involuntary unemployment—anyone willing to work at the market wage finds a job.
Problem: This contradicts reality. Unemployment exists even in equilibrium.
GEM-E3's solution: The Efficiency Wage Model (Shapiro-Stiglitz)
The Shapiro-Stiglitz model (1984) explains why firms pay above market-clearing wages and unemployment persists:
Key idea: Firms cannot perfectly monitor worker effort. Workers might "shirk" (slack off). Unemployment serves as a discipline device.
The mechanism:
- If wages equal the market-clearing level, workers have nothing to lose from shirking (they can immediately find another job)
- Firms pay a premium above market-clearing wages
- This creates unemployment (more workers want jobs than available)
- Workers now fear job loss → they don't shirk
- The wage premium is the "efficiency wage"
The efficiency wage equation (from GEM-E3):
where:
-
$w$ = actual (efficiency) wage paid -
$w^*$ = market-clearing wage -
$e$ = effort level required -
$b$ = unemployment benefits (replacement rate) -
$\rho$ = discount rate -
$q$ = probability of being caught shirking
Implications for GEM-E3:
- Labor market does not clear; unemployment rate is endogenous
- Higher unemployment benefits → higher wage premium → more unemployment
- Policies that affect labor costs have employment effects
- Carbon tax revenue recycling can reduce labor taxes → "double dividend" possible
Why this matters: The efficiency wage feature makes GEM-E3 more realistic for analyzing employment impacts of climate policy—a common policy concern.
| Model | Equilibrium Concept |
|---|---|
| GEM-E3 | Full general equilibrium (all markets clear simultaneously) |
| PRIMES | Partial equilibrium (energy sector only); takes GDP as exogenous |
| PROMETHEUS | Market clearing for world energy; partial equilibrium |
Key insight from the technical summaries:
- GEM-E3: "Find price vector p* such that all markets clear simultaneously"
- PRIMES: "EPEC (Equilibrium Problem with Equilibrium Constraints)"—finds equilibrium within the energy sector
- The models are coupled to get benefits of both: PRIMES provides energy detail, GEM-E3 provides economy-wide feedback
Welfare in economics refers to the well-being or satisfaction of individuals and society. Welfare economics asks: Is one economic outcome "better" than another? How do we measure the impact of policies on society?
This matters for E3 models because policymakers need to know not just what happens (GDP change, emissions reduction) but whether society is better or worse off.
Utility is a numerical measure of satisfaction or well-being. It's a theoretical construct—we can't directly observe utility, but we can infer preferences from choices.
Utility function:
Where
Key properties:
- More is better (non-satiation): Higher quantities → higher utility
- Diminishing marginal utility: Each additional unit adds less satisfaction
- Ordinal vs. cardinal: We can rank outcomes, but absolute numbers are arbitrary
Example: A simple utility function (Cobb-Douglas form)
where C = consumption, L = leisure, and α is the weight on consumption (typically 0 < α < 1). This functional form implies that both goods are necessary (U = 0 if either is zero) and that the consumer always spends fraction α of their "budget" on C.
Consumer surplus is the difference between what consumers are willing to pay and what they actually pay. It's the area below the demand curve and above the price.
Producer surplus is the difference between the price producers receive and their minimum acceptable price (marginal cost). It's the area above the supply curve and below the price.
Price (P)
│ S (supply)
│ /
│ / Producer
│ / Surplus
P* │─────X────────
│ /│
│ / │ Consumer
│ / │ Surplus
│ / │
│/ D (demand)
└─────┴──────────── Quantity (Q)
Q*
Total surplus = Consumer surplus + Producer surplus
This is a measure of economic welfare—policies that increase total surplus are considered beneficial (by this criterion).
Deadweight loss: The reduction in total surplus caused by a market distortion (tax, monopoly, externality). It represents value that could have been created but wasn't—"left on the table."
A situation is Pareto efficient if no one can be made better off without making someone else worse off.
Pareto improvement: A change that makes at least one person better off without making anyone worse off.
First Welfare Theorem: Under perfect competition, a market equilibrium is Pareto efficient.
Second Welfare Theorem: Any Pareto efficient allocation can be achieved as a market equilibrium with appropriate redistribution.
Implications for policy:
- Markets achieve efficiency (under ideal conditions)
- But efficiency says nothing about fairness or distribution
- Policies often create winners and losers (not Pareto improvements)
When policies change prices and incomes, how do we measure the welfare impact?
Equivalent Variation (EV):
The amount of money you would need to give (or take from) a consumer before a price change to make them as well off as they would be after the change.
Compensating Variation (CV):
The amount of money you would need to give (or take from) a consumer after a price change to restore them to their original utility level.
Numerical Example:
Suppose electricity costs €0.10/kWh initially. A carbon tax raises it to €0.15/kWh.
- Your old consumption: 1000 kWh/month, bill = €100
- Your new consumption: 800 kWh/month, bill = €120
Equivalent Variation: "At the old price (€0.10), how much money would make me feel as bad as I do now?" Answer: Taking away ~€30 at old prices would hurt as much as the price increase.
Compensating Variation: "At the new price (€0.15), how much money would restore my original well-being?" Answer: Giving me ~€25 at new prices would compensate.
For small price changes, EV ≈ CV ≈ change in consumer surplus.
GEM-E3 reports welfare in terms of Equivalent Variation (EV) because it allows comparison across scenarios with different price levels.
To compare outcomes where some gain and others lose, we need a social welfare function (SWF) that aggregates individual utilities:
Utilitarian (Benthamite):
Rawlsian:
Weighted sum:
CGE models typically use utilitarian welfare (sum or average of equivalent variations), but can report distributional impacts separately.
Most real policies involve trade-offs:
| Policy | Efficiency | Equity |
|---|---|---|
| Carbon tax | ✅ Corrects externality, efficient | ❌ Regressive (hurts low-income more) |
| Carbon tax + rebates | ✅ Still efficient | ✅ Can be made progressive |
| Subsidies for renewables | ❓ May distort markets | ✅ Benefits vary |
GEM-E3 can analyze both:
- Total welfare change (efficiency)
- Welfare change by region, sector, or income group (distributional)
A key policy question: Can environmental taxes provide a "double dividend"?
- First dividend: Environmental improvement (less pollution)
- Second dividend: Economic improvement (if tax revenue is used to reduce distortionary taxes like labor taxes)
GEM-E3 is specifically designed to analyze this because it models:
- Environmental taxes and their revenue
- Labor market with unemployment
- Revenue recycling options (lump-sum vs. tax cuts)
| Model | Welfare Concepts |
|---|---|
| GEM-E3 | Reports Equivalent Variation by region; analyzes double dividend |
| PRIMES | Reports total system costs; implicit welfare through consumer choice |
| PROMETHEUS | No explicit welfare; focuses on price projections |
End of Part I: Economic Foundations
Continue to Part II: Mathematical Methods for the technical tools used in these models.
A note on reading this part: The sections below mix three types of statements:
- Definitions — what terms mean (e.g., "elasticity is the ratio of percentage changes")
- Modeling choices — how E3 models implement concepts (e.g., "GEM-E3 uses CES production functions")
- Empirical findings — what data suggests (e.g., "energy demand is typically inelastic")
These are different kinds of claims with different epistemic status. Definitions are conventions; modeling choices are decisions made for tractability; empirical findings are contestable summaries of evidence.
Economic models assume agents optimize: consumers maximize utility, firms minimize costs (or maximize profits). This behavioral assumption, combined with market clearing, generates the model's predictions.
Understanding optimization is essential because:
- GEM-E3 solves as a Mixed Complementarity Problem (MCP)
- PRIMES minimizes energy system costs
- PROMETHEUS solves market equilibrium equations
Unconstrained optimization:
First-order condition (FOC): At an optimum, the derivative is zero:
Second-order condition (SOC): For a maximum,
Most economic problems involve constraints (budget constraints, resource limits, etc.).
General form:
Lagrangian method:
First-order conditions:
The Lagrange multiplier (λ) has a powerful interpretation:
λ is the shadow price of the constraint—the marginal value of relaxing the constraint by one unit.
Example: In a carbon-constrained economy:
The Lagrange multiplier on the emissions constraint is the marginal abatement cost—the GDP sacrifice from reducing emissions by one more ton.
Linear Programming (LP):
where
- Objective and constraints are linear
- Fast to solve (polynomial time)
- Used in simple dispatch models
Mixed-Integer Linear Programming (MILP): Same as LP, but some variables must be integers.
- Models yes/no decisions (build a power plant or not)
- Much harder to solve (NP-hard)
- Used in PRIMES for investment decisions
Nonlinear Programming (NLP):
- Objective or constraints are nonlinear
- CES production functions are nonlinear!
- May have multiple local optima
Quadratic Programming (QP): Quadratic objective with linear constraints—a special case of NLP that's easier to solve.
Every constraint in an optimization problem has an associated shadow price (also called dual variable or Lagrange multiplier).
Interpretation: The shadow price tells you the marginal value of relaxing the constraint.
In energy models:
| Constraint | Shadow Price |
|---|---|
| Electricity demand = supply | Wholesale electricity price (€/MWh) |
| Emissions ≤ cap | Carbon permit price (€/tCO₂) |
| Capacity ≤ installed capacity | Scarcity rent (€/MW) |
| Renewable share ≥ target | Cost of RES constraint (€/MWh) |
GEM-E3 reports shadow prices for all constraints—these are the equilibrium prices.
Mixed Complementarity Problem (MCP) is how CGE models are actually solved.
The complementarity condition:
The symbol
Interpretation: Either
In market context:
- If there's excess supply (
$S > D$ ), price must be zero - If price is positive, the market must clear (
$S = D$ )
Why MCP instead of optimization?
- Market equilibrium isn't a single optimization problem—it's many agents optimizing simultaneously
- MCP captures the Karush-Kuhn-Tucker (KKT) conditions—the first-order optimality conditions for constrained problems—of multiple optimizers
- The PATH solver in GAMS efficiently solves MCPs
Limitations to keep in mind:
- MCP finds an equilibrium, but multiple equilibria may exist—the solution found depends on the starting point
- Convergence is not guaranteed for all problem structures; poorly specified models may fail to solve
- The equilibrium found is a mathematical fixed point; whether it represents real-world market outcomes depends on whether the underlying behavioral assumptions hold
Iterative methods:
- Start from an initial guess
- Compute search direction (gradient, Newton step)
- Update solution
- Repeat until convergence
GAMS (General Algebraic Modeling System):
- Industry-standard language for optimization
- Declarative: you describe the problem, solver finds the solution
- Multiple solvers: CPLEX (LP/MIP), CONOPT (NLP), PATH (MCP)
Example GAMS structure:
VARIABLES x, z;
EQUATIONS obj, constraint;
obj.. z =e= c * x; * Objective
constraint.. A * x =l= b; * Constraint
MODEL mymodel /all/;
SOLVE mymodel USING LP MINIMIZING z;
| Model | Optimization Approach |
|---|---|
| GEM-E3 | MCP (market equilibrium as complementarity) |
| PRIMES | LP/MILP for power sector; Equilibrium Problem with Equilibrium Constraints (EPEC) overall |
| PROMETHEUS | Nonlinear equation system (market clearing) |
A production function describes how inputs (labor, capital, energy, materials) are transformed into outputs:
where:
-
$Y$ = output (quantity produced) -
$K$ = capital (machines, buildings) -
$L$ = labor (workers, hours) -
$E$ = energy -
$M$ = materials (intermediate inputs)
Marginal product: Additional output from one more unit of input
This partial derivative measures how much extra output you get from adding one more unit of labor, holding capital fixed.
Returns to scale:
- Constant returns (CRS): Double inputs → double output
- Increasing returns (IRS): Double inputs → more than double output
- Decreasing returns (DRS): Double inputs → less than double output
CGE models typically assume constant returns to scale (modeling choice: required for competitive equilibrium with zero profits, but many real industries have increasing returns).
Substitution: Can one input replace another?
- Perfect substitutes: can trade 1-for-1 (e.g., different grades of coal)
- Perfect complements: must use in fixed proportions (e.g., one driver per truck)
- Imperfect substitutes: can trade off, but at varying rates
Constant Elasticity of Substitution (CES) is the workhorse of CGE models. (Modeling choice: CES is chosen for tractability, not because it's the "true" form of production.)
Two-input CES:
Parameters:
-
$A$ = total factor productivity (TFP) -
$\alpha$ = distribution parameter (capital share) -
$\rho$ = substitution parameter
Elasticity of substitution:
The parameter σ measures how easily inputs can substitute for each other. Higher σ means inputs are more interchangeable; lower σ means they must be used in more fixed proportions.
| σ value | ρ value | Interpretation |
|---|---|---|
| 0 | -∞ | Perfect complements (Leontief) |
| 1 | 0 | Cobb-Douglas |
| ∞ | 1 | Perfect substitutes |
Why CES is used:
- Flexible: nests multiple functional forms
- Empirically estimable: σ can be estimated from data
- Analytically tractable: has nice mathematical properties
Limitations to keep in mind:
- CES assumes substitution elasticity is constant across all input ratios—real production may have varying substitutability
- Aggregating heterogeneous firms into a single CES function can bias estimated elasticities
- The nesting structure (which inputs are grouped together) is a modeling choice that affects results but is rarely tested empirically
- CES cannot represent situations where inputs become complements at some ratios and substitutes at others
Real production uses many inputs with different substitution possibilities. Nested CES handles this by grouping inputs:
Output (σ ≈ 0, near-Leontief)
├── Value Added (σ_KL ≈ 0.5)
│ ├── Capital
│ └── Labor
└── Intermediate Bundle (σ_M ≈ 0.3)
├── Energy Bundle (σ_E ≈ 0.5-1.0)
│ ├── Electricity
│ └── Fossil Fuels (σ_F ≈ 1.0-2.0)
│ ├── Coal
│ ├── Oil
│ └── Gas
└── Materials (σ_NE ≈ 0.2)
Each nest has its own elasticity:
- Low σ at top (output needs both labor/capital AND materials)
- Higher σ within energy (can substitute between fuels)
- Highest σ within fossil fuels (gas for coal is easier than electricity for heat)
The substitution elasticities are crucial parameters—they determine how the economy responds to price changes.
Typical values used in GEM-E3:
| Elasticity | Symbol | Range | Impact |
|---|---|---|---|
| Capital-Labor | σ_KL | 0.4-1.0 | How automation responds to wages |
| Energy-Value Added | σ_E,VA | 0.1-0.5 | Very important for climate policy |
| Interfuel | σ_F | 0.5-2.0 | Fuel switching response |
| Armington (trade) | σ_A | 2.0-8.0 | Trade response to prices (see Chapter 11) |
These ranges are illustrative, drawn from econometric literature. Actual values are contested and vary by sector, region, and estimation approach. The energy-value added elasticity (σ_E,VA) is particularly uncertain and consequential—different credible estimates can change policy cost projections by factors of 2-3x.
Higher σ_E,VA → easier to reduce energy use → lower cost of carbon policy Lower σ_E,VA → harder to reduce energy use → higher cost of carbon policy
This is why sensitivity analysis on elasticities is essential—results should always be tested against alternative plausible values.
Given CES production, firms minimize costs. The cost function gives minimum cost as a function of prices:
where
Shephard's Lemma: Input demands come from the cost function:
Intuition: If the price of capital rises by €1, total cost rises by exactly the amount of capital used. This duality result lets CGE models derive input demands directly from cost functions—computationally convenient.
Autonomous Energy Efficiency Improvement (AEEI): Over time, economies become more energy-efficient even without price changes. This is captured by a trend parameter:
This says energy demand at time
Endogenous technical change: Some models make efficiency improvements depend on R&D spending or learning-by-doing.
| Model | Production Function Use |
|---|---|
| GEM-E3 | Nested CES for all 31 sectors; calibrated to base year |
| PRIMES | Technology-specific production (engineering detail) |
| PROMETHEUS | Reduced-form; aggregate production relationships |
In reality, not everyone makes the same choice even when facing the same prices. Some buy electric cars, others buy gasoline cars. Some install heat pumps, others stick with gas boilers.
Why?
- Different preferences
- Different constraints (budget, space, access)
- Different information
- Behavioral factors (risk aversion, habits)
PRIMES models this heterogeneity using discrete choice theory.
Basic idea: Each option has a "utility" that includes:
- Observable components (price, performance)
- Unobservable components (personal taste, hidden costs)
where:
-
$U_i$ = total utility of option$i$ -
$V_i$ = systematic (observable) utility -
$\varepsilon_i$ = random (unobservable) component
Consumer chooses option with highest total utility.
If the random components follow an extreme value (Gumbel) distribution, the probability of choosing option
where
Properties:
- Probabilities sum to 1
- Higher utility → higher probability
- But not deterministic: even expensive options get some market share
Limitations to keep in mind:
- IIA (Independence of Irrelevant Alternatives): Adding a new option doesn't change relative shares of existing options. This is often unrealistic—adding a third car brand should affect similar brands more than dissimilar ones.
- Assumes unobserved heterogeneity follows a specific distribution (Gumbel). If real heterogeneity differs, market share predictions can be biased.
- Nested logit (Section 6.5) partially addresses IIA but requires specifying the nest structure, which is itself a modeling choice.
Example: Technology choice in buildings
PRIMES uses Weibull-based market shares:
where:
-
$S_i$ = market share of technology$i$ -
$C_i$ = generalized cost -
$\nu$ = heterogeneity parameter
The generalized cost includes "intangible costs": $$C_i = \underbrace{CAPEX_i + OPEX_i}{\text{financial costs}} + \underbrace{\mu_i}{\text{intangible costs}}$$
Intangible costs capture:
- Risk aversion (new technology is risky)
- Hidden costs (installation complexity, learning time)
- Behavioral inertia (familiarity with current technology)
- Market barriers (lack of information, financing constraints)
When choices have natural groupings, nested logit is used:
Travel choice
├── Private car
│ ├── Gasoline car
│ ├── Diesel car
│ └── Electric car
├── Public transit
│ ├── Bus
│ └── Train
└── Active (walk/bike)
Two-level choice:
- Choose mode (car, transit, active)
- Choose specific option within mode
Formula:
where
The intangible costs (
- Observe actual market shares in base year
- Calculate what intangible costs would be needed to match these shares given known financial costs
- Use these calibrated values for projections
This is a limitation: We're inferring behavior from outcomes, not from direct measurement of preferences.
Discrete choice modeling affects policy analysis:
Without heterogeneity:
- Carbon tax makes EVs cheapest
- Everyone switches to EVs immediately
- Unrealistic!
With heterogeneity:
- Some early adopters switch quickly
- Others need larger price signals
- Technology diffusion is gradual
- More realistic policy impact
| Model | Discrete Choice Application |
|---|---|
| GEM-E3 | Not directly; uses CES (continuous substitution) |
| PRIMES | Technology choice, mode choice, vehicle choice |
| PROMETHEUS | Not directly; uses aggregate demand functions |
Energy projections face deep uncertainty in:
- Future oil prices
- Technology costs (will solar keep getting cheaper?)
- Economic growth (especially in emerging economies)
- Policy evolution
- Resource availability
PROMETHEUS explicitly addresses this by treating key parameters as probability distributions rather than point estimates.
Aleatory uncertainty: Inherent randomness (weather, accidents)
- Can be characterized probabilistically
- Won't disappear with more research
Epistemic uncertainty: Lack of knowledge (future technology costs)
- Could be reduced with more information
- But often we must act before uncertainty resolves
Deep uncertainty: Fundamental unknowns (paradigm shifts, black swans)
- Hard to assign probabilities
- Scenario analysis may be more appropriate
PROMETHEUS uses distributions for uncertain parameters:
Normal distribution:
- Symmetric, bell-shaped
- Used for: demand elasticities, growth rates
Lognormal distribution:
- Always positive, right-skewed
- Used for: prices, resource estimates
Triangular distribution: Defined by min, mode, max
- Easy to elicit from experts
- Used for: technology learning rates
Uniform distribution: Equal probability in range
- Maximum ignorance within bounds
- Used when we only know plausible range
Monte Carlo method:
- Draw random values from input distributions
- Run the model with these values
- Record outputs
- Repeat many times (1000-10000)
- Analyze distribution of outputs
Input: θ ~ distribution
│
▼
┌──────────────────┐
│ MODEL │
│ (PROMETHEUS) │
└──────────────────┘
│
▼
Output: Oil price, demand, etc.
Repeat N times → Output distribution
Output: Not a single forecast, but a probability distribution
- Mean, median
- Standard deviation
- Percentiles (P10, P50, P90)
- Full distribution
Simple random sampling can miss parts of the parameter space. Latin Hypercube Sampling ensures better coverage:
- Divide each parameter's range into N equal-probability intervals
- Sample exactly once from each interval
- Randomly pair samples across parameters
Advantage: More efficient—achieves same precision with fewer runs.
Simple Random: Latin Hypercube:
X₂ X₂
│ • • │ •
│ • • │ •
│ • • │ •
│ • • │ •
└──────────── X₁ └──────────── X₁
(clumpy coverage) (stratified coverage)
Question: Which uncertain inputs drive the most uncertainty in outputs?
Local sensitivity: Change one input slightly, see output change
Global sensitivity (Sobol indices): Decompose output variance
First-order Sobol index:
where
Fraction of output variance explained by input
Total-effect index:
Includes all interactions involving
Typical PROMETHEUS findings:
| Parameter | First-order Index |
|---|---|
| Oil Ultimate Recoverable Resources (URR) | 0.2-0.4 |
| GDP growth | 0.1-0.3 |
| OPEC behavior | 0.1-0.2 |
| Demand elasticity | 0.05-0.15 |
Don't:
- Treat the mean as "the forecast"
- Ignore the distribution width
Do:
- Report ranges: "Oil prices in 2040: €60-120/barrel (80% probability)"
- Use for stress-testing policies
- Identify which uncertainties matter most
| Model | Stochastic Treatment |
|---|---|
| GEM-E3 | Deterministic; uses scenario analysis for uncertainty |
| PRIMES | Deterministic; can use PROMETHEUS price distributions |
| PROMETHEUS | Full Monte Carlo with LHS; explicit uncertainty quantification |
End of Part II: Mathematical Methods
Continue to Part III: Energy Systems for energy-specific concepts.
Energy is unique among economic goods:
- Essential input for virtually all production
- Limited substitutability in many uses
- Environmental externalities (emissions)
- Strategic importance (national security)
- Infrastructure-intensive (long-lived capital)
Understanding energy fundamentals is essential for interpreting E3 models.
Primary energy: Energy as found in nature
- Fossil fuels (coal, crude oil, natural gas)
- Nuclear (uranium)
- Renewables (solar, wind, hydro, biomass, geothermal)
Secondary energy: Transformed/refined energy
- Electricity (from any primary source)
- Refined petroleum products (gasoline, diesel, jet fuel)
- Hydrogen (produced from various sources)
Final energy: Energy delivered to end users
- What you buy (electricity at the meter, gasoline at the pump)
- Before losses in end-use equipment
Useful energy: Energy service actually provided
- Heat delivered to room
- Motion of vehicle
- Light from bulb
Primary Energy (100 units)
│
│ Extraction, refining, generation
│ (losses: ~30-40%)
▼
Secondary/Final Energy (60-70 units)
│
│ End-use conversion
│ (losses: ~30-70%)
▼
Useful Energy (20-40 units)
PRIMES models the entire chain from primary to useful energy, capturing losses at each stage.
| Unit | Definition | Typical Use |
|---|---|---|
| Joule (J) | SI unit of energy | Scientific |
| kWh | 3.6 MJ | Electricity billing |
| toe | Tonne of oil equivalent (41.868 GJ) | Energy statistics |
| Mtoe | Million toe | National/EU level |
| PJ | Petajoule (10¹⁵ J) | Energy balances |
| TWh | Terawatt-hour (3.6 PJ) | Electricity statistics |
| BTU | British Thermal Unit (~1055 J) | US/UK |
| MMBtu | Million BTU | Natural gas (US) |
Conversion factors:
- 1 toe = 11.63 MWh = 41.868 GJ
- 1 TWh = 0.086 Mtoe
- 1 barrel of oil ≈ 0.136 toe
An energy balance is an accounting framework showing all energy flows in an economy.
┌──────────────────────────────────────────────────────────────┐
│ SUPPLY │
│ Domestic production + Imports - Exports - Stock changes │
└──────────────────────────────────────────────────────────────┘
↓
Primary Energy Supply
↓
┌──────────────────────────────────────────────────────────────┐
│ TRANSFORMATION │
│ Power plants, refineries, heat plants │
│ (input - output = losses) │
└──────────────────────────────────────────────────────────────┘
↓
Final Energy Consumption
↓
┌──────────────────────────────────────────────────────────────┐
│ DEMAND │
│ Industry + Transport + Residential + Services + Agriculture │
└──────────────────────────────────────────────────────────────┘
Key identity:
PRIMES and GEM-E3 are calibrated to Eurostat energy balances for the base year.
Energy intensity measures how much energy is used per unit of economic output:
Usually expressed in toe/€million or MJ/€.
Decomposition:
This decomposes aggregate energy intensity into: (1) sector-level intensity (
Energy intensity depends on:
- Sectoral composition (services vs. heavy industry)
- Technology efficiency (better equipment)
- Behavior (conservation practices)
Trends:
- Developed economies: ~1-2% annual decrease in energy intensity
- Driven by structural change + efficiency improvements
- Autonomous Energy Efficiency Improvement (AEEI) parameter in models captures this
Carbon intensity of energy:
Carbon content by fuel:
| Fuel | kg CO₂/GJ | Relative |
|---|---|---|
| Coal | 94-96 | Highest |
| Oil | 73-75 | Medium |
| Natural gas | 56-58 | Lowest fossil |
| Biomass | 0* | Net zero (if sustainable) |
| Nuclear | 0 | Zero direct |
| Renewables | 0 | Zero direct |
*Biomass carbon is considered biogenic (part of natural cycle).
Emissions accounting in GEM-E3:
where
The Hotelling Rule (1931) is fundamental to understanding fossil fuel supply in PROMETHEUS.
Core insight: Exhaustible resources (oil, gas, coal) have a finite stock. Extracting today means less available tomorrow. Owners must consider the opportunity cost of extraction.
The Hotelling condition:
In words: the price of an exhaustible resource rises at the rate of interest.
Intuition:
- Resource owner can either extract now (get price P, invest at interest r) or wait (get price P_{t+1})
- In equilibrium, they must be indifferent:
$P_{t+1} = P_t(1+r)$ - Otherwise arbitrage: if prices rise faster than r, everyone waits; if slower, everyone extracts now
With extraction costs:
The resource rent (price minus marginal cost) rises at rate r.
Why prices actually fluctuate: The simple Hotelling model predicts smooth price rises, but real prices are volatile because:
- Demand shocks (recessions, growth spurts)
- Supply shocks (discoveries, wars, technology)
- Market power (OPEC decisions)
- Uncertainty about reserves
Limitations to keep in mind:
- Hotelling assumes rational, forward-looking resource owners with perfect information about reserves—real actors have limited information and heterogeneous expectations
- Historical oil prices have not followed Hotelling paths; empirical tests generally reject the simple model
- The theory works better as a benchmark for understanding long-run tendencies than as a short-run price predictor
- Political factors (sanctions, nationalization, OPEC quotas) often dominate economic logic
PROMETHEUS models this by:
- Tracking cumulative extraction relative to URR (Ultimate Recoverable Resources—the total amount ultimately extractable)
- Making extraction costs rise as easy reserves deplete
- Treating URR as uncertain (probability distributions)
Global oil markets are not perfectly competitive. OPEC (Organization of Petroleum Exporting Countries) has significant market power.
PROMETHEUS models OPEC as a "dominant firm with competitive fringe":
Market demand = OPEC supply + Non-OPEC supply
↓ ↓
(strategic) (price-taking)
The dominant firm model:
-
Competitive fringe supplies according to marginal cost:
$$S^{fringe}(P) = \text{supply from non-OPEC at price } P$$ -
OPEC faces residual demand:
$$D^{OPEC}(P) = D^{world}(P) - S^{fringe}(P)$$ -
OPEC maximizes profit:
$$\max_P (P - MC^{OPEC}) \cdot D^{OPEC}(P)$$
Result: OPEC restricts output below competitive level, raising prices.
PROMETHEUS captures this by:
- Modeling OPEC production decisions
- Including capacity constraints and market share targets
- Allowing for different OPEC behavior scenarios (aggressive vs. accommodating)
Why this matters: Oil price projections are highly sensitive to assumptions about OPEC behavior—a major source of uncertainty.
| Model | Energy Data Use |
|---|---|
| GEM-E3 | Energy balances for calibration; emissions by fuel |
| PRIMES | Detailed energy flows; transformation sector |
| PROMETHEUS | Global energy supply/demand; Hotelling dynamics; OPEC behavior |
The electricity sector is modeled in detail because:
- Central to decarbonization (electrification of transport, heat)
- Highly capital-intensive (long-lived assets)
- Complex operations (real-time balancing)
- Subject to extensive regulation
PRIMES has a dedicated power sector module with hourly resolution.
| Technology | Type | Dispatchable? | Capacity Factor |
|---|---|---|---|
| Coal | Thermal | Yes | 40-85% |
| Natural gas CCGT (Combined Cycle Gas Turbine) | Thermal | Yes | 30-60% |
| Nuclear | Thermal | Baseload | 80-95% |
| Hydro (reservoir) | Renewable | Yes | 30-50% |
| Wind onshore | Renewable | No | 20-35% |
| Wind offshore | Renewable | No | 35-50% |
| Solar PV | Renewable | No | 10-25% |
| Solar CSP | Renewable | Partly | 20-40% |
Dispatchable: Can increase/decrease output on demand Non-dispatchable: Output depends on weather (variable renewables)
Capacity factor:
where E = annual generation (MWh), P = capacity (MW), 8760 = hours/year.
Efficiency:
Typical efficiencies:
- Coal: 35-45%
- CCGT: 55-62%
- Nuclear: 33-37%
- Solar/Wind: N/A (no fuel)
Heat rate: Inverse of efficiency, often used for thermal plants
Capital cost (CAPEX): €/kW installed
- Nuclear: €4,000-8,000/kW
- Offshore wind: €2,500-4,000/kW
- Onshore wind: €1,000-1,500/kW
- Solar PV: €400-800/kW
- CCGT: €600-900/kW
Operating costs:
- Fixed O&M: €/kW/year (maintenance regardless of operation)
- Variable O&M: €/MWh (depends on generation)
- Fuel: €/MWh (depends on fuel price and efficiency)
Levelized Cost of Electricity (LCOE):
where I = investment, M = maintenance, F = fuel, E = electricity output, r = discount rate. LCOE is the constant per-MWh price that would make the project break even over its lifetime—useful for comparing technologies with different cost structures.
Load: Electricity demand varies over time
Demand (MW)
│ ┌──────┐
│ / \ Peak
│ / \
│──/ \─── Shoulder
│ / \
│/ \ Baseload
└──────────────────────── Time (hours)
6am 12pm 6pm
Merit order dispatch: Plants dispatched from lowest to highest marginal cost
Marginal Cost
(€/MWh)
│ ┌──┐ Peak (gas turbines)
│ ┌────┘ │
│ ┌────┘ │ Mid (CCGT)
│ ───┘ │ Baseload (nuclear, coal)
│ │
└─────────────────┴──── Cumulative Capacity (GW)
Wholesale price = marginal cost of most expensive unit running
PRIMES doesn't model all 8760 hours—too computationally expensive. Instead, it uses representative time slices:
Time slices = Season × Day type × Hour type
Seasons: Winter, Summer, Intermediate (3)
Day type: Peak day, Average day (2)
Hour type: Peak, Shoulder, Off-peak, Night (4)
Total: 3 × 2 × 4 = 24 representative periods
Each time slice has:
- Typical demand level
- Renewable availability (wind, solar)
- Weight (hours it represents)
Reserve margin:
Typically 10-20% to ensure reliability.
Capacity credit: How much a technology contributes to reliability
- Thermal plants: ~90-95% (high reliability)
- Wind: ~5-15% (may not be available at peak)
- Solar: ~0-30% (depends on peak timing)
Electricity pricing is complex because it involves both competitive wholesale markets and regulated retail distribution.
Wholesale market pricing (competitive):
The wholesale price equals the marginal cost of the most expensive plant needed to meet demand:
This is the "shadow price" of the demand constraint in optimization—equivalent to the dispatch model's Lagrange multiplier.
The problem with regulated infrastructure:
Distribution networks (grids) are natural monopolies:
- High fixed costs, low marginal costs
- Marginal cost pricing doesn't recover investment costs
- But monopoly pricing exploits consumers
Ramsey-Boiteux pricing solves this by setting prices to recover costs while minimizing welfare loss.
The Ramsey-Boiteux rule:
where:
-
$P_i$ = price charged to consumer class$i$ -
$MC_i$ = marginal cost of serving class$i$ -
$\varepsilon_i$ = price elasticity of demand for class$i$ -
$k$ = constant ensuring total revenue = total cost
Interpretation:
- Charge higher markups to consumers with lower elasticity
- Industrial users (elastic) pay close to marginal cost
- Residential users (inelastic) pay higher markups
- This minimizes the total deadweight loss from above-marginal-cost pricing
Why this matters for PRIMES:
- PRIMES models retail electricity prices as wholesale price + network tariffs + policy costs + taxes
- Network tariffs follow Ramsey-Boiteux principles
- Different consumer classes face different prices
- This affects technology adoption decisions
Retail price decomposition (from PRIMES):
where:
-
$T_{network}$ = grid tariffs (Ramsey-Boiteux pricing) -
$T_{policy}$ = RES support levies, capacity payments -
$Taxes$ = VAT, energy taxes
| Model | Power Sector Treatment |
|---|---|
| GEM-E3 | Aggregate electricity sector; substitution between fuels |
| PRIMES | Detailed technology-by-technology; hourly dispatch approximation |
| PROMETHEUS | Global power generation projections; technology mix |
Energy transitions are fundamentally about technology change:
- From coal to gas to renewables
- From internal combustion to electric vehicles
- From gas boilers to heat pumps
Modeling technology choice and evolution is crucial for policy analysis.
Energy-using capital has long lifetimes:
- Power plants: 30-60 years
- Buildings: 50-100 years
- Vehicles: 10-20 years
- Appliances: 5-20 years
Stock turnover model:
where:
-
$K_t$ = capital stock in year$t$ -
$\delta$ = depreciation/retirement rate -
$I_t$ = new investment
Implication: Even with zero new fossil fuel investment, old plants keep running. Decarbonization takes decades.
Experience curve: Technology costs decline as cumulative production increases
where:
-
$C_t$ = unit cost at time$t$ -
$Q_t$ = cumulative production (total units ever made) -
$b$ = learning parameter (higher = faster cost decline)
The negative exponent means costs fall as production accumulates—"learning by doing."
Learning rate (LR): Percentage cost reduction per doubling of capacity
If
Typical learning rates:
| Technology | Learning Rate |
|---|---|
| Solar PV modules | 20-24% |
| Wind turbines | 10-15% |
| Batteries (Li-ion) | 15-20% |
| Nuclear | ~0% (no learning in recent decades) |
| CCS | Uncertain (5-15%?) |
Historical estimates that may not persist. Solar's high learning rate is well-documented but unprecedented in energy history. Whether it continues, and whether other technologies follow similar curves, is genuinely uncertain.
In PROMETHEUS: Learning rates are treated as uncertain parameters with probability distributions—reflecting that past learning rates are imperfect guides to future cost reductions.
Real technology adoption is slower than pure cost optimization would predict. Intangible costs capture this:
where
| Factor | Description |
|---|---|
| Risk premium | Uncertainty about new technology performance |
| Hidden costs | Installation complexity, training needs |
| Hassle factor | Time and effort to research, purchase |
| Financing constraints | Limited access to capital |
| Information barriers | Lack of awareness |
| Behavioral inertia | Preference for familiar options |
PRIMES calibrates intangible costs to match observed market shares in the base year.
PRIMES uses a discrete choice framework for technology selection:
- Calculate generalized cost for each technology (financial + intangible)
- Apply Weibull distribution to get market shares
- Result: Technology mix, not winner-take-all
Example: Residential heating choice
- Gas boiler: Low capital, high fuel cost, familiar
- Heat pump: High capital, low running cost, unfamiliar
Even if heat pumps have lower lifecycle cost, gas boilers retain market share due to intangible costs.
AEEI (Autonomous Energy Efficiency Improvement):
- Efficiency improves over time independent of prices
- Represents ongoing technological progress
- Exogenous parameter (typically 0.5-1.5%/year)
PIEEI (Price-Induced Energy Efficiency Improvement):
- Higher energy prices → more investment in efficiency
- Endogenous response to policy
- Captured through substitution elasticities
Debate: How much is autonomous vs. induced? Important for policy analysis—if most improvement is autonomous, carbon prices matter less.
Some models include explicit R&D and innovation:
- Government R&D spending
- Private R&D induced by carbon prices
- Knowledge spillovers
GEM-E3 and PRIMES mostly treat technical change as exogenous (given by assumptions), though learning curves provide some endogeneity.
| Model | Technology Representation |
|---|---|
| GEM-E3 | Aggregate; AEEI parameter; no explicit technologies |
| PRIMES | Hundreds of explicit technologies; learning curves; intangible costs |
| PROMETHEUS | Learning curves with uncertainty; technology cost projections |
End of Part III: Energy Systems
Continue to Part IV: Trade and Environment for international and environmental aspects.
International trade is crucial for energy-economy analysis:
- Energy trade: Oil, gas, coal are globally traded commodities
- Carbon leakage: Production may shift to countries with weaker climate policy
- Competitiveness: Energy-intensive industries face international competition
- Technology diffusion: Trade spreads efficient technologies
Ricardo's principle: Countries benefit from specializing in goods where they have comparative (not absolute) advantage.
Even if Country A is more efficient at producing everything, both countries gain from trade if they specialize according to relative efficiency.
Implications:
- Free trade increases total welfare
- But creates winners and losers within countries
- Climate policy can shift comparative advantage
Problem: Simple trade theory predicts complete specialization, but we observe:
- Countries both import and export similar goods
- Trade flows respond gradually to price changes
Armington (1969) solution: Domestic and imported goods are imperfect substitutes.
where:
-
$X$ = composite good consumed (a CES aggregate of domestic and imported varieties) -
$D$ = domestic good -
$M$ = imported good -
$\sigma = 1/(1-\rho)$ = Armington elasticity
This CES form means consumers view domestic and foreign goods as differentiated—not perfectly interchangeable—so trade adjusts gradually to price changes rather than switching entirely.
Limitations to keep in mind:
- Armington is a modeling convenience, not a deep theory—it's chosen because it prevents unrealistic corner solutions
- The assumption that goods differ only by country of origin ignores firm-level heterogeneity within countries
- Armington elasticities are difficult to estimate reliably; values vary widely across studies and affect trade flow predictions substantially
- The approach cannot represent situations where trade is blocked entirely (e.g., sanctions) without ad-hoc modifications
The Armington elasticity determines how much trade responds to price changes:
Typical values in GEM-E3:
| Good | Armington Elasticity |
|---|---|
| Crude oil | 5-10 (highly substitutable) |
| Electricity | 2-4 (less traded) |
| Manufactured goods | 2-6 |
| Services | 1-2 (hard to trade) |
| Agriculture | 2-4 |
Higher σ_A:
- Trade responds strongly to prices
- Small price advantage → large trade flow shift
- More "competitive" goods
Lower σ_A:
- Trade responds weakly
- Prices can differ substantially between regions
- More "differentiated" goods
GEM-E3 uses a nested structure:
First level: Domestic vs. imports
Second level: Imports by origin
where
This allows different substitutability between:
- Domestic and any import (σ_D)
- Imports from different countries (σ_M)
Trade balance:
where X = exports, M = imports.
Current account includes:
- Trade in goods and services
- Factor income (returns on foreign investment)
- Transfers
GEM-E3 enforces:
- Trade flows balance globally (world exports = world imports)
- Current account constraints by region (over time)
Carbon leakage occurs when climate policy in one region causes emissions to increase elsewhere:
Mechanisms:
- Competitiveness channel: Energy-intensive industries relocate
- Energy market channel: Lower demand reduces world fuel prices, increasing consumption elsewhere
Leakage rate:
where
If leakage = 100%, global emissions unchanged by policy.
GEM-E3 is designed to analyze leakage because it models:
- Multi-regional trade flows
- Energy-intensive sectors explicitly
- World energy prices
Border Carbon Adjustment (BCA): Apply carbon cost to imports based on their embodied emissions
Types:
- Import tariff based on carbon content
- Export rebate for domestic carbon costs
GEM-E3 can model BCA by adding tariffs linked to emission coefficients.
| Model | Trade Treatment |
|---|---|
| GEM-E3 | Full bilateral trade; Armington; carbon leakage analysis |
| PRIMES | EU focus; imports from outside EU as exogenous |
| PROMETHEUS | Global energy trade flows; regional energy balances |
Externality: A cost or benefit not reflected in market prices
Negative externality from emissions:
- Burning fossil fuels causes climate change
- Costs fall on society, not the polluter
- Market outcome has too much pollution
Efficient outcome: Polluter pays the social cost of emissions
Without intervention:
- Private cost < Social cost
- Production is higher than socially optimal
- Result: Deadweight loss from over-pollution
Price
│
│ Social MC
│ /
│ / \
│ / \ Private MC
│ / \
│────/───────\─── Demand
│ / \
│ / Deadweight\
│ / loss \
└─────────────────── Quantity
Q* Q_market
Two main approaches to internalize the externality:
Carbon Tax:
- Government sets price, market determines quantity
- Revenue to government
- Price certainty, quantity uncertainty
Cap-and-Trade (ETS):
- Government sets quantity (cap), market determines price
- Permits allocated or auctioned
- Quantity certainty, price uncertainty
| Feature | Carbon Tax | Cap-and-Trade |
|---|---|---|
| Price certainty | ✓ | ✗ |
| Quantity certainty | ✗ | ✓ |
| Revenue predictability | ✓ | Variable |
| Political acceptability | Lower? | Higher? |
| Implementation complexity | Lower | Higher |
EU Emissions Trading System (ETS): Europe's main climate policy instrument since 2005
MAC: The cost of reducing emissions by one more ton
where C = total abatement cost, E = emissions. The negative sign ensures MAC is positive: reducing emissions (lowering E) increases cost.
MAC curve: Shows cost of emission reductions
MAC
(€/tCO₂)
│ /
│ /
│ /
│ /
│ / Steep = expensive further cuts
│ /
│ /
│ /
│ ────────/ Flat = cheap initial cuts
│
└─────────────────────── Abatement (Mt CO₂)
In GEM-E3: Carbon price = shadow price on emissions constraint = MAC at equilibrium
Revenue recycling options:
- Lump-sum rebates to households
- Reduce other taxes (labor, capital)
- Fund green investments
- Reduce government debt
Double dividend hypothesis:
- First dividend: Environmental improvement
- Second dividend: Economic gain from reducing distortionary taxes
GEM-E3 can test this because it models:
- Labor market with unemployment
- Detailed tax system
- Welfare effects of different recycling options
To prevent carbon leakage, countries may impose border carbon adjustments:
EU Carbon Border Adjustment Mechanism (CBAM): Being phased in from 2026
GEM-E3 is used to analyze CBAM impacts on trade, competitiveness, and emissions.
Real policies come in packages:
- Carbon pricing + renewable subsidies + efficiency standards + R&D support
Interactions can be:
- Complementary: Carbon price + R&D = faster innovation
- Conflicting: ETS + Renewable Energy Sources (RES) target = lower permit price
- Redundant: Multiple policies targeting same behavior
GEM-E3 and PRIMES can model policy packages to understand interactions.
Climate policies often have co-benefits:
- Air quality improvement (less SO₂, NOx, PM)
- Energy security (less import dependence)
- Health benefits (less pollution)
- Innovation stimulus
GEM-E3 reports:
- CO₂, CH₄, N₂O (greenhouse gases)
- SO₂, NOx, PM (air pollutants)
This allows analysis of climate-air quality co-benefits.
| Model | Environmental Policy Features |
|---|---|
| GEM-E3 | Carbon tax, ETS, revenue recycling, CBAM, multi-pollutant |
| PRIMES | Carbon price input; technology response; RES targets |
| PROMETHEUS | Global climate policy scenarios; emission projections |
End of Part IV: Trade and Environment
Continue to Part V: Integration for data and model coupling.
E3 models require vast amounts of data:
- Economic flows between sectors and regions
- Energy production, transformation, consumption
- Technology costs and performance
- Emissions by source
- Trade flows by commodity and partner
Getting this data consistent and comprehensive is a major challenge.
A Social Accounting Matrix is the data foundation for CGE models like GEM-E3.
What is a SAM?
- A square matrix showing all value flows in an economy for a base year
- Rows = income (receipts)
- Columns = expenditure (payments)
- Row total = Column total for each account (everything balances)
SAM structure:
EXPENDITURES
┌──────────┬──────────┬─────────┬──────────┬─────┬─────┐
│Activities│Commodit. │ Factors │Households│ Gov │ RoW │
┌────────────┼──────────┼──────────┼─────────┼──────────┼─────┼─────┤
│Activities │ │ Domestic │ │ │ │Exp- │
│ │ │ sales │ │ │ │orts │
├────────────┼──────────┼──────────┼─────────┼──────────┼─────┼─────┤
│Commodities │ Intermed │ │ │Consumpt. │ Gov │ │
│ │ inputs │ │ │ │ │ │
├────────────┼──────────┼──────────┼─────────┼──────────┼─────┼─────┤
│Factors │ Value │ │ │ │ │ │
│(L, K) │ added │ │ │ │ │ │
├────────────┼──────────┼──────────┼─────────┼──────────┼─────┼─────┤
│Households │ │ │ Factor │ │Trans│ │
│ │ │ │ income │ │fers │ │
├────────────┼──────────┼──────────┼─────────┼──────────┼─────┼─────┤
│Government │ Indirect │ │ │ Direct │ │ │
│ │ taxes │ │ │ taxes │ │ │
├────────────┼──────────┼──────────┼─────────┼──────────┼─────┼─────┤
│Rest of │ │ Imports │ │ │ │ │
│World │ │ │ │ │ │ │
└────────────┴──────────┴──────────┴─────────┴──────────┴─────┴─────┘
↑
RECEIPTS
Key property: Every row sum equals the corresponding column sum.
For GEM-E3:
| Data Type | Primary Source | Secondary Sources |
|---|---|---|
| Economic structure | GTAP database | Eurostat, national accounts |
| Bilateral trade | GTAP | UN Comtrade |
| Energy balances | Eurostat, IEA | National statistics |
| Emissions | UNFCCC, IPCC | National inventories |
| Elasticities | Literature | Econometric estimates |
GTAP Database (Global Trade Analysis Project):
- Maintained by Purdue University
- Global database covering 141 regions, 65 sectors
- Used as starting point for most CGE models
- Updated every few years (current: GTAP 11, base year 2017)
Calibration assumption: The base year SAM represents an equilibrium.
Procedure:
- Set all prices to 1 (numeraire normalization)
- Choose functional forms (CES)
- Specify elasticities from literature/estimation
- Solve for share parameters such that model replicates SAM flows
Example: CES calibration
Given observed inputs
For CES:
At calibration:
(Exact formula depends on nesting structure and normalization.)
A properly calibrated model must replicate the base year exactly.
If you run the model with no policy shock:
- All prices should remain at 1
- All quantities should match the SAM
- This is the "benchmark replication test"
If replication fails: There's a bug or inconsistency in the data/model.
Real data sources don't perfectly balance. SAM balancing adjusts raw data to ensure consistency.
Methods:
- RAS method: Iteratively scale rows and columns
- Cross-entropy: Minimize information distance from original data
- Least squares: Minimize sum of squared adjustments
GEM-E3 constructs SAMs from multiple sources and balances them for each region.
Base year: The year for which the model is calibrated (e.g., 2015, 2020)
Projections require additional assumptions:
- GDP growth rates (from macroeconomic forecasts)
- Population growth (from demographic projections)
- World energy prices (from PROMETHEUS)
- Policy changes (scenario-specific)
Key uncertain parameters:
| Parameter | Source | Uncertainty Level |
|---|---|---|
| Armington elasticities | Literature | Medium |
| Capital-labor substitution | Econometrics | Medium |
| Energy-value added substitution | Literature | High |
| Learning rates | Historical | High |
| Intangible costs | Calibration | Very High |
Sensitivity analysis is essential: Results should be tested against alternative parameter values.
| Model | Data/Calibration |
|---|---|
| GEM-E3 | SAM from GTAP + Eurostat; calibrated CES functions |
| PRIMES | Energy balances from Eurostat; technology database |
| PROMETHEUS | Historical energy data from IEA, BP; econometric estimation |
No single model can do everything well:
| Requirement | Best Approach |
|---|---|
| Economy-wide impacts | CGE (GEM-E3) |
| Technology detail | Partial equilibrium (PRIMES) |
| Uncertainty quantification | Stochastic (PROMETHEUS) |
Solution: Couple models to get benefits of each.
Hard linking (full integration):
- Models share same code/platform
- Solve simultaneously
- Computationally demanding
- Ensures perfect consistency
Soft linking (iterative):
- Models run separately
- Exchange data between runs
- Iterate until convergence
- More flexible, easier to maintain
GEM-E3/PRIMES use soft linking — they iterate until energy prices and economic activity are consistent.
┌──────────────────────────────────────────────────────────────┐
│ E3-MODELLING SUITE │
└──────────────────────────────────────────────────────────────┘
┌─────────────────┐
│ PROMETHEUS │
│ (World Energy) │
└────────┬────────┘
│
│ World fuel prices
│ (Oil, Gas, Coal)
▼
┌─────────────────┐
│ GEM-E3 │◄──────────────┐
│ (Economy) │ │
└────────┬────────┘ │
│ │
│ GDP, sectoral │
│ activity levels │ Energy prices,
▼ │ system costs
┌─────────────────┐ │
│ PRIMES │───────────────┘
│ (Energy) │
└─────────────────┘
│
│ Detailed energy
│ projections
▼
┌─────────────────┐
│ OUTPUTS │
│ (Integrated) │
└─────────────────┘
Step 1: PROMETHEUS runs
- Generates world fossil fuel price trajectories
- May include uncertainty bounds (P10, P50, P90)
Step 2: GEM-E3 initial run
- Uses PROMETHEUS prices
- Calculates GDP, sectoral output
- First estimate of energy demand response
Step 3: PRIMES runs
- Takes GDP trajectory from GEM-E3
- Optimizes energy system
- Calculates energy prices, system costs
Step 4: GEM-E3 re-runs
- Uses energy prices from PRIMES
- Updates economic projections
- May change GDP, sectoral composition
Step 5: Iterate
- Repeat steps 3-4 until convergence
- Convergence = energy flows ↔ economic costs are consistent
Iteration 1: GEM-E3(GDP₀) → PRIMES → Energy prices₁
Iteration 2: GEM-E3(prices₁) → PRIMES → Energy prices₂
Iteration 3: GEM-E3(prices₂) → PRIMES → Energy prices₃
...
Convergence: |prices_n - prices_{n-1}| < tolerance
GEM-E3 → PRIMES:
- GDP by country and year
- Sectoral value added (industry, services)
- Population, households
- Discount rates
PRIMES → GEM-E3:
- Energy demand by sector and fuel
- Energy prices (wholesale, retail)
- Investment in energy sector
- System costs
PROMETHEUS → GEM-E3/PRIMES:
- World oil prices (€/barrel)
- World gas prices (€/MWh)
- World coal prices (€/ton)
- Possibly: probability distributions
Challenges:
- Different sectoral aggregations
- Different time steps
- Different geographic boundaries
- Different price concepts
Solutions:
- Mapping tables between classifications
- Interpolation for time steps
- Regional aggregation/disaggregation
- Clear definition of price concepts
| Feature | Standalone Model | Coupled System |
|---|---|---|
| Technology detail | Limited in CGE | Full from PRIMES |
| Economic feedback | None in PE | Full from GEM-E3 |
| Price consistency | Assumed | Ensured by iteration |
| Uncertainty | Scenarios | PROMETHEUS distributions |
Full model run:
- PROMETHEUS: minutes
- GEM-E3 (one year): seconds to minutes
- PRIMES (one country-year): minutes
- Full iteration: hours
- All EU countries, all years: 1-2 days
Practical implications:
- Scenario design matters (can't run everything)
- Parallel computing helps
- Results caching important
| Question | Model(s) to Use |
|---|---|
| GDP impact of carbon tax | GEM-E3 |
| Optimal power mix in 2050 | PRIMES |
| Oil price uncertainty | PROMETHEUS |
| Sectoral employment effects | GEM-E3 |
| Technology investment needs | PRIMES |
| Carbon leakage from EU policy | GEM-E3 |
| Complete policy assessment | All three (coupled) |
The E3-Modelling suite can link with other models for extended analysis:
E3ME (Cambridge Econometrics)
- Type: Macroeconometric model (not CGE)
- Approach: Based on historical relationships, not optimization
- Key difference: Allows for under-utilized resources, path-dependent dynamics
- Use case: Alternative to GEM-E3 for macro drivers; sometimes used when Keynesian features desired
- Linkage: Can substitute for GEM-E3 in providing macro drivers to PRIMES
GAINS (IIASA)
- Type: Air pollution and greenhouse gas model
- Focus: Multi-pollutant, multi-effect analysis
- Key feature: Detailed emission control technology costs
- Use case: Air quality co-benefits; pollution control costs
- Linkage: Can receive energy scenarios from PRIMES; provides air pollutant costs
| Model | Developer | Linkage to E3 Suite |
|---|---|---|
| E3ME | Cambridge Econometrics | Alternative macro driver for PRIMES |
| GAINS | IIASA | Air pollutant costs; co-benefits analysis |
| GTAP | Purdue | Database source for GEM-E3 calibration |
| IEA WEO | IEA | Benchmark for PROMETHEUS validation |
Why multiple models exist: Different methodological approaches have different strengths. CGE models (GEM-E3) assume equilibrium; econometric models (E3ME) capture historical dynamics. Using multiple approaches provides robustness checks for policy conclusions.
End of Part V: Integration
Continue to Appendices for reference materials.
| Term | Definition |
|---|---|
| AEEI | Autonomous Energy Efficiency Improvement — exogenous efficiency gains over time |
| Armington elasticity | Substitution elasticity between domestic and imported goods |
| Calibration | Process of determining model parameters to replicate base year data |
| Carbon leakage | Increase in emissions outside a policy region due to the policy |
| CES | Constant Elasticity of Substitution — a production/utility function |
| CGE | Computable General Equilibrium — economy-wide model with optimization |
| Complementarity | Mathematical condition where either price=0 or market clears |
| Discount rate | Rate used to convert future values to present values |
| Dominant firm | Market structure where one large firm sets price, others follow |
| E3ME | Energy-Environment-Economy Model for Europe — macroeconometric alternative to CGE |
| EPEC | Equilibrium Problem with Equilibrium Constraints |
| ETS | Emissions Trading System (cap-and-trade) |
| Efficiency wage | Above-market wage paid to prevent shirking; explains unemployment |
| Equivalent Variation | Welfare measure: money to give before price change to reach new utility |
| Externality | Cost or benefit not reflected in market prices |
| GAINS | Greenhouse Gas and Air Pollution Interactions and Synergies model (IIASA) |
| GTAP | Global Trade Analysis Project — database for CGE models |
| Hotelling rule | Price of exhaustible resource rises at rate of interest |
| Learning curve | Relationship between cumulative production and unit cost |
| LCOE | Levelized Cost of Electricity |
| LP | Linear Programming |
| MAC | Marginal Abatement Cost — cost of reducing one more unit of emissions |
| MCP | Mixed Complementarity Problem — how CGE models are solved |
| MILP | Mixed-Integer Linear Programming |
| Monte Carlo | Simulation method using random sampling |
| Nested CES | Hierarchical structure of CES functions for multiple inputs |
| NLP | Nonlinear Programming |
| Numeraire | Good whose price is normalized to 1 |
| OPEC | Organization of Petroleum Exporting Countries — oil cartel |
| Partial equilibrium | Analysis of one market holding others constant |
| Ramsey-Boiteux pricing | Setting prices to recover fixed costs while minimizing welfare loss |
| SAM | Social Accounting Matrix — balanced data of economic flows |
| Shadow price | Marginal value of relaxing a constraint |
| Shapiro-Stiglitz | Efficiency wage model explaining involuntary unemployment |
| Sobol indices | Global sensitivity analysis measures |
| TFP | Total Factor Productivity |
| Time slice | Representative period used to approximate temporal variation |
| URR | Ultimate Recoverable Resources |
| Walrasian equilibrium | Price vector where all markets clear simultaneously |
| Welfare | Economic well-being; often measured as utility or equivalent variation |
| Symbol | Meaning |
|---|---|
| Goods/sectors | |
| Fuels | |
| Regions | |
| Time periods | |
| Hours/time slices |
| Symbol | Meaning | Units |
|---|---|---|
| Output | € or physical | |
| Capital | € | |
| Labor | persons or hours | |
| Energy | GJ, MWh | |
| Price | €/unit | |
| Wage | €/hour | |
| Interest rate | % | |
| Utility | index | |
| Consumption | € | |
| Investment | € | |
| Exports | € | |
| Imports | € | |
| Emissions | Mt CO₂ | |
| Carbon price | €/tCO₂ |
| Symbol | Meaning |
|---|---|
| Elasticity of substitution | |
| Share parameters | |
| CES substitution parameter ( |
|
| Depreciation rate | |
| Emission coefficient | |
| Weibull heterogeneity parameter | |
| Intangible cost |
CES Production Function:
Cost Minimization (FOC):
Price Elasticity:
Discrete Choice (Logit):
Market Clearing: $$Q^{supply}(P^) = Q^{demand}(P^)$$ The equilibrium price P is where buyers want exactly what sellers offer — no excess supply or demand.*
Complementarity:
Armington Composite:
Emissions:
Effective Fuel Price (with carbon tax):
Experience Curve:
Stock Update:
Net Present Value:
Hotelling Rule:
Resource Rent Growth:
Ramsey-Boiteux Rule:
Efficiency Wage (Shapiro-Stiglitz):
For readers with a background in computational physics and/or machine learning.
| E3 Concept | Physics Analogue | Connection |
|---|---|---|
| Walrasian equilibrium | Thermodynamic equilibrium | Both are stable states where no agent/particle has incentive to change; system minimizes a "potential" |
| Market clearing | Detailed balance | Flows in = flows out; conservation at each node |
| CES aggregation | Generalized mean / partition function |
|
| Elasticity of substitution (σ) | Inverse "temperature" | High σ = agents easily switch (high T, flat distribution); Low σ = locked in (low T, peaked distribution) |
| Shadow price (λ) | Lagrange multiplier | Identical math — the marginal "force" enforcing a constraint |
| Utility maximization | Free energy minimization | Agents maximize U subject to budget ↔ systems minimize F subject to constraints |
| SAM balance | Conservation laws | Row sums = column sums, like current conservation or mass balance |
| E3 Technique | Physics Analogue | Connection |
|---|---|---|
| Monte Carlo (PROMETHEUS) | MC in condensed matter | Same idea — sample parameter space, propagate to outputs, build distributions |
| Solving coupled nonlinear systems | Self-consistent field methods | CGE solves for prices where all markets clear simultaneously; iterative like SCF |
| Sensitivity analysis (Sobol) | Parameter sweeps | Which inputs drive output variance? Same question, same methods |
| GAMS/PATH solver | Newton-Raphson, conjugate gradient | Iterative solution of F(x)=0; PATH uses pivoting for complementarity |
| E3 Concept | ML Analogue | Connection |
|---|---|---|
| Calibration | Training / fitting | Adjust parameters so model replicates observed data |
| Elasticities | Hyperparameters | Control model behavior; often from literature, not estimated on the SAM |
| CES production function | Parametric model family | Like choosing between L1/L2/Huber loss — functional form matters |
| Discrete choice (logit) | Softmax |
|
| Intangible costs (μ) | Regularization / prior | Calibrated to match observed behavior; captures "non-financial" factors |
| Counterfactual simulation | What-if analysis | Change inputs (policy), observe outputs (welfare, emissions) |
| Shadow prices | Dual variables in constrained optimization | scipy.optimize returns these too |
- "Zero profit" doesn't mean firms make no money — it means no excess returns above opportunity cost (competitive equilibrium)
-
"Elasticity" is just the log-log slope:
$\varepsilon = d\ln Y / d\ln X$ - "Armington" = "domestic and imported goods are imperfect substitutes" — prevents unrealistic all-or-nothing trade swings
- "Recursive dynamic" = solve year-by-year, updating capital stocks — no perfect foresight (unlike intertemporal optimization)
- "Complementarity" = "either the constraint binds OR the shadow price is zero" — like KKT conditions you know from physics optimization
End of E3 Modeling Concepts Primer