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
To list all modules which are currently loaded use:
module list
To load the CP2K module used in this course, use:
module load cp2k/8.1-intel-20.0.2-gimphmw
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.popt [-c|--check] [-e|--echo] [-h|--help] [-i] <input_file> [-mpi-mapping|--mpi-mapping] <method> [-o] <output_file> [-r|-run] [-s|--shell] [--xml] starts the CP2K program, see <https://www.cp2k.org/> The easiest way is cp2k.popt <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 : echoes the <input_file>, and make all defaults explicit The input is also checked, but only a failure is reported --help, -h : writes this message --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 --shell, -s : start interactive shell mode --version, -v : prints the CP2K version and the revision number --xml : dumps the whole CP2K input structure as a XML file xml2htm generates a HTML manual from this XML file --set, -E name=value : set the initial value of a preprocessor value
Now, make a new directory, for instance called exercise0
, and change into it:
mkdir exercise0 cd exercise0
Download and extract the file argon.inp into this directory:
wget https://www.cp2k.org/_media/exercises:2019_uzh_acpc2:argon.zip mv exercises:2019_uzh_acpc2:argon.zip argon.zip unzip argon.zip
Finally, you can run cp2K by typing:
cp2k.popt -i argon.inp -o out_ex0.out
To run cp2k with MPI, for instance with 2 CPUs, you 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! Now, let's look at the results.
The software we need for visualization is VMD.
You can either use our provided installation on tcopt7
if you followed the setup-instructions to use graphical programs from the server, or you have to install VMD on your local machine yourself.
Load the respective module:
module load vmd/1.9.3-gcc-7.5.0-pxvond2
Pay attention to load the correct version of VMD (i.e. 1.9.3
) because any other module may not work as expected.
You can start VMD
by typing:
vmd
Two new windows named VMD Main
and VMD 1.9.3 … Display
should open on your local machine while the server shows:
Info) VMD for LINUXAMD64, version 1.9.3 (November 30, 2016) 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, 48 CPUs detected. Info) CPU features: SSE2 AVX AVX2 FMA Info) Free system memory: 214GB (85%) 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. Info) OpenGL renderer: llvmpipe (LLVM 11.0.1, 256 bits) Info) Features: STENCIL MSAA(4) MDE CVA MTX NPOT PP PS GLSL(OVFS) Info) Full GLSL rendering mode is available. Info) Textures: 2-D (16384x16384), 3-D (512x512x512), Multitexture (8) Info) Dynamically loaded 2 plugins in directory: Info) /sw-ng/spack/opt/spack/linux-opensuse_leap15-sandybridge/gcc-7.5.0/vmd-1.9.3-pxvond2pthsd3gubsorb4sqfsj22av7w/lib64/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 setup instructions again.
You can exit VMD by either closing the VMD Main
or by giving the quit
command at the vmd >
prompt:
vmd > quit
Simply download and install VMD for your operating system as indicated here.
If you are using MacOS Catalina and are experiencing issue, please download VMD from here, instead.
Before you can try out VMD, we must get some data to visualize. For now, we simply want to view all the Argon atoms from our previous simulation. To do so, we need to extract their coordinates from the input file. The easiest solution to this, is to copy them into an XYZ coordinate file:
cp argon.inp argon.xyz
Now, you must remove everything but the atoms coordinates. You should end up with 108 lines in your file, each containing the coordinate of a single Ar atom.
To make this a fully functional XYZ
file, you must change the top of the file to be the following:
108 Ar -8.53869012951987116 -15.5816257770688615 2.85663672298278293 ...
Now, we are ready for our first visualization with VMD.
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
pbc
stands for periodic boundary conditions and you can also find the box edge lengths in the input file under FORCE_EVAL/SUBSYS/CELL/ABC
mol new argon.xyz mol modstyle 0 0 vdw
The first commands loads the file argon.xyz
.
The second command assumes this is the first file you load (the first index 0
) and that this file contains only a single molecule (the second index 0
).
A snapshot of the molecular dynamics trajectory should approximately look like this:
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.