This is a follow-up post on the previous one about energy in SA. After writing it, or more accurately after writing many of the same words in a very long Facebook battle recently, a few links were posted that claimed that EROEI doesn’t matter.
The Wikipedia article on EROEI gives a pretty good summary. In short, you use energy to collect energy in the future. It has been argued that EROI doesn’t matter when you have a source of energy as bountiful as the sun. Unfortunately, you actually have to build things like solar panels or windmills to capture the energy coming from the sun and convert it into something that we can use.
I wrote a quick simulation in Python that shows why it does matter,
and would like to paste some of the prettier results here for posterity. The scenario I analysed works as follows:
Imagine we live in a world where we are using 1 energy unit every month, and we expect to double that usage over the next 100 years in a linear fasion (this is already a little ambitious, as recent energy demand growth has been closer to an exponential). Further, imagine we have the ability right now to produce 1.2 units of energy every month (20% more than we use), but we want to phase out the dirty old technology linearly over a period of 15 years. Graphically the situation looks like this, for the next 20 years.
So, let’s say we see problems ahead and therefore we use some fraction of the surplus energy every month (say 20%) to build new solar panels which will supply clean energy in the future. For the purposes of this simulation, let’s use a productive lifetime for these panels of 20 years. The EROEI is the ratio of the energy produced by the panel over its total lifetime to the original energy cost of the panel. The next figure shows the results of our slightly unnatural situation for values near the balance:
I’ve shown three values for EROEI for our theoretical solar panels, chosen so that they either fail to satisfy our energy demand, just manage to do so or do so exponentially well. This illustrates just how important it is to invest in the correct technology, even if it is renewable. In our example, any EROEI less than 10.3 will result in us running out of energy, with no way to build ourselves out of it. There is no Energy Bank where we can borrow a lot of energy to build the new things we need – the world doesn’t work that way. The closest we have at the moment is the energy stored as fossil fuels, but that is also not an infinite resource.
Another way of looking at EROEI is that it determines what fraction of the total energy activity of our society is dedicated to building replacement energy devices. In fact, the calculation is very simple, this fraction just the inverse of the EROEI (1/EROEI). So when EROEI is 2, half of the energy economy is dedicated to building more energy devices.
I post the source code for the simulation here in the interest of transparency. Note that these are fictional numbers in fictional units, but the simulation illustrates a point: there is something like a too-low return when it comes to building the new energy capacity that we will need to ween ourselves off fossil fuels.
from __future__ import division import matplotlib.pyplot as plt # Simulation parameters Nyears = 20 Nmonths = 12*Nyears # Installed capacity def installed(i): """ Linear decline in installed capacity down to zero""" endt = 15*12 beginE = 1.2 if i > endt: return 0 else: return (endt - i)*(beginE)/endt # Usage def usage(i): """ linear increase of 0.1 unit per year of 1 unit/month """ return i*1/100/12 + 1 # New energy stats life = 20*12 buildfactor = 0.2 # For plotting months = range(Nmonths) def simulate(EROEI): # Initial energy E = 0 # remember what we have built builds = [] Eovertime = [] for i in months: # add installed capacity E += installed(i) # add energy from built capacity for (b, Ecost) in builds: if i - b < life: E += Ecost*EROEI/life # subtract usage E -= usage(i) if E < 0: E = 0 # can't go into energy debt else: # spend a fixed fraction of reserves on building new capacity Ecost = buildfactor*E E -= Ecost builds.append((i, Ecost)) # Save what we have after all that Eovertime.append(E) return Eovertime timeaxis = [i/12 for i in months] plt.plot(timeaxis, map(installed, months), timeaxis, map(usage, months)) plt.xlabel('Years in future') plt.ylabel('Energy') plt.legend(['Old energy installed capacity', 'Usage'], 'best') plt.savefig('assumptions.png') plt.figure() ratios = [10.5, 10.305, 10.1] for EROEI in ratios: plt.plot(timeaxis, simulate(EROEI), linewidth=2) plt.ylim([0, 4]) plt.axvline(15, color='black') plt.axhline(0, color='black') plt.xlabel('Years in future') plt.legend(ratios, 'best') plt.ylabel('Energy stored') plt.savefig('trajectories.png') plt.show()


Leave a Reply