Beispiel #1
0
 def get_principal_axes(self):
     """
     Uses the eigendecomposition to extract the principal axes from the
     moment tensor - returning an instance of the GCMTPrincipalAxes class
     """
     # Perform eigendecomposition - returns in order P, B, T
     _ = self.eigendecompose(normalise=True)
     principal_axes = GCMTPrincipalAxes()
     # Eigenvalues
     principal_axes.p_axis = {'eigenvalue': self.eigenvalues[0]}
     principal_axes.b_axis = {'eigenvalue': self.eigenvalues[1]}
     principal_axes.t_axis = {'eigenvalue': self.eigenvalues[2]}
     # Eigen vectors
     # 1) P axis
     azim, plun = utils.get_azimuth_plunge(self.eigenvectors[:, 0], True)
     principal_axes.p_axis['azimuth'] = azim
     principal_axes.p_axis['plunge'] = plun
     # 2) B axis
     azim, plun = utils.get_azimuth_plunge(self.eigenvectors[:, 1], True)
     principal_axes.b_axis['azimuth'] = azim
     principal_axes.b_axis['plunge'] = plun
     # 3) T axis
     azim, plun = utils.get_azimuth_plunge(self.eigenvectors[:, 2], True)
     principal_axes.t_axis['azimuth'] = azim
     principal_axes.t_axis['plunge'] = plun
     return principal_axes
Beispiel #2
0
 def get_principal_axes(self):
     """
     Uses the eigendecomposition to extract the principal axes from the 
     moment tensor - returning an instance of the GCMTPrincipalAxes class
     """
     # Perform eigendecomposition - returns in order P, B, T
     _ = self.eigendecompose(normalise=True)
     principal_axes = GCMTPrincipalAxes()
     # Eigenvalues
     principal_axes.p_axis = {'eigenvalue': self.eigenvalues[0]}
     principal_axes.b_axis = {'eigenvalue': self.eigenvalues[1]}
     principal_axes.t_axis = {'eigenvalue': self.eigenvalues[2]}
     # Eigen vectors
     # 1) P axis
     azim, plun = utils.get_azimuth_plunge(self.eigenvectors[:, 0], True)
     principal_axes.p_axis['azimuth'] = azim
     principal_axes.p_axis['plunge'] = plun
     # 2) B axis
     azim, plun = utils.get_azimuth_plunge(self.eigenvectors[:, 1], True)
     principal_axes.b_axis['azimuth'] = azim
     principal_axes.b_axis['plunge'] = plun
     # 3) T axis
     azim, plun = utils.get_azimuth_plunge(self.eigenvectors[:, 2], True)
     principal_axes.t_axis['azimuth'] = azim
     principal_axes.t_axis['plunge'] = plun
     return principal_axes