Table of Contents

Which basis sets and/or pseudopotentials should I use?

When in doubt, always use the DZVP-MOLOPT-GTH basis set and the GTH-PBE pseudopotential.

In some cases (for example for tin) there is only a short-range basis set available, called DZVP-MOLOPT-SR-GTH.

You can find all available MOLOPT basis sets in BASIS_MOLOPT, which is located in the folder $CP2K_DATA_DIR (after loading the CP2K module).

How do I run CP2K in parallel?

The command cp2k.sopt is the single-process variant of CP2K.

To run CP2K in parallel, you have to use a different executable named cp2k.popt and prefix that with mpirun -n 8 to run it on 8 CPUs in parallel. So, a complete command line to run CP2K on 8 CPUs would then be:

$ mpirun -n 8 cp2k.popt -i yourinput.inp -o youroutput.out

How do I obtain a charge density difference?

In Exercise 2 a series of *.cube files was already produced for MOs. To obtain the electronic charge density in a *.cube, file the following snippet of input file can be used (see also the reference manual):

&FORCE_EVAL
  &DFT
    &PRINT
      &E_DENSITY_CUBE
      &END E_DENSITY_CUBE
      ...
    &END PRINT
    ... ...
  &END DFT
&END FORCE_EVAL

The cubecruncher tool can be used to obtain charge density differences. A precompiled executable is available on the server tcopt3, its path being /users/scaravat/bin/cubecruncher.x.

The basic usage to obtain a charge density difference is:

$ /users/scaravat/bin/cubecruncher.x -i input.cube -o output.cube -subtract subsystem.cube

How do I build a slab model for a surface?

E.g. by using VESTA. A tutorial is available here.

Vesta comes preinstalled on tcopt3, provided that you load the proper module.

$ module load vesta

How do I obtain the stress tensor?

You have to add the following snippet to the input file:

&FORCE_EVAL
  ...
  STRESS_TENSOR ANALYTICAL
  &PRINT
    &STRESS_TENSOR
    &END STRESS_TENSOR
  &END PRINT
  ...
&END FORCE_EVAL
Your calculation should be set up in such a way that forces are being calculated: e.g. RUN_TYPE set to GEO_OPT or ENERGY_FORCE; instead RUN_TYPE ENERGY won't work!

My calculation does not converge

... and I use MULTIPLE_UNIT_CELL

Error after changing coordinates

If you get an error after copy and pasting coordinates from a website/service/other file into a CP2K input file and you get an error afterwards when trying to run it, please make sure that you are only using spaces as delimiters between the atomic kind and each of the coordinates.