code: def get_mesh_dict(self):
          
          if self._mesh is None:
              msg = ("run_mesh has to be done.")
              raise RuntimeError(msg)
  
          retdict = {'qpoints': self._mesh.qpoints,
                     'weights': self._mesh.weights,
                     'frequencies': self._mesh.frequencies,
                     'eigenvectors': self._mesh.eigenvectors,
                     'group_velocities': self._mesh.group_velocities}
  
          return retdict
docs: Returns calculated mesh sampling phonons
  
          Returns
          -------
          dict
              keys: qpoints, weights, frequencies, eigenvectors, and
                    group_velocities
  
              Each value for the corresponding key is explained as below.
  
              qpoints: ndarray
                  q-points in reduced coordinates of reciprocal lattice
                  dtype='double'
                  shape=(ir-grid points, 3)
              weights: ndarray
                  Geometric q-point weights. Its sum is the number of grid
                  points.
                  dtype='intc'
                  shape=(ir-grid points,)
              frequencies: ndarray
                  Phonon frequencies at ir-grid points. Imaginary frequenies are
                  represented by negative real numbers.
                  dtype='double'
                  shape=(ir-grid points, bands)
              eigenvectors: ndarray
                  Phonon eigenvectors at ir-grid points. See the data structure
                  at np.linalg.eigh.
                  dtype='complex'
                  shape=(ir-grid points, bands, bands)
              group_velocities: ndarray
                  Phonon group velocities at ir-grid points.
                  dtype='double'
                  shape=(ir-grid points, bands, 3)