Transition state optimization with Dimer Method

78 views
Skip to first unread message

Alex Brown

unread,
Aug 7, 2023, 11:26:20 PM8/7/23
to cp2k
Dear CP2K Experts,

I am trying to refine potential transition states I obtained from some Metadynamics calculations. I have looked at other conversations on here around implementing dimer method and have learned a little bit about that. 

I want to know how do one define the dimer vector for the calculation? I ran a calculation without specifying the dimer vector and the calculation fell into the reactant state.

Does anyone have any tips for this?

Also is there any drawback of my strategy of using Metadynamics calculation and guessing TS to later refine it? Just want to know if people would have some tips or suggestions on this idea.

Thanks,
Alex


luca bellucci

unread,
Aug 8, 2023, 4:52:22 AM8/8/23
to cp...@googlegroups.com
Dear Alex,

By default, dimer vectors are assigned randomly. However, if you
prefer, you can assign each vector with its related keyword as follows:
DIMER/DIMER_VECTOR

Currently, there are no tools available for ad-hoc generation, so you
need to evaluate and provide these vectors manually within the
DIMER_VECTOR section. Refer to a restart file for additional
information regarding the syntax.

Your experience is quite common. Selecting a single configuration from
metadynamics does not guarantee convergence, also when the chosen
configuration closely resembles the transition state (TS). As a
practice, I typically extract 5-6 conformations from a molecular
dynamics (MD) simulation and perform a brief minimization using
conjugate gradient (CG), usually with no more than 4/5 steps depending
on the system. Subsequently, I initiate a dimer search on all these
configurations or choose the most promising ones.

For more specific info, please provide the input file.

Best regards,

Luca
> --
> You received this message because you are subscribed to the Google
> Groups "cp2k" group.
> To unsubscribe from this group and stop receiving emails from it,
> send an email to cp2k+uns...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/cp2k/0ee9f9b6-2733-4e2f-906c-8800826aa86an%40googlegroups.com
> .

Alex Brown

unread,
Aug 8, 2023, 8:54:20 PM8/8/23
to cp2k
Dear Luca,

Thanks a lot for these suggestions.

You mentioned that we need to evaluate and provide the vectors. How does one evaluate it? Can you provide more insights on this?

Please find attached my input file. Let me know if anything looks off.

Thanks,
Alex
dimer.inp

luca bellucci

unread,
Aug 9, 2023, 5:05:08 AM8/9/23
to cp...@googlegroups.com
Dear Axel,
It is not necessary to evaluate and provide the dimer vectors, as the
algorithm starts from a random distribution. Usually, after several
steps, it is capable of identifying and pursuing a normal-mode with
an imaginary frequency. If you want, you can extract the dimer-vectors
from the atomic displacement of a specific normal mode. I do not have
and I do not know if there exists such tool, but you can search it or
do it on your own. In case, I can follow/help you in doing it.
Anyway, to do it, you have to start from the definition of dimer vector
and its relation with the normal mode displacements, see for example
https://doi.org/10.1063/1.480097

However, this finding process is highly dependent on the initial
conformation. Therefore, you must strive to discover the "correct
conformation" or "distortion" most similar to the reaction path,
attempting to eliminate erroneous vibrations (such as through
minimization using a few steps of SD or CG). If, after several steps,
the algorithm fails to identify the correct direction, you must alter
the initial conformation. If needed, you can manually adjust the
structure based on your intuition and propose a distortion along the
reaction path.
Regarding the input file, please try the following parameters:
DR [angstrom] 0.001
ANGLE_TOLERANCE [deg] 1.0
INTERPOLATE_GRADIENT T
At times, the following option might prove helpful:
K-DIMER .TRUE.
Probably, you have to increase the CUTOFF to 600 or higher value and
try to use EXTRAPOLATION USE_GUESS.

For more details it is necessary to have all the input data.

Cheers,

Luca
> https://groups.google.com/d/msgid/cp2k/4900d348-d12d-4632-84a5-50d97a276f55n%40googlegroups.com
> .

Alex Brown

unread,
Aug 9, 2023, 6:40:40 PM8/9/23
to cp2k
Dear Luca,

Thank you! Much appreciate. I will use your suggestions and come back here if I face any problems as I work on it.

Thanks,
Alex
Reply all
Reply to author
Forward
0 new messages