Changelog: Difference between revisions

From VASP Wiki
No edit summary
 
(15 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<!--
== 6.5.0 ==
<div id="Changelog650" style="display:inline;"></div>
=== FEATURE ===
* Spline interpolation of the electronic structure factor for k-point convergence acceleration of RPA correlation energies.
-->
== 6.4.3 ==
== 6.4.3 ==
<div id="Changelog643" style="display:inline;"></div>


==== FEATURE ====
==== FEATURE ====
* Non-blocked Davidson minimizer ({{TAG|ALGO}} = dav <-> {{TAG|IALGO}} = 119).
* Increased flexibility in the choice of exchange-correlation functionals: added the tags {{TAG|XC}} and {{TAG|XC_C}} to specify linear combinations of exchange-correlation functionals.
* Increased flexibility in the choice of exchange-correlation functionals: added the tags {{TAG|XC}} and {{TAG|XC_C}} to specify linear combinations of exchange-correlation functionals.
* Spline interpolation of the electronic structure factor for k-point convergence acceleration of RPA correlation energies.
* Additional MGGA functionals (v1-sregTM, v2-sregTM, v3-sregTM, and v2-sregTM-L) from Francisco, Cancio, and Trickey (https://doi.org/10.1063/5.0167868, https://doi.org/10.1063/5.0167873).
* CSVR thermostat of Bussi et al.
* Interface to the external code libMBD (https://libmbd.github.io): many-body dispersion methods for van der Waals interactions. See {{TAG|LIBMBD_METHOD}}.
* Write potential (total, xc, hartree and ion contributions) to {{FILE|vaspout.h5}}. In case the dipole correction is switched on and {{TAG|LVACPOTAV}}=.TRUE., the workfunction (rather, the vacuum potentials on either side of the slab) will be automatically determined and written to both the {{FILE|OUTCAR}} as well as to the {{FILE|vaspout.h5}} file.
* Analyze the bandgap and write the results to {{FILE|OUTCAR}} and {{FILE|vaspout.h5}}. The details of the output are controlled with the {{TAG|BANDGAP}} tag.
* [[Plotting exciton wavefunction|Compute and write out exciton wavefunctions in BSE]] (written to {{FILE|CHG}}).
* Non-blocked Davidson minimizer ({{TAG|ALGO}} = Dav, or {{TAG|IALGO}} = 119).
* Select the minimum number of local reference configurations required to build an MLFF via the {{TAG|ML_MB_MIN}} tag. A new log line "MSG" with a text message is written to {{FILE|ML_LOGFILE}} if this threshold inhibits training.
* [[CSVR thermostat]] of Bussi et al.
* {{TAG|WRT_POTENTIAL}} writes the potential (total, xc, hartree, and ion contributions) to {{FILE|vaspout.h5}}. In case the dipole correction is switched on and {{TAG|LVACPOTAV}}=.TRUE., the workfunction (rather, the vacuum potentials on either side of the slab) will be automatically determined and written to both the {{FILE|OUTCAR}} as well as to the {{FILE|vaspout.h5}} file.
* {{TAG|LWRITE_SPN}}=T writes the spin-matrix element to the .spn file for wannier90.
* {{TAG|LWRITE_SPN}}=T writes the spin-matrix element to the .spn file for wannier90.
* Analyze the bandgap and write the results to {{FILE|OUTCAR}} and {{FILE|vaspout.h5}}. The details of the output are controlled with the {{TAG|BANDGAP}} tag.
* MGGA functionals (v1-sregTM, v2-sregTM, v3-sregTM, and v2-sregTM-L) from Francisco, Cancio, and Trickey (https://doi.org/10.1063/5.0167868, https://doi.org/10.1063/5.0167873).
* Compute and write out exciton wave functions in BSE (written to {{FILE|CHG}}).
* Slect the minimum number of local reference configurations required to build an MLFF via the {{TAG|ML_MB_MIN}} tag. A new log line "MSG" with a text message is written to {{FILE|ML_LOGFILE}} if this threshold inhibits training.
* Interface to the external code libMBD for running many-body dispersion methods for van der Waals interactions (https://libmbd.github.io).


==== IMPROVEMENT ====
==== IMPROVEMENT ====
* Improve robustness of TiO2_IBRION=X tests.
* Update [[makefile.include.nec_aurora]] template to work with the recent NEC compiler version (5.0.0+).
* Update makefile.include.nec_aurora template to work with recent NEC compiler version (5.0.0+).
* Add workarounds for Intel oneAPI LLVM compilers (ifx), and [[makefile.include]] files for these compilers.
* Use NCCL in OpenACC port of LASYNC code paths.
* Print proper error message when using the gamma-only version in combination with {{TAG|KPOINTS_OPT}}.
* Port ScaLAPACK-aware code paths in EDDIAG, ORTHCH, and RPAR to GPU.
* {{TAG|LSINGLES}}: “singles” contribution printed to {{FILE|OUTCAR}} for GWR algorithms, ''i.e.'', Eq. 34 of Klimes ''et al.'', JCP 143, 102816 (2015) (https://doi.org/10.1063/1.4929346).
* Port M_sum_g8 to GPU to avoid integer overflow in M_sum_g in EDDIAG and ORTHCH.
* Improve robustness of andersen_nve* tests.
* Add workarounds for Intel oneAPI LLVM compilers (ifx), and makefile.include files.
* Print proper error message for vasp_gam when used in combination with KPOINTS_OPT.
* Added wrappers around ScaLAPACK calls in low-scaling GW and ACFDT routines.
* “singles” contribution printed to OUTCAR for GWR algorithms, i.e. Eq. (34) in JCP 143, 102816 (2015).
* {{TAG|SAXIS}} = 0 0 0 behaves like {{TAG|SAXIS}} = 0 0 1. This behavior is unchanged but we now print a warning.
* {{TAG|SAXIS}} = 0 0 0 behaves like {{TAG|SAXIS}} = 0 0 1. This behavior is unchanged but we now print a warning.
* Speedup of tetrahedron method by parallelization over tetrahedra and excluding tetrahedra that do not contribute; this improvement will be most noticeable for dense energy grids or k-point meshes.
* Speedup of tetrahedron method by parallelization over tetrahedra and excluding tetrahedra that do not contribute; this improvement will be most noticeable for dense energy grids or k-point meshes.
* Consistent treatment of CSHIFT, CSHIFT set to 0.02, consistent break criteria for linear response to increase robustness.
* Consistent treatment of {{TAG|CSHIFT}}, {{TAG|CSHIFT}} set to 0.02, consistent break criteria for linear response to increase robustness.
* Improved structure output to HDF5 file.
* Improved structure output to HDF5 file.
* Support for cusolverMP (the distributed GPU eigensolver of NVIDIA).
* Support for cusolverMP (the distributed GPU eigensolver of NVIDIA).
* Change magnetization output for the non-collinear case so that the (x,y,z) magnetization densities are integrated at the atomic sites and printed to the {{FILE|OUTCAR}} file (if {{TAG|LORBIT}}=11 is set) every 5 steps for all electronic minimization algorithms.
* Change magnetization output for the noncollinear case so that the (x,y,z) magnetization densities are integrated at the atomic sites and printed to the {{FILE|OUTCAR}} file (if {{TAG|LORBIT}}=11 is set) every 5 steps for all electronic minimization algorithms.
* In some cases the "blow-up" step in the k-point generation leads to trouble in combination with {{TAG|IBRION}}=6 and {{TAG|ISIF}}=3. This is not solved per se, but the resulting error message has been improved to suggest to add the appropriate tag to skip this step ({{TAG|KBLOWUP}}=.FALSE.).
* In some cases, the "blow-up" step in the k-point generation leads to trouble in combination with {{TAG|IBRION}}=6 and {{TAG|ISIF}}=3. This is not solved per se, but the resulting error message has been improved to suggest adding the appropriate tag to skip this step ({{TAG|KBLOWUP}}=.FALSE.).
* Copy the atomic type designation from {{FILE|POSCAR}} to {{FILE|CONTCAR}}. In all other instances where the structure is written to file (e.g. {{FILE|CHGCAR}}) the atomic type information is replaced by the acronym from the periodic table.
* Copy the atomic type designation from {{FILE|POSCAR}} to {{FILE|CONTCAR}}. In all other instances where the structure is written to file (e.g. {{FILE|CHGCAR}}) the atomic type information is replaced by the acronym from the periodic table.
* The SCDM method now consumes much less memory when executed on many cores.
* The [[:Category:Wannier_functions#Selected_columns_of_the_density_matrix_(SCDM)|SCDM method]] now consumes much less memory when executed on many cores.
* Write more information about DFT+D4 calculations.
* Write more information about DFT+D4 calculations ({{TAG|IVDW}}=13).
* For MD runs with a large number of atoms and a few ionic steps the current default chunking size might lead to an unnecessarily large {{FILE|vaspout.h5}} file. Here we make sure the chunking size is never larger than the number of MD steps.
* For MD runs with a large number of atoms and few ionic steps, the current default chunking size might lead to an unnecessarily large {{FILE|vaspout.h5}} file. Here, we make sure the chunking size is never larger than the number of MD steps.
* The default value for the minimum number of local reference configurations ({{TAG|ML_MB_MIN}}) is increased from 2 to 3. This should improve the robustness of initial MLFF guesses.
* The default value for the minimum number of local reference configurations ({{TAG|ML_MB_MIN}}) is increased from 2 to 3. This should improve the robustness of initial MLFF guesses.
* Check maximum size of sysv shmem segments.
* Check maximum size of sysv shmem segments used in machine-learning-code paths.
* BSE algorithm has been optimized and ported to GPU by means of OpenACC.
* [[BSE|BSE algorithm]] has been optimized and ported to GPU by means of OpenACC.
* Spectral function is recalculated after GW calculations for {{TAG|LOPTICS}}=.TRUE.
* Spectral function is recalculated after GW calculations for {{TAG|LOPTICS}}=.TRUE.
* Demote LATTCHK exception from error to warning.
* Demote LATTCHK exception from error to warning.
* Increase the default {{TAG|ML_CDOUB}} value to 100 for re-selection runs ({{TAG|ML_MODE}}=select). Because this makes critical steps very unlikely the number of force field generations is decreased. Hence, the total runtime until re-selection is finished will also be reduced.
* Increase the default {{TAG|ML_CDOUB}} value to 100 for re-selection runs ({{TAG|ML_MODE}}=select). Because this makes critical steps very unlikely the number of force-field generations is decreased. Hence, the total runtime until re-selection is finished will also be reduced.
<!--
* Use NCCL in OpenACC port of LASYNC code paths.
* Port ScaLAPACK-aware code paths in EDDIAG, ORTHCH, and RPAR to GPU.
* Port M_sum_g8 to GPU to avoid integer overflow in M_sum_g in EDDIAG and ORTHCH.
* Improve robustness of andersen_nve* tests.
* Improve robustness of TiO2_IBRION=X tests.
* Added wrappers around ScaLAPACK calls in low-scaling GW and ACFDT routines.
-->


==== BUGFIX ====
==== BUGFIX ====
* Due to a bug the wave function prediction was not as effective as it could be.
 
* Descriptor sparsification was not working in combination with the {{TAG|ML_MODE}} tag: the tag {{TAG|ML_LSPARSDES}} was automatically set to False.
* Descriptor sparsification was not working in combination with the {{TAG|ML_MODE}} tag: the tag {{TAG|ML_LSPARSDES}} was automatically set to False.
* Restarting a calculation from {{FILE|vaspwave.h5}} when the number of k-points changed, e.g. because symmetry was switched off ({{TAG|ISYM}}=-1), now behaves the same as restarting from {{FILE|WAVECAR}}. Before it stopped with a bug message.
* Reference energies in {{FILE|INCAR}} were ignored when continuing MLFF training runs and in re-selection runs ({{TAG|ML_MODE}}=select).
* MLFF: Verlet nearest-neighbor algorithm was not updating properly in some cases. This violated energy conservation in MD runs.
* {{TAG|ML_OUTBLOCK}} now also controls the output frequency of {{TAG|ML_EATOM}} and {{TAG|ML_HEAT}}. Unwanted output in {{FILE|OUTCAR}}, {{FILE|vasprun.xml}} and {{FILE|vaspout.h5}} has been removed.
* Fixed problem with incorrect counting of atoms in slabs in FML + fixed NVE setting of CVS thermostat.
* When using {{TAG|VCAIMAGES}} in combination with the NPT ensemble ({{TAG|ISIF}}=3) the stress tensor was not averaged as the forces and energy when using this approach.
* Fix incorrect formatting in {{FILE|REPORT}} file (values of last column shifted to next line).
 
* Restarting a calculation from {{FILE|vaspwave.h5}} when the number of k-points changed, ''e.g.'' because symmetry was switched off ({{TAG|ISYM}}=-1), now behaves the same as restarting from {{FILE|WAVECAR}}. Before it stopped with a bug message.
* Write {{FILE|LOCPOT}} to subfolders for calculations with {{TAG|IMAGES}}/=0.
* In the non-collinear case, {{TAG|LVTOT}}=.TRUE. now writes the potential in the "density, magnetization" representation, i.e., the scalar potential (v0), and magnetic field (Bx, By, Bz), to the {{FILE|LOCPOT}} file. Before the potential was written in the (upup, updown, downup, downdown) representation to real numbers, which is incomplete.
* Fixed a problem in the generation of partial charge densities ({{FILE|PARCHG}}) with reading a single value from {{TAG|EINT}} and setting the second one to the Fermi energy automatically. {{TAG|IBAND}} and {{TAG|KPUSE}} can no longer contain bands or points that are larger than the total number of bands or k points.
 
* Due to a bug the wavefunction prediction was not as effective as it could be.
* Use a tighter threshold for Laplace-transformed MP2 to avoid incorrect treatment of Coulomb potential.
* Use a tighter threshold for Laplace-transformed MP2 to avoid incorrect treatment of Coulomb potential.
* NMR linear response did not work for LREAL=Auto or .TRUE. (with the GNU compiler).
 
* NMR linear response did not work for {{TAG|LREAL}}=Auto or .TRUE. (with the GNU compiler).
* Calculations of NMR shielding tensors was broken for {{TAG|ISPIN}}=2 and {{TAG|LNONCOLLINEAR}}=.TRUE.: setting {{TAG|ISPIN}}=2 for a non-spinpolarized system did not yield the same result as with {{TAG|ISPIN}}=1.
 
* {{TAG|SAXIS}}: For sx=0 and sy<0, alpha=-pi/2. It used to falsely assume alpha=pi/2.
* {{TAG|SAXIS}}: For sx=0 and sy<0, alpha=-pi/2. It used to falsely assume alpha=pi/2.
* Rotation of the wave functions in PEAD calculations was incorrect for {{TAG|LNONCOLLINEAR}}=.TRUE.
* Rotation of the wavefunctions in PEAD calculations was incorrect for {{TAG|LNONCOLLINEAR}}=.TRUE.
* MLFF: Verlet neighbor algorithm was not updating properly in some cases. This violated energy conservation in MD runs.
* {{TAG|LATTICE_CONSTRAINTS}} was not read when using {{TAG|IBRION}}=1 or 2: default values (T T T = no constraints) were used.
* {{TAG|LATTICE_CONSTRAINTS}} was not read when using {{TAG|IBRION}}=1 or 2: default values (T T T = no constraints) were used.
* Fixed problem with incorrect counting of atoms in slabs in FML + fixed NVE setting of CVS thermostat.
 
* Fixed a problem in the generation of partial charge densities ({{FILE|PARCHG}}) with reading a single value from {{TAG|EINT}} and setting the second one to the Fermi energy automatically. {{TAG|IBAND}} and {{TAG|KPUSE}} can no longer contain bands or points that are larger than the total number of bands or k-points.
* When a new vdW kernel was generated because the existing one was incompatible with the selected functional, then the header of the new kernel was the one of the old incompatible kernel. Furthermore writing the new vdW kernels was not restricted to a single MPI rank.
* Fix incorrect formatting in {{FILE|REPORT}} file (values of last column shifted to next line).
* The SCDM method now works correctly for k-point meshes that do not include the Gamma point.
* The SCDM method now works correctly for k-point meshes that do not include the Gamma point.
* Reference energies in INCAR were ignored when continuing MLFF training runs and in re-selection runs ({{TAG|ML_MODE}}=select).
* In the non-collinear case, {{TAG|LVTOT}}=.TRUE. now writes the potential in the "density, magnetization" representation, i.e., the scalar potential (v0), and magnetic field (Bx, By, Bz), to the {{FIL|LOCPOT}} file. Before the potential was written in the (upup, updown, downup, downdown) representation to real numbers, which is incomplete.
* Calculations of NMR shielding tensors was broken for {{TAG|ISPIN}}=2 (and {{TAG|LNONCOLLINEAR}}=.TRUE.): setting {{TAG|ISPIN}}=2 for a non-spinpolarized system did not yield the same result as with {{TAG|ISPIN}}=1.
* CRPA calculations using wannier90 were broken when using legacy mode (i.e. wannier90.win file instead of {{TAG|WANNIER90_WIN}} tag).
* CRPA calculations using wannier90 were broken when using legacy mode (i.e. wannier90.win file instead of {{TAG|WANNIER90_WIN}} tag).
* Write {{FILE|LOCPOT}} to subfolders for calculations with {{TAG|NIMAGE}}/=0.
 
* {{TAG|ML_OUTBLOCK}} now also controls the output frequency of {{TAG|ML_EATOM}} and {{TAG|ML_HEAT}}. Unwanted output in {{FILE|OUTCAR}}, {{FILE|vasprun.xml}} and {{FILE|vaspout.h5}} has been removed.
* The LDA and GGA components of the AM05 GGA functional were not multiplied by the parameters {{TAG|ALDAX}}, {{TAG|ALDAC}}, {{TAG|AGGAX}} and {{TAG|AGGAC}}.
* The LDA and GGA components of the AM05 GGA functional were not multiplied by the parameters {{TAG|ALDAX}}, {{TAG|ALDAC}}, {{TAG|AGGAX}} and {{TAG|AGGAC}}.
* When using {{TAG|VCAIMAGES}} in combination with the NPT ensemble ({{TAG|ISIF=3}}) the stress tensor was not averaged as the forces and energy when using this approach.
* If a new vdW kernel was generated because the existing one was incompatible with the selected functional, then the header of the new kernel was the one of the old incompatible kernel. Furthermore, writing the new vdW kernels was not restricted to a single MPI rank.
 
[[Category:Version]]

Latest revision as of 12:15, 19 March 2024

6.4.3

FEATURE

IMPROVEMENT

  • Update makefile.include.nec_aurora template to work with the recent NEC compiler version (5.0.0+).
  • Add workarounds for Intel oneAPI LLVM compilers (ifx), and makefile.include files for these compilers.
  • Print proper error message when using the gamma-only version in combination with KPOINTS_OPT.
  • LSINGLES: “singles” contribution printed to OUTCAR for GWR algorithms, i.e., Eq. 34 of Klimes et al., JCP 143, 102816 (2015) (https://doi.org/10.1063/1.4929346).
  • SAXIS = 0 0 0 behaves like SAXIS = 0 0 1. This behavior is unchanged but we now print a warning.
  • Speedup of tetrahedron method by parallelization over tetrahedra and excluding tetrahedra that do not contribute; this improvement will be most noticeable for dense energy grids or k-point meshes.
  • Consistent treatment of CSHIFT, CSHIFT set to 0.02, consistent break criteria for linear response to increase robustness.
  • Improved structure output to HDF5 file.
  • Support for cusolverMP (the distributed GPU eigensolver of NVIDIA).
  • Change magnetization output for the noncollinear case so that the (x,y,z) magnetization densities are integrated at the atomic sites and printed to the OUTCAR file (if LORBIT=11 is set) every 5 steps for all electronic minimization algorithms.
  • In some cases, the "blow-up" step in the k-point generation leads to trouble in combination with IBRION=6 and ISIF=3. This is not solved per se, but the resulting error message has been improved to suggest adding the appropriate tag to skip this step (KBLOWUP=.FALSE.).
  • Copy the atomic type designation from POSCAR to CONTCAR. In all other instances where the structure is written to file (e.g. CHGCAR) the atomic type information is replaced by the acronym from the periodic table.
  • The SCDM method now consumes much less memory when executed on many cores.
  • Write more information about DFT+D4 calculations (IVDW=13).
  • For MD runs with a large number of atoms and few ionic steps, the current default chunking size might lead to an unnecessarily large vaspout.h5 file. Here, we make sure the chunking size is never larger than the number of MD steps.
  • The default value for the minimum number of local reference configurations (ML_MB_MIN) is increased from 2 to 3. This should improve the robustness of initial MLFF guesses.
  • Check maximum size of sysv shmem segments used in machine-learning-code paths.
  • BSE algorithm has been optimized and ported to GPU by means of OpenACC.
  • Spectral function is recalculated after GW calculations for LOPTICS=.TRUE.
  • Demote LATTCHK exception from error to warning.
  • Increase the default ML_CDOUB value to 100 for re-selection runs (ML_MODE=select). Because this makes critical steps very unlikely the number of force-field generations is decreased. Hence, the total runtime until re-selection is finished will also be reduced.

BUGFIX

  • Descriptor sparsification was not working in combination with the ML_MODE tag: the tag ML_LSPARSDES was automatically set to False.
  • Reference energies in INCAR were ignored when continuing MLFF training runs and in re-selection runs (ML_MODE=select).
  • MLFF: Verlet nearest-neighbor algorithm was not updating properly in some cases. This violated energy conservation in MD runs.
  • ML_OUTBLOCK now also controls the output frequency of ML_EATOM and ML_HEAT. Unwanted output in OUTCAR, vasprun.xml and vaspout.h5 has been removed.
  • Fixed problem with incorrect counting of atoms in slabs in FML + fixed NVE setting of CVS thermostat.
  • When using VCAIMAGES in combination with the NPT ensemble (ISIF=3) the stress tensor was not averaged as the forces and energy when using this approach.
  • Fix incorrect formatting in REPORT file (values of last column shifted to next line).
  • Restarting a calculation from vaspwave.h5 when the number of k-points changed, e.g. because symmetry was switched off (ISYM=-1), now behaves the same as restarting from WAVECAR. Before it stopped with a bug message.
  • Write LOCPOT to subfolders for calculations with IMAGES/=0.
  • In the non-collinear case, LVTOT=.TRUE. now writes the potential in the "density, magnetization" representation, i.e., the scalar potential (v0), and magnetic field (Bx, By, Bz), to the LOCPOT file. Before the potential was written in the (upup, updown, downup, downdown) representation to real numbers, which is incomplete.
  • Fixed a problem in the generation of partial charge densities (PARCHG) with reading a single value from EINT and setting the second one to the Fermi energy automatically. IBAND and KPUSE can no longer contain bands or points that are larger than the total number of bands or k points.
  • Due to a bug the wavefunction prediction was not as effective as it could be.
  • Use a tighter threshold for Laplace-transformed MP2 to avoid incorrect treatment of Coulomb potential.
  • NMR linear response did not work for LREAL=Auto or .TRUE. (with the GNU compiler).
  • Calculations of NMR shielding tensors was broken for ISPIN=2 and LNONCOLLINEAR=.TRUE.: setting ISPIN=2 for a non-spinpolarized system did not yield the same result as with ISPIN=1.
  • SAXIS: For sx=0 and sy<0, alpha=-pi/2. It used to falsely assume alpha=pi/2.
  • Rotation of the wavefunctions in PEAD calculations was incorrect for LNONCOLLINEAR=.TRUE.
  • LATTICE_CONSTRAINTS was not read when using IBRION=1 or 2: default values (T T T = no constraints) were used.
  • The SCDM method now works correctly for k-point meshes that do not include the Gamma point.
  • CRPA calculations using wannier90 were broken when using legacy mode (i.e. wannier90.win file instead of WANNIER90_WIN tag).
  • The LDA and GGA components of the AM05 GGA functional were not multiplied by the parameters ALDAX, ALDAC, AGGAX and AGGAC.
  • If a new vdW kernel was generated because the existing one was incompatible with the selected functional, then the header of the new kernel was the one of the old incompatible kernel. Furthermore, writing the new vdW kernels was not restricted to a single MPI rank.