libAtoms / QUIP

libAtoms/QUIP molecular dynamics framework: https://libatoms.github.io
347 stars 122 forks source link

Incorrect MPI potential - "stubborn dimers" in simulated structures #559

Open yuxzhou opened 1 year ago

yuxzhou commented 1 year ago

Hi,

This is a separate ticket from the previous discussion on #544. I am trying to fit a MPI potential using the latest version of gap_fit, strictly following the workflow discussed in previous tickets:

  1. compile the openmp+mpi gap_fit on ARCHER2 (using arch file of Makefile.archer2_mpich+openmp)
  2. run sparsification process without MPI.
  3. convert all output xml files into input files.
  4. manually modified the descriptors in new fitting script (sparse_method=FILE sparse_file=*.input)
  5. manually correct the numbers of sparse points in new fitting script (since a warning was raised in the previous non-MPI run that less sparse points then required were used for certain config_types).
  6. run gap_fit with MPI.

I have successfully generated several MPI potentials. However, in the subsequent GAP-MD simulations, some strange dimers (two atoms are bounded strongly with each other without bonding of other atoms) are found, and they are isolated, pushing all other surrounding atoms away from them. See the attached figure as follow (I have also attached the ext-xyz file so you can have a close look at these strange dimers 124_300K.zip). However, these "stubborn" dimers do NOT appear every time in each of MD simulations. Some of the melt-quench simulations indeed generate reasonable structures that have a good comparison with the reference AIMD. In fact, numeric validation also shows that this is a "good" potential with small RMSE.

In all of my previous potentials generated using the same reference database but without MPI fitting, these "stubborn dimers" are not produced. I guess the MPI gap_fit somehow screwed up the balance (weighting coefficients) of 2b and SOAP? I wonder if I miss any details of fitting a MPI potential which leads to a bad descriptions of dimer behavious in MD simulations?

image

albapa commented 1 year ago

You can always try to use MPI gap_fit on the same sparse points that you obtained with the previous (non-MPI) fit. The weights should be similar (although not 100% matching due to numerics) but the potentials must be very close when you evaluate them.

albapa commented 1 year ago

This is as easy as running the conversion on your old XML, then following the workflow from 4.

albapa commented 1 year ago

Does your database contain configs similar to your stubborn dimers? If not, I suggest you evaluate some with DFT, add them the the database and refit.

gabor1 commented 1 year ago

Can we close this issue ?