Molcas Forum

Support and discussions for Molcas and OpenMolcas users and developers

You are not logged in.

Announcement

Welcome to the Molcas forum.

Please note: The forum's URL has changed. The new URL is: https://molcasforum.univie.ac.at. Please update your bookmarks!

You can choose an avatar and change the default style by going to "Profile" → "Personality" or "Display".

#1 2019-09-19 15:36:37

shuoshuo
Member
From: Beijing Normal University
Registered: 2017-10-18
Posts: 35

QMMM dynamic

Dear Molcas experts,

I found that qmmm dynamics calculations are not documented in the manual.
I look into the patched tinker code
qmmmsetup.f

c
c     Select the QM/MM dynamics arguments
c
         else if (keyword(1:14) .eq. 'QMMM-EXTERNAL ') then
            doqmmmdyn = .true.
            call gettext (record,keyword,next)
            call upcase (keyword)
            if (keyword(1:7) .eq. 'MOLCAS ') then
                qmcode = 1
            else if (keyword(1:8) .eq. 'GAUSSIAN ') then
                qmcode = 2
            end if
            qmline = record(next:120)

tkr2qm.f

c
c     Inconsistencies?
c
...
      if (qmline(1:7) .ne. 'NOTHING') then
         write(iout,*) qmline
         write (iout,*) 'TKR2QM -- QMMM-EXTERNAL keyword found. Abort'
         call fatal
      end if

When I modify the standard test case 072 to a QMMM dynamic task, it shows the error "TKR2QM -- QMMM-EXTERNAL keyword found. Abort"
Here is my files
Input file

&Gateway
    Tinker
    Basis = STO-3G
    Group = Nosym
    RICD

>> FOREACH ITER in (1 .. 100)
&Seward
    DOAN

&Espf
    External = Tinker
    LAMorok

&SCF
    Charge  = -1

&ALASKA

&Dynamix
    VELVer
    DT= 20.65
    VELO= 3
    THER= 2
>> END DO

****

.key file

parameters amber99.prm
QMMM 8
QM -8 10 7 12 13
MM 2
LA 16
atom   2999    99    HLA     "Link Atom Hydrogen"        1      1.008     0
charge -2  0.0
charge -11 0.0
QMMM-MICROITERATION ON
QMMM-EXTERNAL MOLCAS
Verbose

.xyz file

    16  ASP
     1  N3    -0.147882    0.213709    0.212665   448     2     6    14    15
     2  CT    -0.004045   -0.066357    1.633474   449     1     3     7    11
     3  C      1.473647   -0.270773    1.937043   450     2     4     5
     4  O      2.022027    0.601110    2.607255   452     3
     5  O      2.114520   -0.930225    1.114633   452     3
     6  H      0.398098   -0.479203   -0.274094   451     1
     7  CT    -0.864220   -1.264898    1.954933   216     2     8    12    13
     8  C     -2.355765   -1.017484    1.429419   218     7     9    10
     9  O2    -2.614269   -0.975742    0.161326   219     8
    10  O2    -3.278741   -1.807695    2.251903   219     8
    11  H1    -0.381692    0.789240    2.195193   453     2
    12  HC    -0.392979   -2.146924    1.515223   217     7
    13  HC    -0.851317   -1.407236    3.033207   217     7
    14  H     -1.131601    0.079695   -0.004960   451     1
    15  H      0.174469    1.142703    0.014244   451     1
    16  HLA   -0.232852   -0.385169    1.718982  2999     2     7

Offline

#2 2019-09-22 10:02:24

niko
Member
From: Marseille
Registered: 2015-11-08
Posts: 59
Website

Re: QMMM dynamic

Hi, this QM/MM dynamics is not documented for a good reason. It corresponds to the case Tinker is the MD driver, not Molcas. In other words, Tinker calls Molcas for computing the QM energy and gradient only, then it takes care of all the remaining steps.

On the other hand, you are using the &dynamix module in Molcas, meaning Molcas is the MD driver and calls Tinker to retrieve the MM contributions to the energy and gradient.

Removing QMMM-EXTERNAL from the key file should work (assuming the rest of the Molcas input is correct).

Offline

#3 2019-09-22 15:20:59

shuoshuo
Member
From: Beijing Normal University
Registered: 2017-10-18
Posts: 35

Re: QMMM dynamic

Dear niko,

Thanks for your reply!
Now I know the problem. I found openmolcas do not patch a tinker release that has the ability to run QMMM dynamic. In addition, the molcas80 and molcas82 installed on our cluster do not carry such a tinker release. I found this difference by comparing tinker installed with molcas77 and the standard tinker release, which dose not contain dynaqmmm.f and runqm.f.

Here comes my question. Does molcas take care of MM part dynamics? I find files under /src/dynamix/ contain QMMM dynamics information, but I'm not sure molcas could run QMMM tasks that do MM part MD simultaneously with QM part. When I write "QMMM-MICROITERATION ON" in .key file, that makes tinker minimize the MM part, but not do dynamics. When "QMMM-MICROITERATION ON" does not write in .key file, the MM part keep frozen.

Is there a way to let the two parts run dynamics at the same time?

Last edited by shuoshuo (2019-09-23 04:33:15)

Offline

#4 2019-09-23 12:35:49

niko
Member
From: Marseille
Registered: 2015-11-08
Posts: 59
Website

Re: QMMM dynamic

Hi,

The MD run will include all "nuclear (QM) or atomic (MM)" degrees of freedom known by Molcas. As you know, the latter are selected in Tinker by the QMMM keyword. Using your example and modifying the key file with:
QMMM 10
QM -8 10 7 12 13
MM 2 14 15
LA 16
would make Molcas run the MD in the subspace defined by QM atoms 7 to 10 + 12 + 13, MM atoms 2 + 14 + 15, and of course the link atom (16).

Offline

#5 2019-09-24 03:38:23

shuoshuo
Member
From: Beijing Normal University
Registered: 2017-10-18
Posts: 35

Re: QMMM dynamic

Dear niko,

Once again, thank you very much! I didn't know before that the MM written in the key file is known by Molcas and set to active. Thank you for telling me these.Now I know how to do it.

Offline

Board footer

Powered by FluxBB 1.5.11

Last refresh: Today 22:00:21