Table of Contents

First CP2K simulation

Module loading

Since there are numerous applications with different and possibly conflicting requirements, the module system is used. This means that only basic commands are available until explicitly loaded.

To list all available modules:

$ module avail

while using

$ module list

gives the list of loaded moules.

To load the CP2K module used in this course, use:

$ module load cp2k/6.1-gcc-7.3.1-d43qc6l

When you list the loaded modules again at this point (see command above), you will notice that the list has changed.

you can run cp2k from any directory. To do this enter

cp2k.popt --help

Which should give you the output

 cp2k.sopt [-c|--check] [-e|--echo] [-h|--help] [--html-manual]
           [-i] <input_file>
           [-mpi-mapping|--mpi-mapping] <method>
           [-o] <output_file>
           [-r|-run] [--xml]

 starts the CP2K program, see <https://www.cp2k.org/>

 The easiest way is cp2k.sopt <input_file>

 The following options can be used:

  -i <input_file>   : provides an input file name, if it is the last
                      argument, the -i flag is not needed
  -o <output_file>  : provides an output file name [default: screen]

 These switches skip the simulation, unless [-r|-run] is specified:

  --check, -c       : performs a syntax check of the <input_file>
  --echo, -e        : echos the <input_file>, and make all defaults explicit
                      The input is also checked, but only a failure is reported
  --help, -h        : writes this message
  --html-manual     : writes a HTML reference manual of the CP2K input
                      in the current directory. The file index.html is a good
                      starting point for browsing
  --license         : prints the CP2K license
  --mpi-mapping     : applies a given MPI reordering to CP2K
  --run, -r         : forces a CP2K run regardless of other specified flags
  --version, -v     : prints the CP2K version and the SVN revision number
  --xml             : dumps the whole CP2K input structure as a XML file
                      xml2htm generates a HTML manual from this XML file

Now, make a new directory, for instance called exercise0. Download and extract the file argon.inp into this directory and run cp2k by typing

To download the file and extract the zip:

wget https://www.cp2k.org/_media/exercises:2019_uzh_acpc2:argon.zip

mv exercises:2019_uzh_acpc2:argon.zip argon.zip

unzip argon.zip
cp2k.popt -i argon.inp -o out_ex0.out

To run cp2k with MPI, for instance with 2 CPU, one can use

mpirun -n 2 cp2k.popt -i argon.inp -o out_ex0.out

You just ran a short Molecular Dynamics trajectory of liquid argon.

Visualization with VMD

Part II: Loading and running a program

We need for visualization is VMD.

Load the respective module (since there is only one version available, the shorthand vmd can be used when specifying the module to load) and start it using:

$ vmd

Two new windows named VMD Main and VMD 1.9.2 … Display should open on your local machine while the server shows:

Info) VMD for LINUXAMD64, version 1.9.2 (December 29, 2014)
Info) http://www.ks.uiuc.edu/Research/vmd/                         
Info) Email questions and bug reports to vmd@ks.uiuc.edu           
Info) Please include this reference in published work using VMD:   
Info)    Humphrey, W., Dalke, A. and Schulten, K., `VMD - Visual   
Info)    Molecular Dynamics', J. Molec. Graphics 1996, 14.1, 33-38.
Info) -------------------------------------------------------------
Info) Multithreading available, 32 CPUs detected.
Info) Free system memory: 256213MB (99%)
Warning) Detected a mismatch between CUDA runtime and GPU driver
Warning) Check to make sure that GPU drivers are up to date.
Info) No CUDA accelerator devices available.
Warning) Detected X11 'Composite' extension: if incorrect display occurs
Warning) try disabling this X server option.  Most OpenGL drivers
Warning) disable stereoscopic display when 'Composite' is enabled.
libGL error: failed to load driver: swrast
libGL error: Try again with LIBGL_DEBUG=verbose for more details.
Info) OpenGL renderer: GeForce GTX 760 (192-bit)/PCIe/SSE2
Info)   Features: STENCIL MSAA(4) MDE MTX NPOT PP PS 
Info)   GLSL rendering mode is NOT available.
Info)   Textures: 2-D (16384x16384), 3-D (2048x2048x2048), Multitexture (4)
Info) Dynamically loaded 2 plugins in directory:
Info) /sw/build/generic/app/vmd/vmd-1.9.2/lib/vmd/plugins/LINUXAMD64/molfile
vmd >

If you only get the output on the server but not the 2 windows there is something wrong with your setup and you should check the lecture notes again. You can exit VMD by either closing the VMD Main or by giving the quit command at the vmd > prompt:

vmd > quit
The module loading is not persistent. You have to reload the modules every time you log back in.

We will visualize this trajectory with VMD, a molecular visualization program. First of all, download and install VMD for your operating system as indicated here.The current official release doesn't support MacOS Catalina. For those who have Catalina OS, please download VMD here.

Open VMD. From File → New molecule… open the file with the .xyz extension. Go to Graphics → Representations.. and change the Drawing Method to VDW. On the VMD shell type the following commands to define the unit cell of the system and wrap the atoms back to their original unit cell.

pbc set {17.158 17.158 17.158} -all
pbc box
pbc wrap -all

A snapshot of the molecular dynamics trajectory should approximately look like this:

Plotting tools

Throughout the course, you will also need to plot some graphs. You can use any tool you like for that. gnuplot and Xmgrace are two programs often used in Linux environments that are rather easy to use, but you can also use MS Office, Numbers, the plotting library of python Matplotlib, etc. Take care to install any of these software on your machine as needed.