Renewables and the potential for solar

How the transition to renewables is justifying itself


Aims: In less than 80 minutes, enough solar energy hits the Earth to power energy the whole world's energy usage for a whole year, and the world has only just started to take advantage. The general consensus is that switching to renewable energy sources is perhaps the most important goal in limiting climate change. This project looks at this transition by focusing on solar development, and shows how the economics of solar are enough to justify its need.

In 1965, Gordon Moore (co-founder of Intel) observed that the number of components in an integrated circuit (think transistors, capacitors etc) doubled with each year of research, and predicted this trend to continue. A decade later in 1975 he amended his prediction to every two years. Now known as Moore's Law, the trend has guided long-term planning and targets in research and development.

To illustrate this, I used Python to scrape the microprocessor section of the Wikipedia Processors page to create a dataset of all the listed processors. Transistor density (often referenced as a proxy), has grown at a average biennial rate of 71.7% across the 50 year period, or 31% yearly.

Moore's Law in action

Are there similar dynamics at play in the solar industry? The following graphs plot data from the International Renewable Energy Agency (IRENA). First, I explored the general trend in solar prices relative to other renewables. The data uses a Levelised Cost of Electricity (LCOE), as a means of comparing different energy sources (essentially by comparing total costs, energy output, and lifespan). The graph is interactive: click a datapoint to highlight its series on both graphs, double-click to reset.

Across the 10 year period, solar photovoltaic (the most common type seen on rooftoops etc) has seen by far the biggest drop of nearly 7 times, with onshore wind becoming 2.5 times cheaper during the period. At the same time, they have both trended upwards in global installations. This suggests a 'learning effect' similar to that predicted in Moore's Law based models.

Isolating solar across the same period, I combined the global IRENA data with US focused data from Lawrence Berkeley National Laboratory (LBNL).

Now plotting cost against net installations, we see the cost of solar is a linear function of the doubling of capacity. This trend is consistent and gives a learning rate of roughly 39%, ie. for each doubling in capacity the cost per kWh will decrease by 39%.

Using a different IRENA dataset, obtained from their excel query tool, I split net solar installations into world regions. China's dominance in the solar industry warranted its own datapoint. Remarkably, prior to 2010, the world had less than 5% of the solar capacity it does today. The global expansion of solar shows a clear and accelerating increase, however the near non-existent values for the Middle East and particularly Africa show considerable wasted potential.

Despite the immensely reduced costs and rapid expansion, solar energy still makes up a fraction of the global energy balance. In 2020, solar power generation was only 4.5% of the power generation from coal. The data for these graphs is provided by the are the EIA API and so should update automatically with additions of new yearly data.

A strong case for renewables in the US

The graph above shows the cheapest new energy project for every county in the US, with removal of projects if they are predicted to be unfeasible. The data is collated by the University of Texas, Austin, and a generates dataset dependent on a few additional live parameters. To save steps, I uploaded the file straight to Github, and merged it with a GeoJson US Counties map live in the chart JSON specification. Note: Alaska is hid in Vega-Editor but does not transfer.

Lastly, this graph maps global emissions per capita using data from the EIA, with darker hues indicating higher pollution relative to population size. The API endpoint for this graph was only per region, and as such I used to Python automatically fetch data for each country. First, I scraped the specific Total Emissions API page listing each region with data. From this, I converted country names to 3 character ISO names, forming a list. It was then possible to loop through the API for each region, merging the data in a master dataset. I repeated this process for their Population API to calculate emissions on a per capita basis, and then merged again with a GeoJson file ready for export to Kepler. Python notebook.

The majority of data used came from the EIA, IRENA and LBNL. IRENA only offered data either through excel direct downloads or query tools. As such for these, it was a case of extracting the data into a separate sheet and simply saving as a CSV and exporting to Github. Their data is mostly infrequent, being released yearly in new update publications. Additionally, the nature of their data means the general trend has been identified and so there would not be considerable benefit in a live data source. LBNL similarly offered a large excel dataset containing semi-raw data and so the steps taken for this source were the same, with the data combined in a CSV file for the shared graph.

The US Energy Information Agency operate a free sign-up access API, with a good depth of information available. However, the API endpoints tend to give data for just one region, source etc. These single endpoints mostly don’t provide the most interesting data as they need another dimension for comparison. So to better utilise the data, I used Python to scrape the indicator page to generate a list of all the URL codes necessary (eg 3 letter country codes). From there, I was able to loop through the API and combine the results in a single, large dataframe.

This presented its own issues, for example, the indicator page with links to each regions’ API, listed only the country’s full name in the html, whereas the API endpoint would use a 3-letter abbreviation. I found a package that can convert between country names and their internationally recognised codes (eg ISO3), and used this to create the list. I ran the code multiple times to ensure all non-current countries were filtered out, and then adjusted the code to clean accordingly. The list is used to loop through the API roughly 200 times and add the cleaned results to a master dataframe.

Conclusions: The current trend in solar costs presents a massive opportunity for decarbonising the electricity system, as well as becoming the catalyst for green energy systems in those regions with rapidly accelerating energy usage. Solar costs still have some way to fall and as the US map showed, renewables widely make sense as both the economic and sustainable choice for new power.

Solar won’t be a solution in isolation of course. A major drawback of this analysis is that LCOE estimates don’t include storage technologies. Battery prices are many years behind solar in their learning curve, and their inclusion takes solar cost back to the top of the cost pile. As such, aiming for a near-full solar electricity grid is uneconomic and unsuitable.

Despite this, a system combined with other technologies is already capable of providing as cheap electricity as polluting alternative and the rate of development in solar technology gives a good indication of the future potential of renewables.