import os
import sys
import numpy as np
import matplotlib
import matplotlib.pyplot as plt
import platemotion
sys.path.insert(0, '../codes/')
import bulkMotion as bm
matplotlib.rcParams.update({'font.size': 28})
kwargs = dict()
kwargs['c_ocean'] = 'w' #'#a7d2fe'
kwargs['c_land'] = 'lightgray'
kwargs['c_plate'] = 'mistyrose'
kwargs['lw_coast'] = 0.6
kwargs['lw_pbond'] = 1
kwargs['lc_pbond'] = 'coral'
kwargs['alpha_plate'] = 0.6
kwargs['grid_ls'] = '--'
kwargs['grid_lw'] = 0.
kwargs['grid_lc'] = 'silver'
kwargs['Nqgrid'] = 10
kwargs['regrid_shp'] = 8
kwargs['legend'] = True
kwargs['pts_marker'] = 'v'
kwargs['pts_ms'] = 120
kwargs['pts_mfc'] = 'w'
kwargs['pts_mec'] = 'k'
kwargs['pts_mew'] = 1.8
# ITRF 2014 (https://academic.oup.com/gji/article/209/3/1906/3095992)
kwargs['pts'] = [126., -25.]
platename = 'Australia'
omega = [1.510, 1.182, 1.215]
plate = bm.build_PMM(platename, omega_cart=omega, plateBound='MRVL', plot=False)
fname = '../pic/insets/itrf14_{}.png'.format(platename)
plate.plot_basemap(figname=fname, zoom=10, scale=500, U=50, **kwargs)
Input: omega_cartesian (wxyz) Plate: Australia Cartesian rotation vector: wx: 1.5100 mas / yr wy: 1.1820 mas / yr wz: 1.2150 mas / yr Euler pole representation: Latitude: 32.3584 deg Longitude: 38.0532 deg Rotation rate: 0.6306 deg / Ma -31.503689297675223 deg 132.342370592841 deg Center the globe at: -25.0 deg 126.0 deg Crossing the 180/-180 longitude LATS bound min/max -57.566 -4.177 LONS bound min/max 73.33100000000002 180.0 Contains 47/100 point in plate
# ITRF 2014 (https://academic.oup.com/gji/article/209/3/1906/3095992)
kwargs['pts'] = [61., 29.]
platename = 'Eurasia'
omega = [-0.085, -0.531, 0.770]
plate = bm.build_PMM(platename, omega_cart=omega, plateBound='MRVL', plot=False)
fname = '../pic/insets/itrf14_{}.png'.format(platename)
plate.plot_basemap(figname=fname, zoom=6, scale=500, U=50, **kwargs)
Input: omega_cartesian (wxyz) Plate: Eurasia Cartesian rotation vector: wx: -0.0850 mas / yr wy: -0.5310 mas / yr wz: 0.7700 mas / yr Euler pole representation: Latitude: 55.0699 deg Longitude: 260.9055 deg Rotation rate: 0.2609 deg / Ma 59.0495697950527 deg 58.298438958227116 deg Center the globe at: 29.0 deg 61.0 deg LATS bound min/max 14.4 86.805 LONS bound min/max -35.488 146.963 Contains 44/100 point in plate
# ITRF 2014 (https://academic.oup.com/gji/article/209/3/1906/3095992)
kwargs['pts'] = [36., 30.]
platename = 'Arabia'
omega = [1.154, -0.136, 1.444]
plate = bm.build_PMM(platename, omega_cart=omega, plateBound='MRVL', plot=False)
fname = '../pic/insets/itrf14_{}.png'.format(platename)
plate.plot_basemap(figname=fname, zoom=10, scale=500, U=50, **kwargs)
Input: omega_cartesian (wxyz) Plate: Arabia Cartesian rotation vector: wx: 1.1540 mas / yr wy: -0.1360 mas / yr wz: 1.4440 mas / yr Euler pole representation: Latitude: 51.1764 deg Longitude: 353.2786 deg Rotation rate: 0.5149 deg / Ma 23.681724687872848 deg 47.057785574425566 deg Center the globe at: 30.0 deg 36.0 deg LATS bound min/max 11.577 39.08 LONS bound min/max 34.257 65.028 Contains 38/100 point in plate
platename = 'Australia'
Lats, Lons = bm.mesh_2dll([-40, -11], [112, 154], dlat=2, dlon=2)
V = dict()
# ITRF 2014 (https://academic.oup.com/gji/article/209/3/1906/3095992)
omega = [1.510, 1.182, 1.215]
plate = bm.build_PMM(platename, omega_cart=omega, plateBound='MRVL', plot=True)
V['ITRF2014'] = bm.pmm_lalo_enu(plate, Lats, Lons)
# ITRF 2008 (https://agupubs.onlinelibrary.wiley.com/doi/full/10.1029/2011JB008930)
omega = [1.504, 1.172, 1.228]
plate = bm.build_PMM(platename, omega_cart=omega, plateBound='MRVL', plot=True)
V['ITRF2008'] = bm.pmm_lalo_enu(plate, Lats, Lons)
# NNR-MORVEL56 Plate Angular Velocities (https://agupubs-onlinelibrary-wiley-com.caltech.idm.oclc.org/doi/10.1029/2011GC003751)
omega = [33.86, 37.94, 0.632]
plate = bm.build_PMM(platename, omega_sph=omega, plateBound='MRVL', plot=True)
V['NNR-MRVL56'] = bm.pmm_lalo_enu(plate, Lats, Lons)
# NNR-NUVEL-1 (https://agupubs.onlinelibrary.wiley.com/doi/pdf/10.1029/91GL01532)
omega = [33.8, 33.2, 0.68]
plate = bm.build_PMM(platename, omega_sph=omega, plateBound='MRVL', plot=True)
V['NNR-NUVEL1'] = bm.pmm_lalo_enu(plate, Lats, Lons)
Input: omega_cartesian (wxyz) Plate: Australia Cartesian rotation vector: wx: 1.5100 mas / yr wy: 1.1820 mas / yr wz: 1.2150 mas / yr Euler pole representation: Latitude: 32.3584 deg Longitude: 38.0532 deg Rotation rate: 0.6306 deg / Ma
2D array locations Input: omega_cartesian (wxyz) Plate: Australia Cartesian rotation vector: wx: 1.5040 mas / yr wy: 1.1720 mas / yr wz: 1.2280 mas / yr Euler pole representation: Latitude: 32.7830 deg Longitude: 37.9277 deg Rotation rate: 0.6300 deg / Ma
2D array locations Input: omega_spherical (euler pole) Plate: Australia Cartesian rotation vector: wx: 0.4139 deg / Ma wy: 0.3227 deg / Ma wz: 0.3521 deg / Ma Euler pole representation: Latitude: 33.8600 deg Longitude: 37.9400 deg Rotation rate: 0.6320 deg / Ma
2D array locations Input: omega_spherical (euler pole) Plate: Australia Cartesian rotation vector: wx: 0.4728 deg / Ma wy: 0.3094 deg / Ma wz: 0.3783 deg / Ma Euler pole representation: Latitude: 33.8000 deg Longitude: 33.2000 deg Rotation rate: 0.6800 deg / Ma
2D array locations