Skip to content

Commit

Permalink
Add Wiki-Solar data contributions.
Browse files Browse the repository at this point in the history
Wiki-Solar (https://wiki-solar.org) has graciously agreed to a data
sharing arrangement which included making substantial contributions to
fill in geographies where data was severely missing in the Global Power
Plant Database. This addition adds over 3700 solar facilites totalling
over 113 GW of capacity to the GPPD. It adds the first solar plants for
46 countries, including the first power plants of any kind for 3 countries.

Includes first power plants for:
PSE     Palestine
SUR     Suriname
LCA     Saint Lucia

Gains over a GW:
CHN     China (~52GW = 17x increase)
IND     India (~23GW = 9x increase)
JPN     Japan
CHL     Chile
AUS     Australia
DEU     Germany
ESP     Spain
MEX     Mexico
BRA     Brazil
VNM     Vietnam
ITA     Italy
FRA     France
OMN     Oman

For the present the USA is excluded from the list provided by Wiki-Solar,
since those facilities are expected to be made available through the US EIA.

Net change of +3733 plants @ 113.34 GW.
Database Version 1.2.1
  • Loading branch information
loganbyers committed Jan 31, 2020
1 parent 853ab84 commit df7b0be
Show file tree
Hide file tree
Showing 6 changed files with 12,529 additions and 4,618 deletions.
52 changes: 52 additions & 0 deletions build_databases/build_global_power_plant_database.py
Original file line number Diff line number Diff line change
Expand Up @@ -185,6 +185,58 @@
core_database[plant_id] = plant
database_additions['GEO']['count'] += 1

# STEP 3.1: Append another multinational database
wiki_solar_file = pw.make_file_path(fileType="raw", subFolder="Wiki-Solar", filename="wiki-solar-plant-additions-2019.csv")
country_lookup = {cc.iso_code: cc.primary_name for cc in country_dictionary.values()}
# FIXME: patch lookup with additional geographies relevant in the wikisolar dataset
country_lookup.update({
# Bonaire, Sint Eustatius and Saba
"BES": "Netherlands",
# Cayman Islands
"CYM": "United Kingdom",
# Puerto Rico
"PRI": "United States of America",
# Reunion
"REU": "France",
# The Virgin Islands of the United States
"VIR": "United States of America",
})
wiki_solar_skip = {
'United States of America': (0, 0)
}
wiki_solar_whitelist = ['PRI']

wiki_solar_count = 0
with open(wiki_solar_file) as fin:
wiki_solar = csv.DictReader(fin)
for solar_plant in wiki_solar:
country = country_lookup.get(solar_plant['country'], '')
plant_idnr = 'WKS{0:07d}'.format(int(solar_plant['id']))
plant_location = pw.LocationObject(latitude=float(solar_plant['lat']), longitude=float(solar_plant['lon']))
plant = pw.PowerPlant(
plant_idnr=plant_idnr,
plant_name=solar_plant['name'],
plant_country=country,
plant_capacity=float(solar_plant['capacity']),
plant_location=plant_location,
plant_coord_source='Wiki-Solar',
plant_source='Wiki-Solar',
plant_source_url='https://www.wiki-solar.org',
plant_primary_fuel = 'Solar'
)
if (country in wiki_solar_skip) and \
(solar_plant["country"] not in wiki_solar_whitelist):
_n, _capacity = wiki_solar_skip[country]
wiki_solar_skip[country] = (_n + 1, _capacity + plant.capacity)
continue
core_database[plant_idnr] = plant
wiki_solar_count += 1
print("Loaded {0} plants from Wiki-Solar database.".format(wiki_solar_count))
for _country, _vals in wiki_solar_skip.iteritems():
if _vals[0] != 0:
print("...skipped {0} plants ({1} MW) for {2}.".format(_vals[0], _vals[1], _country))


# STEP 4: Estimate generation for plants without reported generation for target year
count_plants_with_generation = 0
#for plant_id,plant in core_database.iteritems():
Expand Down
2 changes: 1 addition & 1 deletion output_database/DATABASE_VERSION
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
1.1.16
1.2.1

Loading

0 comments on commit df7b0be

Please sign in to comment.