Water in The Upper Mantle: A Global Perspective
Introduction
Despite being one of the most important drivers for the majority of geological processes, the role of water within the Earth’s mantle is still poorly understood. Volcanically erupted peridotite xenoliths give researchers a window of opportunity to empirically quantify the amount of water present within the mantle by measuring hydrogen concentrations within the xenoliths using FTIR. Several thousand of these measurements have been obtained by various studies, however they have not yet been spatially consolidated to allow for a global perspective. In this project, data from Peslier (2017) was used to geolocate over 4000 FTIR sample measurements to their respective geographic locations to visually observe the global distribution of mantle water.
Methods
Global water measurements compiled in Peslier et al., (2017) were downloaded in Excel format and geocoded by the sample name column using the OpenCageData API and Jupyter notebook. Lat/Long coordinates output into Excel from the OpenCage API was then used to import the global water dataset into ArcPro, and point features were created for olivine, clinopyroxene, orthopyroxene, and garnet. Symbology expressions were custom scripted using Arcade to visually represent gradational variations in xenolith water contents from yellow (dry) to blue (wet). From several different thermobarometers, xenolith equilibration depth calculations (see Peslier et al., 2017) were used to add a dimension of depth by extruding the global water point data into the Earth. Additional geologic spatial data was imported from AAPG Datapages to better compare global water concentration data within a variety of different geologic contexts. Several geoprocessing functions were performed in ArcPro on the global water dataset to improve the fidelity of the represented map and analyze trends, including: summarize nearest neighbor, interpolation (spline), and hotspot analysis.
Workflow
Geolocating Python Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | import sys from opencage.geocoder import OpenCageGeocode key = 'XXXXXXXXX' geocoder = OpenCageGeocode(key) addressfile = 'xenoliths.txt' try: with open(addressfile,'r') as f: for line in f: address = line.strip() results = geocoder.geocode(address, no_annotations='1') if results and len(results): longitude = results[0]['geometry']['lng'] latitude = results[0]['geometry']['lat'] print(u'%f;%f;%s' % (latitude, longitude, address)) # 40.416705;-3.703582;Madrid,Spain # 45.466797;9.190498;Milan,Italy # 52.517037;13.388860;Berlin,Germany else: sys.stderr.write("not found: %s\n" % address) except IOError: print('Error: File %s does not appear to exist.' % addressfile) except RateLimitExceededError as ex: print(ex) # Your rate limit has expired. It will reset to 2500 at midnight UTC timezone # Upgrade on https://opencagedata.com/pricing |
Georeferenced Output
Results
Orthopyroxene
Water content measured from OPX xenocrysts from around the world. Satellite imagery is substituted here for a shapefile of outlined countries for easier visibility. Overlain with locations of Large Igneous Provinces (LIP’s) and dyke swarm hotspot tracks.
Clinopyroxene
Water content measured from CPX xenocrysts from around the world. Overlain with global data visualizing the age of oceanic crusts.
Olivine
Water content measured from olivine xenocrysts from around the world. The location of oceanic subduction zones are also displayed.
Garnet
Water content measured from garnet xenocrysts from around the world. Global locations of volcanoes are also shown by the red dots here.