VASP requires that the BLAS package is installed on the computer.
This package can be retrieved from many public domain servers, for instance
but if possible one should use an
optimised BLAS package from the machine supplier (see section.
* 1. Download Retrieve the source code and the pseudopotential databases from the download portal located at:
www.vasp.atTo install VASP, create a directory for VASP to reside in. We recommend to use the directory
~/VASP/srcRetrieve the files from the Download Area of your account on the download portal: The source code of vasp.X and vasp.X.lib are stored under src and lib of the respective VASP-releases VASP46 (and VASP5)
vasp.X.tar.gz vasp.X.lib.tar.gzThe Pseudopotentials are stored under Potentials in the sub-folders LDA, PBE and PW91: The files potUSPP_XC_type.tar.gz contain ultrasoft pseudopotentials for the respective exchange-correlation type XC_type LDA, PW91 and PBE, the files potpaw_XC_type.tar.gz contain the projector-augmented-wave (PAW) pseudopotentials of XC_type. These files should be untared in separated directories (one for each XC_type of the USPP and the PAW pseudopotentials), e.g. using the commands
cd ~/VASP mkdir potUSPP_LDA mkdir potUSPP_PW91 mkdir potPAW_LDA mkdir potPAW.52_LDA mkdir potPAW_PBE mkdir potPAW.52_PBE mkdir potPAW_PW91copy the .tar.gz file of the pseudopotentials in the corresponding directory and unfold the .tar.gz file by
tar -zxvf potXX.tar.gzAbout 80 directories, all containing a file POTCAR.Z, are generated. The elements for which the potential file was generated can be recognised by the name of the directory (e.g. Al, Si, Fe, etc). For more detail, we refer to section 10.
tar -xvf vasp.X.tar tar -xvf vasp.X.lib.tarTwo directories are created for each code release X:
vasp.X.lib/ vasp.X.X/Go to the vasp.X.lib directory, and copy the appropriate makefile.machine to Makefile:
cd vasp.4.lib cp makefile.machine MakefileYou might choose makefile.machine from the list of provided makefiles:
makefile.cray makefile.dec makefile.hp makefile.linux_abs makefile.linux_alpha makefile.linux_ifc_P4 makefile.linux_ifc_ath makefile.linux_pg makefile.nec makefile.rs6000 makefile.sgi makefile.sp2 makefile.sun makefile.t3d makefile.t3e makefile.vpp cray CRAY C90, J90, T90 (++) dec DEC ALPHA, True 64 Unix (++) hp HP PA (0) linux_abs Linux, Absoft compiler (0) linux_alpha Linux, Alpha processors fort compiler (++) linux_ifc_P4 Linux, Intel fortran compiler (ifc), P4 optimisation (++) linux_ifc_P4 Linux, Intel fortran compiler (ifc), Athlon optimisation (++) linux_pg Linux, Portland group compiler (++) nec NEC vector computer (+) rs6000 IBM AIX, xlf90 compiler (++) sgi SGI, Origin 200/ 2000/ 3000, Power Challenge, O2 etc. (+) sp2 IBM SP2, possibly also usefull for RS6000 (++) sun SUN, Ultrasparc (-) t3d Cray/SGI T3D (+) t3e Cray/SGI T3E (+) vpp fujitsu VPP, VPX (0)The value in brackets indicates whether is likely that VASP will compile and execute without problems: ++ no problems; + usually no problems; 0 presently unknown; - unlikely. Type
makeThe compilation should finish without errors, although warnings are possible. Go to the vasp.X.x directory. Copy the appropriated makefile.machine to Makefile. Now check the first 10-20 lines in the Makefile for additional hints. It is absolutely required to follow these guidelines, since the executable might not work properly otherwise. If the Makefile suggests that certain routines must be compiled with a lower optimisation, you can usually do this by inserting lines at the end of the makefile. For instance
radial.o : radial.F $(CPP) $(F77) $(FFLAGS) -O1 $(INCS) -c $*$(SUFFIX)Finally, type
makeagain. It should be possible to finish again without errors (although numerous warnings are possible). If problems are encountered during the compilation, please make first shure that you have followed exactly the guidelines in the Makefile. If you have done so, generate a bug report by typing the following commands (bash or ksh):
make clean make >bugreport 2>&1If you use the csh or tcsh, type:
make clean make >& bugreportSend, us the files Makefile, bugreport, the exact operating system version, and the exact compiler version (see Sec. 3.6). Presently, we can solve problems only for the following platforms, since we do not have access to other operating systems:
makefile.dec makefile.linux_alpha makefile.linux_ifc_P4 makefile.linux_ifc_ath makefile.linux_pg makefile.rs6000 makefile.sp2Bug reports for the sun platform are rather useless. We know that vasp fails to work reliably on Sun machines, but this is related to an utterly bad Fortran 90 compiler. Any suggestions how to solve this problem are appriciated.
Mind: The VASP makefiles assume that optimised BLAS packages are installed on the machine. The following BLAS libraries are linked in, if the standard makefiles are used:
libessl.a IBM RS6000, SP2, SP3 and SP4 libcxml.a True 64 Unix, and Alpha Linux libblas.a SGI libveclib.a HP libsci.a CRAY C90 libmkl_p4 Intel P4, mkl performance libraryUsually these packages are speficied in the line starting with
BLAS=or in the line starting with
LIB=If you do not have access to these optimized BLAS libraries, you can download the ATLAS based BLAS from http://math-atlas.sourceforge.net. In this case (and for most linux makefiles), the BLAS line in the Makefile must be costumized manually. Additional BLAS related hints are discussed in section 3.7 and in some of the makefiles.
Next step: Create a work directory, copy the bench*.tar.gz files to this directory and untar the benchmark.tar file.
gunzip <benchmark.tar.gz | tar -xvf -Then type
directory_where_VASP_resides/vaspOne should get the following results prompted to the screen (VASP.4.5 and newer versions):
VASP.4.4.4 24.Feb 2000 POSCAR found : 1 types and 8 ions WARNING: mass on POTCAR and INCAR are incompatible typ 1 Mass 63.5500000000000 63.5460000000000 ----------------------------------------------------------------------------- | | | W W AA RRRRR N N II N N GGGG !!! | | W W A A R R NN N II NN N G G !!! | | W W A A R R N N N II N N N G !!! | | W WW W AAAAAA RRRRR N N N II N N N G GGG ! | | WW WW A A R R N NN II N NN G G | | W W A A R R N N II N N GGGG !!! | | | | VASP found 21 degrees of freedom | | the temperature will equal 2*E(kin)/ (degrees of freedom) | | this differs from previous releases, where T was 2*E(kin)/(3 NIONS). | | The new definition is more consistent | | | ----------------------------------------------------------------------------- file io ok, starting setup WARNING: wrap around errors must be expected prediction of wavefunctions initialized entering main loop N E dE d eps ncg rms rms(c) CG : 1 -0.88871893E+04 -0.88872E+04 -0.15902E+04 96 0.914E+02 CG : 2 -0.90140943E+04 -0.12691E+03 -0.93377E+02 126 0.142E+02 CG : 3 -0.90288324E+04 -0.14738E+02 -0.49449E+01 112 0.293E+01 0.175E+01 CG : 4 -0.90228639E+04 0.59686E+01 -0.28031E+01 100 0.264E+01 0.373E+00 CG : 5 -0.90228253E+04 0.38602E-01 -0.64323E-01 100 0.337E+00 0.141E+00 CG : 6 -0.90227973E+04 0.28000E-01 -0.90047E-02 99 0.131E+00 0.643E-01 CG : 7 -0.90227865E+04 0.10730E-01 -0.31225E-02 98 0.677E-01 0.180E-01 CG : 8 -0.90227861E+04 0.43257E-03 -0.13932E-03 98 0.169E-01 0.800E-02 CG : 9 -0.90227859E+04 0.23479E-03 -0.47878E-04 62 0.814E-02 0.362E-02 CG : 10 -0.90227858E+04 0.41776E-04 -0.10154E-04 51 0.514E-02 1 T= 2080. E= -.90209042E+04 F= -.90227859E+04 E0= -.90220337E+04 EK= 0.18817E+01 SP= 0.00E+00 SK= 0.57E-05 bond charge predicted N E dE d eps ncg rms rms(c) CG : 1 -0.90226970E+04 -0.90227E+04 -0.32511E+00 96 0.935E+00 CG : 2 -0.90226997E+04 -0.27335E-02 -0.26667E-02 109 0.957E-01 CG : 3 -0.90226998E+04 -0.23857E-04 -0.23704E-04 57 0.741E-02 0.455E-01 CG : 4 -0.90226994E+04 0.34907E-03 -0.15696E-03 97 0.150E-01 0.121E-01 CG : 5 -0.90226992E+04 0.22898E-03 -0.54745E-04 75 0.915E-02 0.327E-02 CG : 6 -0.90226992E+04 0.13733E-04 -0.50646E-05 49 0.395E-02 2 T= 1984. E= -.90209039E+04 F= -.90226992E+04 E0= -.90219455E+04 EK= 0.17948E+01 SP= 0.42E-03 SK= 0.37E-04The full output can be found in the file OSZICAR.ref_4.4.3.
If the output is correct, you might move to bench.Hg.tar (this is a small benchmark indicating the performance of the machine).
gunzip <bench.Hg.tar.gz | tar -xvf - directory_where_VASP_resides/vasp # this command will take 4-60 minutes grep LOOP+ OUTCARThe benchmark requires 50 MBytes, and takes between 4-60 minutes. It is best if the machine is idle, but generally results are also useful if this is not the case. Mind that the last Typical values for LOOP+ are shown indicated in Section 3.8. The output produced by this run can be found in the OSZICAR.ref file (version VASP.4.4.3) in the tar file.