Beispiel #1
0
    def run_phonon_solver(self, grid_points=None):
        """Calculate phonons at grid_points.

        This method is used in get_triplets_integration_weights by this
        method name. So this name is not allowed to change.

        """
        if grid_points is None:
            _grid_points = np.arange(len(self._bz_grid.addresses),
                                     dtype="int_")
        else:
            _grid_points = grid_points

        run_phonon_solver_c(
            self._dm,
            self._frequencies,
            self._eigenvectors,
            self._phonon_done,
            _grid_points,
            self._bz_grid.addresses,
            self._bz_grid.QDinv,
            self._frequency_factor_to_THz,
            self._nac_q_direction,
            self._lapack_zheev_uplo,
        )
Beispiel #2
0
 def _run_phonon_solver_c(self, grid_points):
     run_phonon_solver_c(self._dm,
                         self._frequencies,
                         self._eigenvectors,
                         self._phonon_done,
                         grid_points,
                         self._grid_address,
                         self._mesh,
                         self._frequency_factor_to_THz,
                         self._nac_q_direction,
                         self._lapack_zheev_uplo)
Beispiel #3
0
 def _run_phonon_solver_c(self, grid_points):
     run_phonon_solver_c(
         self._dm,
         self._frequencies,
         self._eigenvectors,
         self._phonon_done,
         grid_points,
         self._bz_grid.addresses,
         self._bz_grid.QDinv,
         frequency_conversion_factor=self._frequency_factor_to_THz,
         nac_q_direction=self._nac_q_direction,
         lapack_zheev_uplo=self._lapack_zheev_uplo,
     )