code: def compute_eig(self):
          
          self.eig1 = _SHGrid.from_array(_np.zeros_like(self.vxx.data),
                                         grid='DH')
          self.eig2 = _SHGrid.from_array(_np.zeros_like(self.vxx.data),
                                         grid='DH')
          self.eig3 = _SHGrid.from_array(_np.zeros_like(self.vxx.data),
                                         grid='DH')
  
          for i in range(self.nlat):
              for j in range(self.nlon):
                  a = _np.array([[self.vxx.data[i, j],
                                  self.vxy.data[i, j],
                                  self.vxz.data[i, j]],
                                 [self.vyx.data[i, j],
                                  self.vyy.data[i, j],
                                  self.vyz.data[i, j]],
                                 [self.vzx.data[i, j],
                                  self.vzy.data[i, j],
                                  self.vzz.data[i, j]]])
  
                  eigs = _eigvalsh(a)
  
                  self.eig1.data[i, j] = eigs[2]
                  self.eig2.data[i, j] = eigs[1]
                  self.eig3.data[i, j] = eigs[0]
docs: Compute the three eigenvalues of the tensor: eig1, eig2, ei3.