GPW calculations with hybrid functionals

Simone Piccinin piccini... at gmail.com
Wed Dec 2 16:43:30 UTC 2009


Dear CP2K users,

I am studying an inorganic molecule (an anion with charge -2) in
vacuum using CP2K. I have already done a GPW calculation using the PBE
functional and I obtained a satisfactory agreement with planewave-
pseudopotential calculations that use the same functional. Now I would
like to see what happens using a hybrid functional.

After reading the papers by M. Guidon et al. in JCP and JCTC and
looking at the examples files contained in the test/QS folder of CP2K,
I performed a HSE06 test on a single Ru atom coordinated to two water
molecules (I'm interested in the Ru/H2O vs. Ru/OH interaction). The
results in terms of the relative binding energy of OH and H2O with Ru
are not very different from what I got with the PBE functional.

Now, rather than a single atom, I'd like to study the full molecule.
Here Ru is formally in a 4+ oxidation state when coordinated to H2O
and +5 when coordinated to OH. The goal is to see if hybrid
functionals change the water/Ru interaction with respect to the PBE
result.

Here is the input file I prepared for a HSE06 calculation using the
DZVP-SR basis set:

&FORCE_EVAL
  METHOD Quickstep
  &DFT
    BASIS_SET_FILE_NAME ../BASIS_MOLOPT
    POTENTIAL_FILE_NAME ../POTENTIAL
    LSD
    MULTIPLICITY 1
    CHARGE -2
    &MGRID
      CUTOFF 280
#    REL_CUTOFF 50
      NGRIDS 5
    &END MGRID
    &QS
      METHOD GPW
      EPS_DEFAULT 1.0E-12
      MAP_CONSISTENT
      EXTRAPOLATION PS
      EXTRAPOLATION_ORDER 3
    &END QS
    &POISSON
      PERIODIC NONE
      PSOLVER MT
    &END
    &SCF
      EPS_SCF 1.0E-6
      SCF_GUESS ATOMIC
      MAX_SCF 30
      &OUTER_SCF
         MAX_SCF 15
         EPS_SCF 1.0E-6
      &END OUTER_SCF
      &OT ON
        MINIMIZER DIIS
        PRECONDITIONER FULL_ALL
        ENERGY_GAP 0.001
      &END OT
    &END SCF
    &XC
      &XC_FUNCTIONAL
      &XWPBE
        SCALE_X -0.25
        SCALE_X0 1.0
        OMEGA 0.11
      &END
      &PBE
        SCALE_X 0.0
        SCALE_C 1.0
      &END PBE
      &END XC_FUNCTIONAL
      &HF
        &SCREENING
          EPS_SCHWARZ 1.0E-6
          EPS_SCHWARZ_FORCES 1.0E-5
#         SCREEN_ON_INITIAL_P TRUE
        &END
        &INTERACTION_POTENTIAL
          POTENTIAL_TYPE SHORTRANGE
          OMEGA 0.11
        &END
        &MEMORY
          MAX_MEMORY  20000
          EPS_STORAGE_SCALING 0.1
        &END
        FRACTION 0.25
      &END
    &END XC
  &END DFT
  &SUBSYS
    &CELL
      ABC 18.0 18.0 18.0
      PERIODIC NONE
    &END CELL
    &COORD
 Ru        11.3574774452       11.4909122237       15.3267083201
 Ru         8.6628081359        8.7367166895       15.3510280226
 Cl         9.4970511723        7.1839977503       16.8975362058
 Cl         7.1094265692        9.4273853366       16.9691857840
 Cl        10.4970342002       12.9510456586       16.9755193841
 Cl        13.0174806568       10.8492796775       16.8413873454
  O        10.0307482999       10.1184326345       16.2195956041
  O         7.4165771620        7.4165175401       14.6328883981
  O        12.5608627105       12.8434462670       14.6272850975
  O        11.9060890048       10.1339287212       14.1549030350
  O        10.0093318129        8.3267603160       14.1603134294
  O        10.0228938778       11.9997581712       14.1563049606
 Ru         8.5741532487       11.4942007220       13.0868391614
 Ru        11.3376140984        8.8332336054       12.9734396763
 Cl        10.5300709168        7.2522438712       11.4265535377
 Cl        12.8221607072        9.5923669464       11.3325247768
 Cl         9.1109965769       13.2206821806       11.5996288634
 Cl         7.0729388474       10.6424141234       11.4691383990
  O         9.9431268173       10.2174547462       12.1023082014
  O        12.6541066990        7.5922942768       13.6781280842
  O         7.2227549871       12.6534286501       13.8707205439
  O         8.0644623524       10.1318227596       14.2452191185
  H         9.4281929463        9.7355582704       11.4269460151
  H         9.5684784396       10.6036552254       16.9293974232
  H         7.8543114631        7.0436069864       13.8434650774
  H        12.1052133394       13.2201253420       13.8495058778
  H        13.0620078910        8.0530500261       14.4360362158
  H         6.8209494207       12.1199439454       14.5839274433
    &END COORD
    &KIND H
      BASIS_SET DZVP-MOLOPT-SR-GTH
      POTENTIAL GTH-PBE-q1
    &END KIND
    &KIND O
      BASIS_SET DZVP-MOLOPT-SR-GTH
      POTENTIAL GTH-PBE-q6
    &END KIND
    &KIND Ru
      BASIS_SET DZVP-MOLOPT-SR-GTH
      POTENTIAL GTH-PBE-q16
    &END KIND
    &KIND Cl
      BASIS_SET DZVP-MOLOPT-SR-GTH
      POTENTIAL GTH-PBE-q7
    &END KIND
  &END SUBSYS
&END FORCE_EVAL

&GLOBAL
  PROJECT Ru
  RUN_TYPE GEO_OPT
  PRINT_LEVEL MEDIUM
&END GLOBAL


I would like to ask your help in understanding if the calculation is
setup properly. I have no previous experience in the use of hybrid
functionals and any suggestion would be very helpful.

I find that this calculation takes (roughly) 1 hour per ionic step,
using 128 CPUs on a IBM SP6, and I'd like to know if this sounds
reasonable to you or not. Later, I'd like to increase the size of the
basis set, include diffuse functions, since I have an anion, and
experiment a bit with different hybrids, so I'd be happy to know if
there is any way I can reduce the computation time (other than
increasing the number of processors).

For example, to exploit the "Screen on an initial density matrix" can
I use as restart file the restart file of the PBE calculation or do I
have to do 1 iteration with the current setup and than use its restart
file?

Among other things, I do not understand how to set the variable
MAX_MEMORY. The machine I'm using has 128Gb of shared memory per node,
where each node contains 32 processors. So I have up to 4x128 Gb of
memory when asking for 128 processors. What is the rational for
chosing the value of MAX_MEMORY? According to the online description
of this variable, it "defines the maximum amount of memory [MB] to be
consumed by the full HFX module". If I set it too small will the code
dump to disk whatever doesn't fit in MAX_MEMORY thus slowing down the
calculation?

Thank you very much for your help.

Best wishes,
Simone

---
Simone Piccinin
CNR-INFM Democritos, Trieste (Italy)



More information about the CP2K-user mailing list