From VASP.4.X the param.inc file does no longer exist. The required parameters are now determined during run time (or read from INCAR). Thus, if you use VASP.4.X you can skip most of the section. Read only Sec. 6.2,6.3 and 6.5.
The param.inc file is the most important FORTRAN-parameter file for VASP. It is included in the main.f file, and the main.f file needs re-compilation whenever the param.inc file changes. The param.inc file determines the size of the FFT-meshes, the maximum number of plane waves etc.
You might ask why a re-compilation of the main.f program is necessary for each new system. The answer is simple: FORTRAN 77 does not support run-time allocation, and to avoid large programs it is necessary to make all arrays as small as possible. The tasks which can be done with VASP are so numerous that a save setting of these parameters is not possible by default.
A typical param.inc is given in Tab 1 The following section will describe the parameters given in the param.inc file.
C C usual param.inc C C-----General parameters always needed ... PARAMETER(NGX=16,NGY=16,NGZ=16,NGXF=32,NGYF=32,NGZF=32) PARAMETER(NTYPD=1,NIOND=8,NBANDS=48,NKDIM=1) PARAMETER(NRPLWV=1001,NPLINI=100) PARAMETER(NRPLWL=1,NBLK=16,MCPU=1) C-----Parameter for non-local contribution PARAMETER(LDIM=3,LMDIM=18,LDIM2=(LDIM*(LDIM+1))/2,LMYDIM=10) PARAMETER(IRECIP=1,IRMAX=1001,IRDMAX=7000) C-----Special extra parameters: C IALLD=dimension additional arrays for Davidson/all band (0-2) C ISELF=dimension additional arrays for 'selfconsistent schemes' PARAMETER(IALLD=0,IRMMD=4,NEMPTY=0,ISPIND=2,IGRAD=0)
Most parameters on the param.inc file are only necessary to allocate sufficient work space. The only parameters which influence the result of a calculation are NGX,Y,Z, NG(X,Y,Z)F and to a smaller extend NBANDS. NGX,Y,Z and NG(X,Y,Z)F control the size of the FFT meshes used in the calculation. They must be sufficiently large to avoid the so called wrap around errors (see section 9.2, 10.4). The number of bands is usually less critical but should be sufficient to hold all electrons (see section 10.1).
All other parameters will be checked during runtime, if they are not sufficiently large the program will stop and ask you to recompile with an appropriate setting.