[GPlates-discuss] Reconstructing plate boundaries with PyGPlates

Adam Holt adamholt at mit.edu
Sat Oct 28 09:12:35 AEDT 2017


Hi all,

I have a question about reconstructing plate boundaries using PyGPlates: I am using the Muller 2016 reconstruction to resolve plate topologies at 80 Ma, output boundaries, and then plot. My issue is that when I "resolve_topologies" in PyGPlates, I get errors for a few of the plates (error format: "ERROR: Failed to create a ResolvedTopologicalBoundary"), so that when I plot the boundaries there are gaps (e.g. in Mediterranean: See attached "PyGPlates" figure). When I do the same in GPlates (See attached "GPlates" figure), the plate boundaries are complete. Thus, it seems like I am doing something wrong with my simple PyGPlates script (copied below), and wondered if anyone could tell me what this is? Any help would be greatly appreciated!   

Thanks in advance!
Adam Holt



--------------------------------------------------------------------------------------------------
features_name='../../reconstructions/Muller_etal_AREPS_Supplement/Global_EarthByte_230-0Ma_GK07_AREPS_PlateBoundaries.gpml'
poles_name='../../reconstructions/Muller_etal_AREPS_Supplement/Global_EarthByte_230-0Ma_GK07_AREPS.rot'
ages_grd_name='/home/aholt/Dropbox/datasets/Muller_etal_2016_AREPS_Agegrids/netCDF_0-230Ma/agegrid_80.nc'
reconstruction_t=80

topology_features = pygplates.FeatureCollection(features_name)
poles = pygplates.RotationModel(poles_name);
resolved_topologies = []; shared_boundary_sections = []
pygplates.resolve_topologies(topology_features, poles, resolved_topologies, reconstruction_t,shared_boundary_sections)

plot_name='temp/temp_plot80Ma'
subprocess.check_call(['./plot_plate_boundaries.sh',str(plot_name),ages_grd_name,'temp/points.txt','50000'])  # initialize gmt plot

for shared_boundary_section in shared_boundary_sections:
    for shared_sub_segment in shared_boundary_section.get_shared_sub_segments():
        points = shared_sub_segment.get_resolved_geometry().to_lat_lon_array()
        np.savetxt('temp/points.txt',points[:,[1,0]],fmt='%.3f')
        subprocess.check_call(['./plot_plate_boundaries.sh',str(plot_name),ages_grd_name,'temp/points.txt','1','blue']) # plot segments

subprocess.check_call(['./plot_plate_boundaries.sh',str(plot_name),ages_grd_name,'temp/points.txt','10000']) # finish plot
------------------------------------------------------------------------------------------------------
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 80Ma_plate-bounds_GPlates.png
Type: image/png
Size: 242935 bytes
Desc: 80Ma_plate-bounds_GPlates.png
URL: <http://mailman.sydney.edu.au/pipermail/gplates-discuss/attachments/20171027/d870cd2b/attachment-0002.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 80Ma_plate-bounds_PyGPlates.png
Type: image/png
Size: 1598775 bytes
Desc: 80Ma_plate-bounds_PyGPlates.png
URL: <http://mailman.sydney.edu.au/pipermail/gplates-discuss/attachments/20171027/d870cd2b/attachment-0003.png>


More information about the GPlates-discuss mailing list