Releases: brucefan1983/GPUMD
Releases · brucefan1983/GPUMD
GPUMD-v4.0
GPUMD-v4.0 release
-
The
nep
executable- Extended the upper limit of
l_max
from 4 to 8. #754 - Enabled outputting per-atom and per-structure descriptors. #832 #837
- Added the option to write
energy_weight
intrain.xyz
. #877 - Enabled training TNEP models with atomic reference values. #907
- Published the NEP89 model, a universal NEP model for both inorganic and organic materials across 89 elements. #1000
- Added the
fine_tune
keyword innep.in
to allow for finetuning the NEP89 model. #932 #959
- Extended the upper limit of
-
The
gpumd
executable- Added the ILP+SW potential. #761
- Added the ILP+NEP potential. #835 #860 #951
- Enabled box optimization for
minimize
. #841 - Implemented
compute_adf
for calculating angular distribution function. #875 - Added a keyword
compute_angular_rdf
to calculate angular dependent RDF. #884 - Added a keyword
compute_extrapolation
to calculate the extrapolation level of NEP during MD run. #936 - Added the
dump_xyz
keyword, which is more general than thedump_exyz
keyword. #976 - Added interface to the
DP
model. #827 #981 - Implemented the general
EAM/Alloy
potential. #994 - Implemented free energy calculation method for liquids using thermodynamic integration. #999
-
Common parts
-
Breaking changes:
GPUMD-v3.9.5
-
Deprecated:
-
New or enhanced features:
- [NEP] Introduced
use_typewise_cutoff
anduse_typewise_cutoff_zbl
keywords for NEP training, which could lead to more flexible cutoff schemes and improved performance. #660 #684 - [GPUMD] Allow for creating multiple xyz files using
dump_exyz
during a run. #629 - [GPUMD] Output the total electron stopping power loss during the run with
electron_stop
. #634 - [GPUMD] Add electric field (
add_efield
) based on given fixed charges. #662 - [GPUMD] Add force (
add_force
) to a group of atoms. #658 - [GPUMD] When velocity is missing from
run.in
, now the code initializes the velocities with a temperature of 300 K, instead of showing the previous "undefined" behavior. - [GPUMD]
correct_velocity
can now be used to correct the velocities for different groups of atoms. #668 - Better error reporting when reading training/test datasets. #699 #697
- [NEP] Introduced
-
Bug fixes:
- [GPUMD] For the
compute_rdf
command, stop calculation when any periodic thickness is smaller than 2.5 times of the RDF cutoff. #649 - [GPUMD] Fix a bug introduced after adding dipole/polarizability prediction in GPUMD-v3.9.2. The NEP energy was wrongly calculated when multi-GPU is used for MD runs. #661
- [GPUMD] For the
GPUMD-v3.9.4
- Improved some hyperparameters for NEP4 training, which should make the convergence faster.
- Published the latest version of the UNEP-v1 model for 16 metals and their alloys (https://arxiv.org/abs/2311.04732)
GPUMD-v3.9.3
- Introduced the
ensemble ti_rs
keyword to enable nonequilibrium free-energy calculations along an isobaric path. - Introduced the
ensemble ti_as
keyword to enable nonequilibrium free-energy calculations along an isothermal path. - Improved automation for computing absolute Gibbs free energy with
ensemble ti_spring
, eliminating the need for post-processing. - Improved automation for calculating spring constants with
ensemble ti_spring
. - Fixed a memory bug introduced in GPUMD-v3.9.2 for
compute_shc
. - Improved the all-group option for
compute_shc
.
GPUMD-v3.9.2
-
New features
ensemble ti
: This keyword is used to set up an equilibrium thermodynamic integration integrator. It is for testing purpose and its only differece from ti_spring keyword is that the lambda value is fixed instead of changing.ensemble nphug
: This keyword sets up a Hugoniot thermostat integrator.ensemble mirror
: This keyword is employed to configure a momentum mirror shock wave simulation, where atoms are deflected by a moving momentum mirror to generate a shock wave.ensemble piston
: This keyword is employed to configure a piston shock wave simulation, where a fixed wall of atoms is displaced at a specified velocity to generate a shock wave.dump_piston
: Piston simulations commonly involve millions of atoms. Dumping all the virial and velocity data for each atom can lead to excessively large output files, making data processing cumbersome. The dump_piston command addresses this by calculating spatial thermo information during the simulation.dump_dipole
: Predicts the dipole on the fly using a TNEP model, see https://doi.org/10.1021/acs.jctc.3c01343dump_polarizability
: Predicts the polarizability on the fly using a TNEP model, see https://doi.org/10.1021/acs.jctc.3c01343
-
Enhancements and changes
- Changed the default values of
basis_size
for NEP training from (12, 12) to (8, 8). - Improved the default regularization methods.
- Added
stress_train.out
andstress_test.out
during NEP training - Added option for
compute_shc
to calculate the SHC for all the groups in a grouping method simultaneously.
- Changed the default values of
GPUMD-v3.9.1
- Fixed a few bugs related to MTTK integrator and
replicate
, see #523 for details - Improved the documentation
GPUMD-v3.9
- New features:
- A new keyword
electron_stop
inrun.in
to apply electron stopping. - A new keyword
compte_rdf
inrun.in
to compute the radial distribution function (RDF). - A new keyword
mc
inrun.in
to perform efficient MCMD simulations in canonical, semi-grand canonical, and variance-constraint semi-grand canonical ensembles with a NEP model (only). - A new keyword
dftd3
inrun.in
to add the D3 dispersion correction to a NEP model (only). - A new keyword
replicate
inrun.in
to replicate the initial model. - A set of new
ensemble
optionsnpt_mttk
,nph_mttk
, andnvt_mttk
. - A new keyword
ensemble ti_spring
for free-energy calculations using the nonequilibrium thermodynamic integration method. - A new keyword
ensemble msst
for multi-scale shock technique (MSST) simulations. - A new keyword
compute_lsqt
to compute the electronic transport properties by coupling MD and linear scaling quantum transport (LSQT). - A new option
fire
for the keywordminimize
inrun.in
. - A new option
has_potential
for the keyworddump_exyz
inrun.in
.
- A new keyword
GPUMD-v3.8
- Bugfix:
- The target temperature in
ensemble nvt_lan
keeps to be the initial one, not changing linearly from the initial one to the final one.
- The target temperature in
- New features:
- Added the
model_type
keyword innep.in
, which can be set to 0, 1, or 2, corresponding to NEP models for potential, dipole, and polarizability, respectively. Tutorials for training dipole and polarizability NEP models are created. - Added path-integral molecular dynamics (PIMD) and related techniques such as ring-polymer molecular dynamics (RPMD) and thermostatted RPMD (TRPMD). The new keywords include
ensemble pimd
,ensemble rpmd
,ensemble trpmd
, anddump_beads
. - Added the homogeneous non-equilibrium molecular dynamics Evans-Cummings (HNEMDEC) mehod for calculating thermal conductivity and related transport coefficients in multicomponent systems. The new keyword is
compute_hnemdec
and the related output file isonsager.out
. - Added an option to output velocity in NetCDF trajectory file. See the updated
dump_netcdf
command.
- Added the
GPUMD-v3.7
- Bugfix:
- Enhancement
- Changed the default of
basis_size
from 8 8 to 12 12 #402 - Documented the
plumed
interface #394 - Sped up NEP training with fullbatch #388
- Improved the
virial_train.out
andvirial_test.out
file format: they have 12 instead of 2 columns now. #399 - Warned for too small energy values in the training/test data sets #378
- Changed the default of
- New features:
GPUMD-v3.6
- Bugfix:
- Enhancement
- New features:
- added the
compute_msd
keyword for mean-square displacement calculation #324 - added the
compute_viscosity
keyword for viscosity calculation #325 - added the
dump_observer
keyword for running MD with the average of an ensemble of NEP models or reporting model uncertainty #332 - added the
lambda_shear
keyword innep.in
#320
- added the