===== 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 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] [-mpi-mapping|--mpi-mapping] [-o] [-r|-run] [-s|--shell] [--xml] starts the CP2K program, see The easiest way is cp2k.popt The following options can be used: -i : provides an input file name, if it is the last argument, the -i flag is not needed -o : 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 --echo, -e : echoes the , 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 {{ :exercises:2019_uzh_acpc2:argon.zip |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. ===== Visualization with VMD ===== ===== Part II: Loading and running a program ===== The software we need for visualization is [[http://www.ks.uiuc.edu/Research/vmd/|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. === Starting VMD on ''tcopt7'' === 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 The module loading is **not** persistent. You have to reload the modules every time you log back in. === Installing VMD on your **local** machine === Simply download and install VMD for your operating system as indicated [[http://www.ks.uiuc.edu/Development/Download/download.cgi?PackageName=VMD|here]]. If you are using MacOS Catalina and are experiencing issue, please download VMD from [[https://www.dropbox.com/s/700vi9kkpglf6m6/VMD%201.9.4a38.zip?dl=0|here]], instead. === Getting the input data === 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 [[https://en.wikipedia.org/wiki/XYZ_file_format|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: - The number of atoms on the first line - A blank line (or a comment) - The rest of the file 108 Ar -8.53869012951987116 -15.5816257770688615 2.85663672298278293 ... === Using VMD === 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'' If you prefer to load the file and set the drawing methods via commands, you can do the following: 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: {{:exercises:2018_uzh_acpc2:argon_liq_first_sim.png?400 |}} ===== 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.