EPC: Matlab software to estimate Euler pole parameters
Abstract
The estimation of Euler pole parameters has always been an important issue in global tectonics and geodynamics studies. In addition, the increasing number of permanent GPS stations and the ease of access to their data, along with advances in computers, promise new methods and tools for the estimation and the quantitative analysis of Euler pole parameters. Therefore, we developed the Euler pole calculator software using a set of mathematical algorithms based on the model of tectonic plate motion on a spherical surface. The software is able to calculate the expected velocities for any points located on the earth’s surface given the relevant Euler pole parameters and to estimate the Euler pole parameters given the observed velocities of a set of sites located on the same tectonic plate. Mathematical algorithms and functions of the software are explained in detail.
Keywords
Direct Euler pole problem Inverse Euler pole problem MATLABIntroduction
Motion of the tectonic plates across the earth’s surface can be represented by Euler’s rotation theorem in spherical geometry. According to the theorem, the movement of a rigid body across the surface of a sphere can be described as a rotation around an axis of rotation that passes through the center of the sphere. The pole of rotation is one of the two points where that axis intersects the surface of the sphere (Lowrie 2007). Application of this theorem in geophysics states that the displacement of one tectonic plate relative to other plates takes place as a rotation about the Euler pole of relative rotation between the plates.
The Euler pole can be located by different methods. Previously, most of the successful plate motion models were determined from transform fault azimuths, earthquake slip vectors and spreading rates at mid-ocean ridges (Chase 1972; Minster and Jordan 1978; DeMets et al. 1990, 2010; Argus and Gordon 1991). These models can explain the large-scale features of plate kinematics (Qiang et al. 1999).
Despite the importance of the Euler pole estimation in geodynamic studies, to the best of our knowledge, there is only one other software program for the calculation of Euler pole parameters using GPS velocity vectors. It is called PlatE-Motion (PEM) and was developed at the National Institute of Geophysics and Volcanology (INGV: Istituto Nazionale di Geofisica e Vulcanologia) in Italy (Cannavò and Palano 2011). However, developing a new software program is still interesting because: (1) the software redundancy can increase the reliability of the model solution or can facilitate the model solution validation by comparing the results obtained from different software (Hill and Blewitt 2006) and (2) PEM is not publicly available. Therefore, we developed the Euler pole calculator (EPC) software at the Center for Research in Geomatics (CRG), Laval University, Canada, to calculate both (1) the horizontal velocities of any point on the earth’s surface given the Euler pole parameters and (2) the Euler pole parameters by inverting the observed velocities at a set of measuring sites on the earth’s surface located on the same rigid tectonic block. Although we originally developed the software to work with GPS velocity vectors, it can also be used with velocity vectors obtained from other methods.
First, in Sects. 2 and 2.1, we describe the mathematical models and the least-squares adjustment method used to estimate the Euler pole parameters using the velocity vectors of a set of stations either in the Earth-Centered Earth-Fixed Cartesian Coordinate System or in the Local Geodetic Cartesian Coordinate System. Then, we mathematically discuss estimation of the Euler pole on the ellipsoidal model of the earth and other aspects of the ellipsoid-to-sphere simplification in Sect. 2.2. Following that, in Sect. 2.3, we explain four statistical tests/methods to evaluate the quality of the models. Lastly in Sect. 3, we introduce the main features of the developed software.
Mathematical background
This new form of (1) can help to simplify calculations of the Euler theorem, and therefore, it will be used as the basic formula for developing models in the following sections.
Models and the least-squares adjustment
Using (2), it is possible to calculate the velocity vector of any point located on the earth’s surface having the Euler parameters, or infer the Euler pole parameters by inverting the observed velocity vectors of a set of points located on the same rigid tectonic block. We name the former case the “direct Euler pole problem” and the latter case the “inverse Euler pole problem.” Based on this definition, we present two mathematical models in the following sections.
Direct Euler pole problem in ECEF CCS
Therefore, the covariance matrix of the velocities in the LG CCS is also obtained.
Direct Euler pole problem in LG CCS
Equation (12) gives covariance matrix of the velocities directly in LG CSS, in which \({\mathbf{K}}_{i}^{{\left( {\text{LG}} \right)}}\) is the same with the Jacobian matrix of linearized observations in (11).
Inverse Euler pole problem in ECEF CCS
Having the covariance matrix of the rotation vector \({\varvec{\Sigma}}_{{{\varvec{\upomega}}^{p} }}\) from (18), we can calculate the accuracy or the sigma values of the estimated velocities using (7) and (8).
Inverse Euler pole problem in LG CCS
In LG CCS, we can write the observation equation for n stations in the same rigid plate by expanding the scalar form of (11), and the least-squares adjustment is continued same as Sect. 2.1.3. Having the covariance matrix of the rotation vector \({\varvec{\Sigma}}_{{{\varvec{\Omega}}^{p} }}\) from (16), we can obtain the covariance matrix of the estimated Euler pole parameters \({\varvec{\Sigma}}_{{{\varvec{\upomega}}^{p} }}\) and the estimated velocities using (18) and (11), respectively.
Discussion about models
In Sect. 2.1, we presented the mathematical models that are used to solve the direct or the inverse Euler pole problem in detail. However, some principal remarks about the Euler model, its inputs and calculations need to be discussed and clarified more. Therefore, in the rest of this section, we will discuss the effect of the simplification in the Euler model, the consequences of including the vertical component of the velocity vectors and the importance of reducing the size of the normal matrix.
Ellipsoid-to-sphere simplification
We approximated the ellipsoidal model of the earth by a spherical model for two reasons: (1) The Euler rotation theorem is defined in the spherical geometry and (2) to simplify our models. This simplification was applied on both the direct and the inverse Euler pole problems. Here, we discuss the amplitude of this simplification mathematically and show that for most of the cases, the difference between an ellipsoidal and a spherical model is negligible.
Equation (20) gives the geodetic latitude of the points where this difference is maximum. This latitude for the WGS84 ellipsoid (with e = 0.081819) equals to \(\phi = \pm 45^{^\circ } 5^{{\prime }}\), corresponding to maximum difference of 0.1924° (≃21.4 km on the earth’s surface).
- 1.
Use geodetic latitude for the position of stations, and then, transform spherical latitude of the estimated Euler pole to the geodetic latitude.
- 2.
Use spherical latitude for the position of stations.
In the direct Euler pole problem, however, spherical latitude of the Euler pole must always be used.
Simplification of the weight matrix
Effect of the vertical component of the velocities
We showed in (10) that the vertical velocities do not contribute to the estimation of the Euler pole parameters. However, this is not true for the a posteriori sigma value \(\hat{\sigma }_{0}\) obtained from (17). When a full vector of velocity residuals is used, \(\hat{\sigma }_{0}^{2}\) is increased by \(\mathop \sum \nolimits \nu_{{r_{z} }}^{2} /df\), and consequently, elements of the covariance matrix of the Euler pole parameters are artificially enlarged. To avoid this effect, the vertical components of the velocity vectors should not be used to calculate the rotation vector. In other words, the vertical components of velocity vectors should be set to zero before they are transformed from LG CSS to ECEF CCS. This is not the case, however, for the inverse Euler pole problem in LG CCS (Sect. 2.1.4).
The estimated Euler pole parameters and their sigma values from the velocity vectors in ECEF CCS (AV: angular velocity)
Data set | Lat. (°) | Long. (°) | AV (°/Myr) | σ_{Lat}. (°) | σ_{Long}. (°) | σ_{Omega} (°/Myr) |
---|---|---|---|---|---|---|
Original | −6.810 | −84.764 | 0.1856 | 4.218 | 1.219 | 0.0096 |
Transformed | −6.813 | −84.754 | 0.1855 | 1.319 | 0.381 | 0.0021 |
The difference between the location of the plate rotation pole and magnitude of the angular velocity is not significant with respect to the corresponding sigma values. As we expected, however, sigma values obtained from the transformed data set are smaller than the corresponding values obtained from the original data set by the factor of ~3.2 for this specific data set.
Comparing ECEF CCS and LG CCS
Ellipsoidal latitudes and horizontal velocities of the stations can be used directly in the model. In other words, the up-component of the velocity vector is already neglected, and therefore, there is no need to get ECEF Cartesian coordinates referring to a spherical reference shape.
The a posteriori sigma value is overestimated when a full vector of velocity residuals \((\nu_{{r_{x} }} ,\;\nu_{{r_{y} }} ,\;\nu_{{r_{z} }} )\) is used in ECEF CCS, as we showed in Sect. 2.2.3.
Statistical tests
Quality assessment of a model solution is crucial to evaluate the quality of the whole process in the estimation of Euler pole parameters. Therefore, we have implemented four statistical tests, namely χ^{2} test of goodness of fit, Pearson’s correlation coefficient, Baarda’s data snooping and the τ test. We believe that these tests are the most important ones for our purpose.
χ^{2} test of goodness of fit
The χ^{2} test is used to test whether a sample of data came from a population with a specific distribution. Since this test is independent of the distribution that is being used, it can be used to test the hypothesis that observations were drawn from a specific theoretical distribution.
Pearson’s correlation coefficient
If the calculated t is higher than the critical t with n−2 degree of freedom and the significance level of 5 %, then the correlation coefficient is significant. This test, however, is only valid when both of the variables have Gaussian distribution with respect to both of the variables (Trauth 2010).
Baarda’s data snooping
The tau test
This test is applied successively to all standardized residuals same as those used in the Baarda’s data snooping procedure. It is worth mentioning that when the degree of freedom r increases, t and τ distributions give closer critical values, and when r tends to infinite, both of them approach to the normal distribution (Kuang 1996; Leick 2004).
The software functionality
Based on mathematical models and statistical tests introduced in Sect. 2, we developed the EPC software using the MATLAB programming language with a Graphical User Interface (GUI). This choice makes the software cross-platform, and therefore, EPC can be run under the majority of operating systems, namely Windows, Macintosh and Unix/Linux. Since EPC has a GUI, an X-Window environment should also be installed on UNIX-like operating systems, and MATLAB should be started with the Java Virtual Machine (JVM) enabled. EPC requires the basic MATLAB and the following toolboxes: Statistics and Mapping.
Based on the mathematical models explained in Sect. 2.1, EPC accepts input files in two ASCII text formats: ECEF X, Y, Z and NEU. In the former format, data are stored in 13 space-separated columns, including station name (column one), coordinates of the station in the X-, Y- and Z-directions in ECEF CCS in meters (columns 2–4), associated velocities to the station in the X-, Y- and Z-directions in meters per year (columns 5–7) and their corresponding velocity errors (one sigma) in meters per year (columns 8–10) as well as the correlations between velocity components (X–Y, X–Z and Y–Z) (columns 11–13). In the latter format, data are stored in eight space-separated columns, including station name (columns 1), coordinates of the station in LG CCS in decimal degrees (columns 2–3), associated velocities to the station in north and east directions in meters per year (columns 4–5) and the corresponding velocity errors (one sigma) in meters per year (columns 6–7) as well as the correlation between the two velocity components (column 8). Except for the names of the stations, all the data for the former format must be in ECEF CCS, and for the latter format in LG CCS.
Data files in the proper format are opened and shown in the “Input data” table (Fig. 1). In either of the input formats, the software does not accept non-real values such as empty fields for the station coordinates and velocities, but this is acceptable for sigma values. Missed sigma values are substituted by “Not a Number (NaN).” However, depending on the nature of the problem (direct or inverse), they might not be necessary to calculate unknown parameters. In the direct Euler pole problem, for example, the associated sigma values for the estimated velocity vectors are calculated from the sigma values of Euler pole parameters based on the error propagation law (7) and (12). Nevertheless, when sigma values are necessary for calculations, for example, in the inverse Euler pole problem to form the weight matrix for estimating Euler parameters in the least-squares adjustment (14), they are substituted with the identity matrix. The software does not accept NaNs and real values at the same time.
In the direct Euler pole problem, the user should enter Euler pole parameters and their associated sigma values. Then, velocity vectors and velocity residuals along with the estimated velocity errors are calculated according to (3) or (11), and (7) or (12), depending on the coordinate system of the input data. In the inverse Euler pole problem, Euler pole parameters and the corresponding covariance matrix are estimated from (15) and (18) based on the coordinate system of the input data without user intervention. Furthermore, the degree of freedom, a posteriori sigma and the RMSE value are calculated in the inverse Euler pole problem.
We implemented four statistical tests explained in Sect. 2.3 to evaluate the quality of the solution in the Euler pole or velocity vector estimation. The χ^{2} test is used to test the null hypothesis that the velocity residuals are a random sample that can be described by a Gaussian distribution with a typical central value and a random dispersion around it. The null hypothesis is tested against the alternative hypothesis that the velocity residuals are not normally distributed with the estimated mean and variance. In the software, the velocity residuals in the east and north directions are separately tested at the 5 % significance level, and the result is reported along with the probability of observing the given statistic or one more extreme under the assumption of the null hypothesis (the p value), the chi-square statistic and the degree of freedom.
The Pearson’s correlation coefficient is used to give a rough estimate of the rectilinear trend in the results in the form of a scatter plot as well as numerical values. The observed velocities from the input data file are first plotted against the modeled velocities. This scatter plot visualizes the existing trend in the data set and shows the consistency of the results. Since the Pearson’s correlation coefficient is very sensitive to disturbances, it helps to detect outliers in the data set. Then, the correlation coefficients in the east and north directions are separately calculated. The significance of the correlation coefficient is tested afterward at 5 % significance level using the Student’s t test. If the calculated t is higher than the critical t, the correlation coefficient is significant.
Baarda’s data snooping is very well suited to find individual blunders in the input data set. In other words, it can be used to exclude sites containing gross errors in their velocities. For two reasons, observations that are detected as blunders should not be all removed in one step: (1) The existence of any blunder in the data set will affect the remaining observations, and (2) the rejection level in (28) depends on σ_{0} (Ghilani 2010). In other words, because of the nature of the least-squares adjustment method that tries to distribute blunders, several correct observations may get large residuals and be flagged by mistake (type I error) (Leick 2004). Therefore, it is recommended to eliminate only the larger blunder from the list of observations.
Blunders are eliminated in the tau test with the same method of the Baarda’s data snooping. That is, in every run of the test, only one single observation corresponding to the largest standardized residuals which was flagged as an outlier or blunder using (32) is eliminated, and the adjustment is rerun. This procedure is continued until no further observation is detected as an outlier. Then, the rejected observations are reentered into the adjustment one at a time to control if they are again detected as blunders. If an observation is detected as a blunder for the second time, it is discarded from the data set (Ghilani 2010).
Location of stations and their names from the input file, as well as the estimated velocity vectors, velocity residuals and the Euler pole can be visualized in the map canvas of the software (Fig. 1). This helps users to have a brief overview of the input and output data. Furthermore, because of the small size of the map canvas and the need to have the exact numerical values, the estimated parameters can be saved in the comma-separated values (csv), ESRI shape file (shp) and Google Keyhole Markup Language (kml) file formats. This makes the further numerical or visual analysis of the outputs very easy.
Notes
Acknowledgments
We included two functions of the geodetic toolbox developed by Mike Craymer in our software in order to reduce the number of the MATLAB toolboxes that are necessary to run the software.
References
- Argus DF, Gordon RG (1991) No-net-rotation model of current plate velocities incorporating plate motion model NUVEL-1. Geophys Res Lett 18(11):2039–2042CrossRefGoogle Scholar
- Baarda W (1968) A testing procedure for use in geodetic networks. Publication on Geodesy, New Series, 2(5), Netherlands Geodetic CommissionGoogle Scholar
- Cannavò F, Palano M (2011) PlatEMotion: a Matlab tool for geodetic reference frame definition. Rapporti Tecnici INVG 201:1–13Google Scholar
- Chase CG (1972) The N plate problem of plate tectonics. Geophys J Int 29(2):117–122CrossRefGoogle Scholar
- Curtis HD (2009) Orbital mechanics for engineering students, 2nd edn. Butterworth-Heinemann, LondonGoogle Scholar
- DeMets C, Gordon RG, Argus DF, Stein S (1990) Current plate motions. Geophys J Int 101(2):425–478CrossRefGoogle Scholar
- DeMets C, Gordon RG, Argus DF (2010) Geologically current plate motions. Geophys J Int 181(1):1–80CrossRefGoogle Scholar
- Ghilani CD (2010) Adjustment computations: spatial data analysis. Wiley, HobokenCrossRefGoogle Scholar
- Hill EM, Blewitt G (2006) Testing for fault activity at Yucca Mountain, Nevada, using independent GPS results from the BARGEN network. Geophys Res Lett 33(14):L14302CrossRefGoogle Scholar
- Kuang S (1996) Geodetic network analysis and optimal design: concepts and applications. Ann Arbor Press, ChelseaGoogle Scholar
- Leick A (2004) GPS Satellite surveying, 3rd edn. Wiley, HobokenGoogle Scholar
- Liu S, Trenkler G (2008) Hadamard, Khatri-Rao, Kronecker and other matrix products. Int J Inf Syst Sci 4(1):160–177Google Scholar
- Lowrie W (2007) Fundamentals of geophysics. Cambridge University Press, New YorkCrossRefGoogle Scholar
- Minster JB, Jordan TH (1978) Present-day plate motions. J Geophys Res 83(11):5331CrossRefGoogle Scholar
- Pope AJ (1976) The statistics of residuals and the detection of outliers. NOAA TRNOS 65 NGS 1, NOAA, Rockville, MDGoogle Scholar
- Qiang Z, Wenyao Z, Yongqin X (1999) Global plate motion models incorporating the velocity. Geophys Res Lett 26(18):2813–2816CrossRefGoogle Scholar
- Trauth MH (2010) MATLAB recipes for earth sciences. Springer, BerlinCrossRefGoogle Scholar
- Weber S (2004) The success of open source. Harvard University Press, CambridgeGoogle Scholar