Releases ######## .. the text for EPW v6alpha is commented out temporarily EPW v6alpha ----------- The EPW v6alpha version doesn't include some functionalities and fixes which will be included in the production v6 version. For this alpha version, support is limited and we recommend users to use EPW v5.7 for the production runs. We will announce the release date here. New features in EPW v.6.alpha (3/2023): * Hybrid parallelism (partially included) * Parallel HDF5 (partially included) * Complete list of new features will be available when the production v6 version is released. EPW v5.8 -------- New features in EPW v.5.8 (12/2023): * Real part of the electron self-energy (bandgap renormalization) using Wannier function perturbation theory * Optical absorption spectra in all regimes of photon energy (both direct and indirect) using quasi-degenerate perturbation theory * Long-range dynamical matrix and electron-phonon matrix for 2D systems * Anharmonic special displacement method for phonon band renormalization due to anharmonicity using special displacement method Fixed in EPW v.5.8 * Bug fix of a2f miscalculation when resuming a calculation with restart.fmt * Compiler error fix for nvfortran Incompatible changes * crystal.fmt and prefix.ephmat output by earlier versions (<= v5.7) can no longer be read * Previous version (<= v5.7) crystal.fmt can be made compatible using the patch: :download:`patch ` EPW v5.7 -------- New features in EPW v.5.7 (3/2023): * Polaron Fixed in EPW v.5.7: * Linear mixing in the superconductivity module EPW v5.6 -------- New features in EPW v.5.6 (11/2022): * Ionized impurity scattering * Ionized-impurity-assisted indirect optical absorption * Periodicity of long-range matrix elements ensured by shifting the G-sum EPW v5.5 -------- New features in EPW v.5.5 (5/2022): * The full-bandwidth approach to the Eliashberg equations and the sparse sampling in the superconductivity module * Updates in the ZG package: automatization and simplification of ZG procedure to calculate temperature-dependent observables Fixed in EPW v.5.5: * Bug fix in the subroutine of ephwan2blochp (reported by Deng Tianqi) EPW v5.4.1 ---------- New features in EPW v.5.4.1 (11/2021): * Addition of spectral decomposition capability in the transport module. * Support of the file format of frmsf of Fermisurfer. * Update in the cumulant module * Updates in the ZG package: convoluted diffuse scattering maps are done automatically by disca.f90 and ZG.f90. New tutorial tarball. Fixed in EPW v.5.4.1: * use_ws = .true. was not working in the cases of etf_mem = 0 and etf_mem = 2 (Courtesy of Jan Berges) * Bug fix in the subroutine of eliashberg_read_aniso_iaxis (reported by Mehmet Dogan) * On-the-fly mode in the analytical continuation in the superconducting module was not working Incompatible changes in EPW v.5.4.1: * Addition of input flags of mob_maxfreq and mob_nfreq. EPW v5.4 -------- New features in EPW v5.4 (7/2021): * Addition of a new way to construct the fine interpolation k-point grid based on the ``fsthick`` window * Addition of mode-resolved scattering rate * Addition of quadrupole tensor while doing the interpolation * Addition of Hall mobility and Hall factor * Addition of 2D treatment following Sohier's method (Still in development) * Updates in indirect optics module * Free carrier absorption (Still in development, use with caution): Calculates Fermi-level for given carrier density hence phonon-assisted optics of the given carrier density. Follows tag ``carrier`` and ``ncarrier``. * Restart: now support restart on the fine grid when calculating indirect optical properties. Controlled by tags ``restart`` and ``restart_step``. * Direct optics: Direct optical absorption up to ``4*fsthick`` is calculated now before the start of calculation of indirect optics using energies and velocities from the fine grid. * Isotropic linearized Eliashberg equation to get Tc * ab initio calculation of velocity matrix elements with non-local pseudopotential and augmentation charge considered * Updates in the ZG package: Updates and a parallelized version of ``ZG.x``, band structure unfolding routine (``bands_unfold.x``) added, phonon diffuse scattering routine (``disca.x``) added Fixed in EPW v5.4: * Fixed a bug that in the indirect optics module, not only I/O nodes are writing data which caused the final writing process to be potentially very slow. * Optimal Wigner-Seitz construction for the electron-phonon matrix elements Incompatible changes in EPW v5.4: * Removal of ``kmaps`` * Change in ``vme``: * If ``vme = 'dipole'``, then computes the velocity as dipole+commutator = <\psi_mk|p/m+i[V_NL,r]|\psi_nk> and if ``vme = 'wannier'``, then computes the velocity as dH_nmk/dk - i(e_nk-e_mk)A_nmk where A is the Berry connection. * ``vme = 'wannier'`` was ``vme = .TRUE.`` before v5.4 * Before v5.4, if ``vme= .FALSE.``, then computes the velocity in the local approximation as <\psi_mk|p|\psi_nk>. EPW v5.3.1 ---------- New features in EPW v5.3.1 (11/2020): * ZG package to generate special displacements for first-principles non-perturbative calculations at finite temperatures [`Marios Zacharias and Feliciano Giustino, Phys. Rev. Research 2, 013357 (2020) `_]. * Plot Fermi surface. * Refactor suggested citations. * Check inputs that the user provides. * Compute the IBZ at only one place. Fixed in EPW v5.3.1: * Restoration of G-dependent bound in the subroutine of rgd_blk. * Wrong behaviour in the treatment of specific space groups in generation of irreducible Brillouin zone. * Bug in I/O of epmatwe and epmatwp when outdir is specified (reported by Jae-Mo Lihm). * Wrong order of band indices in the array of epc_sym in the subroutine of print_gkk. * Temperature incorrectly dependent on smearing parameters. * bvec files not correctly written unless the unrelated input flags such as band_plot are used. EPW v5.3 -------- New features in EPW v5.3 (07/2020): * Use of the band manifold determined by Wannierization step when evaluating electron-phonon vertex on coarse grids * Support for PAW * SU(2) transformation of spinor wave functions in spin-orbit case * Speed-up in evaluating electron-phonon vertex on coarse grids through the modification of symmetry-related parts. * Speed-up in the evaluation of augmented terms in USPP and PAW cases through the parallelization over G vectors. * Implementation and extension of load balancing and restart features in the superconducting module * Reorganization of temperature variables: see the Incompatible changes below and :doc:`the Inputs page `. * Implementation of plotting Wannier functions without writing and reading UNK files * MPI-IO parallelization of the ephbloch2wanp_mem routine * Speed-up and restart while calculating electron-phonon matrix elements in superconducting calculations * Create a .bib file that contains the relevant citations in bibtex format * Identification of the problematic line in the EPW input Incompatible changes in EPW v5.3: * Removal of *q*-point list in the EPW input: In order to generate the *q*-point list from the symmetry of the system, we shouldn’t use ``nosym=.true.`` in nscf calculations. If nscf calculation generates more *k* points than you provided, you have to use ``calculation='bands'`` instead of ``calculation='nscf'`` without using any symmetry-related flag such as nosym. * Removal of ``nbndskip``: Now ``nbndskip`` is automatically calculated from the list of excluded bands by use of ``the bands_skipped`` flag, for instance, ``bands_skipped = 'exclude_bands = 1:5'``. In order to avoid the issue resulting from the *k*-dependent ``nbndskip``, the ``dis_win_max`` flag is ignored; the lower bound of the band manifold should be controlled by the combination of ``bands_skipped`` and ``exclude_bands``. * Change in the contents of ``prefix.ukk`` and ``prefix.kgmap`` files * Change in the file name of prefix.epmatwp (``prefix.epmatwp1`` changed into ``prefix.epmatwp``) * Temperature input reorganized: ``eptemp``, ``tempsmin``, ``tempsmax`` removed and temperature inputs are now only controlled by ``temps`` and ``nstemp``. For a single temperature, input only one entry in ``temps``. For automatic generation of uniform temperature grid, input the minimum and maximum in ``temps`` and set ``nstemp`` to the total number of points desired (greater or equal to 2 and less or equal to 50). This list is generated in the same way as the previous ``tempsmin``, ``tempsmax``, ``nstemp`` routine. Otherwise, explicitly define ``temps`` as a list of no more than 50 temperatures. ``nstemp`` is an optional input in this case. If ``temps`` and ``nstemp`` are left undefined, they are set to 300 and 1, respectively. * Electron-phonon matrix elements (ephmatXX), egnv, freq and ikmap files are now saved in ‘prefix.ephmat’ directory (‘prefix’ is removed in the filename) in a superconducting calculations. Change in the contents of ‘ikmap’ and ‘freq’ files. * When PAW datasets are used, the updated pp.py in q-e/EPW/bin should be used to import the PAW contribution to dvscf. * To plot Wannier functions, relevan inputs should be passed to EPW (not to Wannier90 through the keyword of ``wdata``). The supported inputs are as follows: * ``wannier_plot`` (logical, in default .false.) * ``wannier_plot_list`` (integer lists, in default entire Wannier functions): Due to the difference in parsing between EPW and Wannier90, the list of Wannier functions to plot should be enclosed with single quotation marks, that is, ``wannier_plot_list = '1, 3-5, 7'``, not ``wannier_plot_list = 1, 3-5, 7`` as in Wannier90. * ``wannier_plot_supercell`` (three integers, in default 5 5 5) * ``wannier_plot_scale`` (real, in default 1.0) * ``wannier_plot_radius`` (real, in default 3.5 Ang.) * ``reduce_unk`` (logical, in default .false.) EPW v5.2 -------- New features in EPW v5.2 (12/2019): * Additional modularization of most EPW subroutines * Introduced uniform coding style according to :ref:`EPW good coding practice` * The ``filkf`` and ``filqf`` can now take points in crystal or cartesian coordinate * Transport module: * transition probabilities are written locally on the scratch of each node and then merged together * Improvements in symmetry * Adaptative broadening (triggered when ``degaussw == 0``) * Systematic check of allocation/deallocation. A clean error message is issue in case of problems * Debug when using ``scissor`` * New test for mobility in polar non-cubic materials * Debug in the case of crystal sum-rule and non-cubic materials. * Renamed input variables: * restart_freq --> restart_step .. Commented out since there is no info FG * Removed input variables: * XX * New input variables: * XX * Change of default of input variables: * vme is now .TRUE. by default EPW v5.1 -------- New features in EPW v5.1 (02/2019): * Support for ultrasoft pseudopotentials * Improved the cumulant expansion for electron spectral functions * New Wigner-Seitz cell construction * Speed and memory optimizations for mobility calculations * :math:`\bf k`-point symmetry support for the Boltzmann Transport Equation (BTE) * Linear mixing for BTE * Introduction of ``qwindow`` to reduce the required number of :math:`\bf q`-points to be calculated * Load balancing among cores of active :math:`\bf k`-points * Indirect absorption calculation using electron eigenvalues read from file * Optimizations in the case of ultra-dense fine grids * Exact calculation of band velocity using ``vme`` (read ``.bvec`` from latest wannier90) * Modularization of the code * Removed input variables: * time_max * New input variables: * use_ws * vme variable now working EPW v5.0 -------- New features in EPW v5.0 (04/2018): * Electronic transport (conductivity, resistivity, mobility) * Cumulant expansion for electron self-energy * Lindhard screening of electron-phonon matrix elements * Support for ``exclude bands`` * Calculation of velocity matrix elements beyond the local approximation using ``vme == .true.`` * Removed of the EPW/tests folder. The tests are now in ``q-e/test-suite`` * Removed :math:`\bf q`-point parallelism * Removed input variables: * parallel_k * parallel_q * New input variables: * cumulant * epsiHEG * fermi_diff * lscreen * scr_typ * meff * nel * smear_rpa * specfun_p * scattering * scattering_serta * int_mob * iterative_bte * mob_maxiter * carrier * ncarrier * scissor * lphase EPW v4.3 -------- New features in EPW v4.3 (09/2017): * Memory optimization (memory saving enabled with ``etf_mem = 2``) * Possibility to print the electron-phonon vertex :math:`|g_{mn\nu}(\bf k,\bf q)|` using the new ``prtgkk`` input variable * Printout of Real and Imaginary part of the phonon self-energy :math:`\Pi_{\bf q\nu}` and phonon spectral function * When providing the :math:`\bf q`-points in the epw input file. The weight should not be reported anymore * New input variables: * prtgkk * Modified input variables: * etf_mem * specfun is now specfun_el EPW v4.2 -------- New features in EPW 4.2 (01/2017): * Memory optimization for large systems (50+ atoms in the primitive cell) * Possibility to impose the acoustic sum rule using the ``'simple'`` or ``'crystal'`` options * Removed input variables: * spinors * New input variables: * lifc * asr_typ * restart * restart_freq * Introduced band parallelism. This is activated using the ``-nimage`` keyword when launching EPW. It only works until the ``.epb`` file is created. After this point it is necessary to read the ``.epb`` file an use only ``-npool`` parallelization * Create restart point during the interpolation on the fine :math:`\bf q`-grid EPW v4.1 -------- New features in EPW v4.1 (09/2016): * Speed optimization (more BLAS calls, replacement of "exp" by look-up table) * Various bug fixes * Correct Wannier localization with spinors * The Test Farm now tests 5 representative examples and the corresponding accuracy: :doc:`Accuracy ` * Added code coverage of Test Farm: :doc:`Code coverage ` * Added automatic documentation using `Ford `_ * About 30% of the routines are documented for Ford * I/O reduction (.e.g no more igk files) * Restart with arbitrary number of cores after ``epmatwp1`` is written * The spectral function :math:`\Sigma_{n\textbf{k}}` is averaged over degenerate eigenstates * Phonon frequencies added to ``linewidth.phself`` * Electron bands and phonon dispersions can be computed using ``band_plot`` with ``etf_mem`` true or false. * Debug for IEEE floating-point exception, underflow, overflow. * Purge of unused variables * Specify that :math:`\Gamma`-only calculations are not supported * Removed input variables: * filelph * fly * tphases * fildvscf0 * tshuffle * tshuffle2 * selfen_type * eminabs * emaxabs * deltaeabs * phinterp * elinterp * epstrict * twophoton * indabs * Added input variables: * shortrange * longrange * Remove most of the ``#ifdef __PARA`` to increase readability. This should only be used in low-level routines and replaced by ``#ifdef __MPI`` * Replacement of ``CMPLX (A, B)`` by ``CMPLX (A, B, kind=DP)`` that was causing a loss of precision * Addition of links to the documentation of input variables * Correction of a bug with ``MPI_FILE_SEEK`` when ``etf_mem = .false.`` and the calculation is large * Removal of the ``epf`` files written when ``etf_mem = .false.`` EPW v4.0 -------- New features in EPW v4.0 (04/2016): * :math:`\textbf{q}`-point parallelism * Speed optimization * Scalability to 120 cores * Various bug fixes * Creation of Test Farm * Support for time-reversal symmetry * Compatibility with the latest version of Quantum ESPRESSO * Integration of EPW repository within Quantum ESPRESSO * Updated tutorials * Creation of YouTube tutorials * Creation of EPW forum