Input data format: { } = optional, [ ] = it depends

All quantities MUST be set (when not otherwise specified) in 
RYDBERG ATOMIC UNITS

===============================================================================
&CONTROL
  ...
/
&SYSTEM
 ...
/
&ELECTRONS
...
/
[ &IONS
  ...
 / ]
[ &CELL
  ...
 / ]
[ &PHONON
  ...
 / ]
ATOMIC_SPECIES
 X  Mass_X  PseudoPot_X
 Y  Mass_Y  PseudoPot_Y
 Z  Mass_Z  PseudoPot_Z
ATOMIC_POSITIONS { alat | bohr | crystal | angstrom }
if ( calculation = 'neb' )
  first_image
  X 0.0  0.0  0.0  {if_pos(1) if_pos(2) if_pos(3)}
  Y 0.5  0.0  0.0
  Z O.0  0.2  0.2
 { intermediate_image 1
   X 0.0  0.0  0.0
   Y 0.9  0.0  0.0
   Z O.0  0.2  0.2
   intermediate_image ...
   X 0.0  0.0  0.0
   Y 0.9  0.0  0.0
   Z O.0  0.2  0.2 }
  last_image
  X 0.0  0.0  0.0
  Y 0.7  0.0  0.0
  Z O.0  0.5  0.2 
else
  X 0.0  0.0  0.0  {if_pos(1) if_pos(2) if_pos(3)}
  Y 0.5  0.0  0.0
  Z O.0  0.2  0.2
K_POINTS { tpiba | automatic | crystal | gamma }
if (gamma)
   nothing to read
if (automatic) 
   nk1, nk2, nk3, k1, k2, k3
if (not automatic) 
   nks
   xk_x, xk_y, xk_z,  wk
[ CELL_PARAMETERS { cubic | hexagonal }
   a(1,1) a(2,1) a(3,1)
   a(1,2) a(2,2) a(3,2)
   a(1,3) a(2,3) a(3,3) ]
[ OCCUPATIONS
   f_inp(1,1)  f_inp(2,1)  f_inp(3,1) ... f_inp(10,1)
   f_inp(11,1) f_inp(12,1) ... f_inp(nbnd,1)
 [ f_inp(1,2)  f_inp(2,2)  f_inp(3,2) ... f_inp(10,2)
   f_inp(11,2) f_inp(12,2) ... f_inp(nbnd,2) ] ]
[ CLIMBING_IMAGES
   list of images, separated by a comma ]   
[ CONSTRAINTS
   nconstr   constr_tol
   constr_type(.)   constr(1,.)   constr(2,.) ]   
===============================================================================
NAMELIST &CONTROL

calculation    CHARACTER
               a string describing the task to be performed:
               'scf', 'nscf', 'phonon', 'relax', 'md', 'vc-relax', 
	       'vc-md', 'neb', 'smd'
               (vc = variable-cell). Default: 'scf'

title          CHARACTER
               reprinted on output. Default: ' '

verbosity      CHARACTER
               'high' | 'default' | 'low' | 'minimal'

restart_mode   CHARACTER
               'from_scratch'  : from scratch ( default )
	                         NEB and SMD only: the starting path is obtained
                                 with a linear interpolation between the images
                                 specified in the ATOMIC_POSITIONS card.
				 Note that in the linear interpolation
                                 periodic boundary conditions ARE NON USED.
               'restart'       : from previous interrupted run

nstep          INTEGER                         
               number of ionic + electronic steps
               default: 1 if calculation = 'scf', 'nscf'
	                0 if calculation = 'neb', 'smd'
                       50 for the other cases

iprint         INTEGER
               band energies are written every iprint iterations
               default: write only at convergence

tstress        LOGICAL
               calculate stress. Set to .TRUE. if calculation='vc-md'

tprnfor        LOGICAL
               print forces. Set to .TRUE. if calculation='relax','md','vc-md'
            
dt             REAL
               time step for molecular dynamics, in Rydberg atomic units
               (1 a.u.=4.8378 * 10^-17 s : beware, CP and FPMD codes use
                Hartree atomic units, half that much!!!)

outdir         CHARACTER ( default = current directory ('./') )
               input, temporary, output files are found in this directory
            
prefix         CHARACTER ( default = 'pwscf' )
               prepended to input/output filenames: 
               prefix.wfc, prefix.rho, etc. 

max_seconds    INTEGER
               jobs stops after max_seconds CPU time

etot_conv_thr  REAL ( default = 1.0D-4 )
               convergence threshold on total energy (a.u)
               for ionic minimization. 
               See also forc_conv_thr - both criteria must be satisfied

forc_conv_thr  REAL ( default = 1.0D-3 )
               convergence threshold on forces (a.u)
               for ionic minimization.
               See also etot_conv_thr - both criteria must be satisfied

disk_io        CHARACTER
               'high', 'default', 'low', 'minimal'

pseudo_dir     CHARACTER ( default = '$HOME/pw/pseudo/' )
               directory containing pseudopotential files

tefield        LOGICAL ( default = .FALSE. )
               If .TRUE. a sawlike potential is added to the 
               bare ionic potential. 

lberry         LOGICAL  (default =  .FALSE.)
               If .TRUE. perform a Berry phase calculation
               See the header of PW/bp_c_phase.f90 for documentation

gdir           INTEGER
               For Berry phase calculation: direction of the k-point
               strings in reciprocal space. Allowed values: 1, 2, 3 
               1=first, 2=second, 3=third reciprocal lattice vector

nppstr         INTEGER
               For Berry phase calculation: number of k-points to be 
               calculated along each symmetry-reduced string

===============================================================================
NAMELIST &SYSTEM

ibrav          INTEGER
               bravais-lattice index (must be specified)
               see at the end of this file

celldm(i)      REAL, DIMENSION(6)                        
               crystallographic constants - see at the end of this file
               alat = celldm(1) is the lattice parameter "a" (in BOHR)
               only needed celldm (depending on ibrav) must be specified

a, b, c, cosab, cosac, cosbc: 
               REAL
	       traditional crystallographic constants (a,b,c in ANGSTROM)
               specify either these or celldm  but not both
 
nat            INTEGER
                number of atoms in the unit cell - must be specified

ntyp           INTEGER
               number of types of atoms in the unit cell - must be specified

nbnd           INTEGER
               number of electronic states (bands) to be calculated.
               Default: for an insulator, nbnd = (number of valence bands)
                        (nbnd=nelec/2, see below for nelec)
                        for a metal, 20% more (minimum 4 more)
               Note that in spin-polarized calculations the number of
               k-point, not the number of bands per k-point, is doubled

nelec          REAL
               number of electron in the unit cell
               (may be noninteger if you wish)
               Default: the same as ionic charge (neutral cell)
               A compensating jellium background is inserted
               to remove divergencies if the cell is not neutral

ecutwfc        REAL
               kinetic energy cutoff (Ry) for wavefunctions
               (must be specified)
	       
ecutrho        REAL ( default = 4 * ecutwfc )
               kinetic energy cutoff (Ry) for charge density and potential
               May be larger ( for ultrasoft PP ) or somewhat smaller 
               ( but not much smaller ) than the default value

nr1,nr2,nr3    INTEGER
               three-dimensional FFT mesh (hard grid) for charge
               density (and scf potential). If not specified
               the grid is calculated based on the cutoff for
               charge density (see also "ecutrho")

nr1s,nr2s,nr3s INTEGER
               three-dimensional mesh for wavefunction FFT and for the smooth 
               part of charge density ( smooth grid ). 
               Coincides with nr1, nr2, nr3 if ecutrho = 4 * ecutwfc ( default )

nosym          LOGICAL ( default = .FALSE. )
               if (.TRUE.) symmetry is not used. Note that a k-point grid
               provided in input is used "as is"; an automatically generated
               k-point grid will contain only points in the irreducible BZ 
               of the lattice.  Use with care in low-symmetry large cells 
               if you cannot afford a k-point grid with the correct symmetry.

starting_magnetization(i)   
               REAL
               starting spin polarization (values between -1 and 1)
               on atomic type 'i' in a lsda calculation. Breaks the
               symmetry and provides a starting point for self-consistency.
               The default value is zero, BUT a value MUST be specified for
               AT LEAST one atomic type in spin polarized calculations.
               If zero starting magnetization is specified, zero final
               magnetization will be obtained.

occupations    CHARACTER
               'smearing':     gaussian smearing for metals
                               requires a value for degauss
               'tetrahedra' :  for metals and DOS calculation
                               (see PRB49, 16223 (1994))
                               Requires uniform grid of k-points,
                               automatically generated (see below)
               'fixed' :       for insulators with a gap
               'from_input' :  The occupation are read from input file.
                               Presently works only with one k-point 
                               (LSDA allowed). 

degauss        REAL ( default = 0.D0 Ry )
               value of the gaussian spreading for brillouin-zone
               integration in metals.

smearing       CHARACTER
               'gaussian', 'gauss':  
                    ordinary Gaussian spreading (Default)
               'methfessel-paxton', 'm-p', 'mp':
                    Methfessel-Paxton first-order spreading
                    (see PRB 40, 3616 (1989)).
               'marzari-vanderbilt', 'cold', 'm-v', 'mv':
                    Marzari-Vanderbilt cold smearing
                    (see PRL 82, 3296 (1999))
               'fermi-dirac', 'f-d', 'fd':
                    smearing with Fermi-Dirac function

nelup, neldw   REAL
               number of spin-up and spin-down electrons, respectively
               The sum must yield nelec !!! NOT YET USED !!!

nspin          INTEGER
               nspin = 1 :   non-polarized calculation (default)
               nspin = 2 :  spin-polarized calculation

ecfixed        REAL                                      40.0
qcutz          REAL                                       0.0
q2sigma        REAL                                       0.1
               parameters for modified functional to be used in
               variable-cell molecular dynamics (or in stress calculation)

xc_type        CHARACTER
               Exchange-correlation functional
               Presently unused: XC functional is read from PP files

lda_plus_u        LOGICAL   ( default = .FALSE.)
Hubbard_U(I)      REAL      ( default = 0.D0 for all species)
Hubbard_alpha(I)  REAL      ( default = 0.D0 for all species)
               parameters for LDA+U calculations
               If lda_plus_u = .TRUE. you must specify, for species I,
               the parameters U and (optionally) alpha of the Hubbard 
               model (both in eV). See:
               Anisimov, Zaanen, and Andersen, PRB 44, 943 (1991);
               Anisimov et al., PRB 48, 16929 (1993);
               Liechtenstein, Anisimov, and Zaanen, PRB 52, R5467 (1994); 
               Cococcioni and de Gironcoli (to be published)

starting_ns_eigenvalue(m,ispin,I) REAL (default = -1.d0 that means NOT SET)
               In the first iteration of an LDA+U run it overwrites
               the m-th eigenvalue of the ns occupation matrix for the
               ispin component of atomic species I. Leave unchanged
               eigenvalues that are not set. This is useful to suggest
               the desired orbital occupations when the default choice
               takes another path.

U_projector_type   CHARACTER   (default='atomic')
               Only active when lda_plus_U is .true., specifies the type
               of projector on localized orbital to be used in the LDA+U
               scheme.
               Currently available choices:
               'atomic': use atomic wfc's (as they are) to build the projector 
               'ortho-atomic': use Lowdin orthogonalized atomic wfc's
               'file': use the information from file "prefix".atwfc that must
                       have been generated previously, for instance by pmw.x
                       (see PP/poormanwannier.f90 for details)
               NB: forces and stress currently implemented only for the
                   'atomic' choice.

edir           INTEGER
               1, 2 or 3. Used only if tefield is .TRUE.. The direction of the
               electric field is parallel to the bg(:,edir) reciprocal 
               lattice vector ( So the potential is constant in planes 
               defined by the mesh points )

emaxpos        REAL ( default = 0.5D0 )
               Position of the maximum of the sawlike potential within the 
               unit cell ( 0 < emaxpos < 1 )

eopreg         REAL( default = 0.1D0 )
               Part of the unit cell where the sawlike potential decreases.
               ( 0 < eopreg < 1 )

eamp           REAL ( default = 0.001 a.u. )
               Amplitude of the electric field (in a.u.) 
	       ( 1 a.u. = 51.44 10^10 V/m )
   

===============================================================================
NAMELIST &ELECTRONS

electron_maxstep  
               INTEGER ( default = 50 )
               maximum number of iterations in a scf step

conv_thr       REAL  ( default = 1.D-6 )
               Convergence threshold for selfconsistency: 
               estimated energy error < conv_thr

mixing_mode    CHARACTER
               'plain' :    charge density Broyden mixing ( default )
               'TF' :       as above, with simple Thomas-Fermi screening
                            (for highly homogeneous systems)
               'local-TF':  as above, with local-density-dependent TF screening
                            (for highly inhomogeneous systems)
               'potential': (obsolete) potential mixing

mixing_beta    REAL ( default = 0.7D0 )
               mixing factor for self-consistency 

mixing_ndim    INTEGER ( default = 8)
               number of iterations used in mixing scheme

mixing_fixed_ns   
               INTEGER ( default = 0 )
               For LDA+U : number of iterations with fixed ns ( ns is the
               atomic density appearing in the Hubbard term ) 

diagonalization   
               CHARACTER
               'david':  Davidson iterative diagonalization with overlap matrix
                         (default)
               'diis' :  DIIS-like diagonalization
               'cg' :    conjugate-gradient-like band-by-band diagonalization

diago_thr_init     
               REAL  ( default = 1.D-2 )
               Convergence threshold for the firts iterative diagonalization.
               The threshold (ethr) is automatically updated along the
               self consistency loop.

diago_cg_maxiter  
               INTEGER
               For conjugate gradient diagonalization:
               max number of iterations

diago_david_ndim  
               INTEGER ( default = 4 )
               For Davidson diagonalization: dimension of workspace 
               (number of wavefunction packets, at least 2 needed). 
               A larger value may yield a faster algorithm but uses 
               more memory

diago_diis_ndim   
               INTEGER ( default = 3 )
               For DIIS: dimension of the reduced space.

startingpot    CHARACTER
               'atomic': starting potential from atomic charge superposition
                         ( default for scf, *relax, *md, neb, smd )
               'file'  : start from existing "prefix".pot file
                         ( default and only possibility for nscf and phonon )

startingwfc    CHARACTER
               'atomic': start from superposition of atomic orbitals ( default )
                         If not enough atomic orbitals are available,
                         fill with random numbers the remaining wfcs
               'random': start from random wfcs
               'file':   start from a wavefunction file
               

===============================================================================
NAMELIST &IONS  ( only if calculation = 'relax', 'md', 
                                        'vc-relax', 'vc-md', 'neb' )

ion_dynamics   CHARACTER
               specify the type of ionic dynamics. 
               For different type of calculation different possibilities are 
               allowed and different default values apply:
               
	       CASE ( calculation = 'relax' )
                 'bfgs' :   (default)   a new BFGS quasi-newton algorithm, based
                                        on the trust radius procedure, is used 
                                        for structural relaxation (experimental)
                 'old-bfgs' :           use the old BFGS quasi-newton method for
                                        structural relaxation
		 'damp' :               use damped (quick-min velocity Verlet) 
                                        dynamics for structural relaxation
                 'constrained-damp' :   use damped (quick-min velocity Verlet) 
                                        dynamics for structural relaxation with 
                                        the constraint specified in the 
                                        CONSTRAINTS CARD
               CASE ( calculation = 'md' )
                 'verlet' : (default)   use velocity Verlet algorithm to 
                                        integrate Newton's equation
                 'constrained-verlet' : use velocity Verlet algorithm to do 
                                        molecular dynamics with the constraint
                                        specified in the CONSTRAINTS CARD 
               CASE ( calculation = 'vc-relax' )
                 'damp' :   (default)   use damped (Beeman) dynamics for 
		                        structural relaxation
               CASE ( calculation = 'vc-md' )
                 'beeman' : (default)   use Beeman algorithm to integrate 
                                        Newton's equation
             
ion_temperature   
               CHARACTER
               'nose'          : Nose' thermostat, not implemented
               'rescaling'     : velocity rescaling (sort of implemented)
               'not_controlled': default

tempw          REAL
               starting temperature (Kelvin) in MD runs 

ttol           REAL ( default = 1.D-3 )
               tolerance for velocity rescaling. Velocities are
               not rescaled if the ratio of the run-averaged and 
               target temperature differs from unit less than ttol

upscale        REAL ( default = 10.D0 )
               max reduction factor for conv_thr during structural optimization
               conv_thr is automatically reduced when the relaxation 
               approaches convergence so that forces are still accurate,
               but conv_thr will not be reduced to less that 
               conv_thr / upscale

potential_extrapolation     
               CHARACTER
               used to extrapolate the potential and the wave-functions 
               from preceding ionic step(s)

               'none':   no extrapolation
               'atomic': extrapolate the potential as if it was a sum of
                         atomic-like orbitals (default for calculation='relax')
               'wfc':    extrapolate the potential as above
                         extrapolate wave-functions with first-order formula
                         (default for calcualtion='md' and calcualtion='neb')
               'wfc2':   as above, with second order formula
	       
lbfgs_ndim     INTEGER ( default = 1 )
               number of old forces and displacements vectors used in the
	       linear scaling BFGS algorithm. When lbfgs_ndim = 1 the complete
	       inverse Hessian is stored (suggested for small/medium-size 
	       systems).
	       On large systems (some hundreds of atoms) a good performance can 
	       be achieved with only 4 or 6 old vectors 
               (bfgs only)

trust_radius_max
               REAL ( default = 0.5D0 BOHR ) 
               maximum ionic displacement in the structural relaxation 
	       (bfgs only)

trust_radius_min
               REAL ( default = 1.D-5 BOHR )
	       minimum ionic displacement in the structural relaxation
               BFGS is reset when trust_radius < trust_radius_min
	       (bfgs only)

trust_radius_ini
               REAL ( default = 0.5D0 BOHR )
               initial ionic displacement in the structural relaxation
               (bfgs only)

trust_radius_end
               REAL ( default = 1.D-7 BOHR )
               BFGS is stopped when trust_radius < trust_radius_end
	       trust_radius_end is not intended to be used as a criterium
	       for convergence (bfgs only)

w_1, w_2
               REAL ( w_1 = 1.D-5, w_2 = 0.2D0 )
	       parameters used in line search based on the Wolfe conditions
	       (bfgs only)
	       
num_of_images  INTEGER ( default = 0 )
               number of points used to discrtize the path

CI_scheme      CHARACTER. ( default = "no-CI" )
               specify the type of Climbing Image scheme
               "no-CI"      : climbing image is not used
               "highest-TS" : original CI scheme. The image highest in energy 
	                      does not feel the effect of springs and is 
			      allowed to climb along the path
               "manual"     : images that have to climb are manually selected. 
	                      See also CLIMBING_IMAGES card 

first_last_opt LOGICAL ( default = .FALSE. )
               also the first and the last configurations are optimized
               "on the fly" 
	       (these images do not feel the effect of the springs)

minimization_scheme     
               CHARACTER ( default = "quick-min" )
               specify the type of optimization scheme      
               "sd"         : steepest descent
	       "quick-min"  : a minimization algorithm based on
	                      molecular dynamics (suggested)
               "damped-dyn" : damped molecular dynamics. See also the 
	                      keyword damp
               "mol-dyn"    : constant temperature molecular dynamics. See 
	                      also the keyword temp_req.
	                      Note that, in order to perform such molecular 
			      dynamics, spring forces are NOT projected 
			      along the path. 

damp           REAL ( default = 1.D0 )
               Damping coefficent. Ignored when "minimization_scheme"
               is different from "damped-dyn"

temp_req       REAL ( default = 0.D0 Kelvin )
               temperature associated to the elastic band. Each image has its 
	       own thermostat. The temperature in the output is the average 
	       temperature of the elastic band computed before the 
	       thermalization
               ignored when "minimization_scheme" is different from "mol-dyn"

ds             REAL ( default = 1.5D0 )
               optimization step length ( Hartree atomic units )
	              
k_max, k_min   REAL ( default = 0.1D0 Hartree atomic units )
               set them to use a Variable Elastic Constants scheme 
	       elastic constants are in the range [ k_min, k_max ] 
	       this is useful to rise the resolution around the saddle point

path_thr       REAL ( default = 0.05D0 eV / Angstrom )
               the simulation stops when the error ( the norm of the force 
	       orthogonal to the path in eV/A ) is less than path_thr.
               
reset_vel      LOGICAL ( default = .FALSE. )
               used to reset quick-min velocities at restart time
               (sort of clean-up of the history)
               
write_save     LOGICAL ( default = .FALSE. )
               used to write the prefix.save file for each image needed for
               post-processing

===============================================================================
NAMELIST &CELL ( only if calculation = 'vc-relax', 'vc-md' )

cell_dynamics     
               CHARACTER
               specify the type of dynamics for the cell. 
               For different type of calculation different possibilities 
               are allowed and different default values apply:

               CASE ( calculation = 'vc-relax' )
                 'none':    default 
                 'sd':      steepest descent ( not implemented )
                 'damp-pr': damped (Beeman) dynamics of the Parrinello-Raman 
                            extended lagrangian
                 'damp-w':  damped (Beeman) dynamics of the new Wentzcovitch
                            extended lagrangian
               CASE ( calculation = 'vc-md' )
                 'none': default 
                 'pr':      (Beeman) molecular dynamics of the Parrinello-Raman 
                            extended lagrangian
                 'w':       (Beeman) molecular dynamics of the new Wentzcovitch
                            extended lagrangian

press          REAL ( default = 0.D0 )
               target pressure [KBar] in a variable-cell md simulation

wmass          REAL
               ficticious cell mass for variable-cell md simulations

cell_factor    REAL ( default = 1.2D0 )
               used in the construction of the pseudopotential tables. 
               It should exceed the maximum linear contraction of the
               cell during a simulation.


===============================================================================
&PHONON ( only in calculation = 'phonon' )

modenum        INTEGER ( default = 0 )
               for single-mode phonon calculation

xqq(3)         REAL
               q-point (units 2pi/a) for phonon calculation

	       
===============================================================================
CARDS: { } = optional
-------------------------------------------------------------------------------
ATOMIC_SPECIES

Syntax:

ATOMIC_SPECIES
 X(1)     Mass_X(1)     PseudoPot_X(ntyp)
 X(2)     Mass_X(2)     PseudoPot_X(ntyp)
 ...
 X(ntyp)  Mass_X(ntyp)  PseudoPot_X(ntyp)

Description:
 X           CHARACTER : label of the atom
 Mass_X      REAL      : mass of the atomic species
                         not used if calculation='scf', 'nscf', 'phonon'
 PseudoPot_X CHARACTER:  file containing PP for this species

 The pseudopotential file is assumed to be in the new UPF format.
 If it doesn't work, the pseudopotential format is determined by
 the file name:
     *.vdb or *.van     Vanderbilt US pseudopotential code
     *.RRKJ3            Andrea Dal Corso's code (old format)
     none of the above  old PWscf norm-conserving format
 
-------------------------------------------------------------------------------
ATOMIC_POSITIONS { alat | bohr | crystal | angstrom }
   alat    : atomic positions are in units of alat (default)
   bohr    : atomic positions are in a.u.
   crystal : atomic positions are in crystal coordinates (see below)
   angstrom: atomic positions are in A

if calculation = 'neb' .OR. 'smd'

  There are many cards like the following
  
  identifier
  X  x y z   {if_pos(1) if_pos(2) if_pos(3)}
  
  One for the first image ( identifier="first_image" must be followed by "nat" 
  position cards ) and one for the last image ( identifier="last_image" must 
  be followed by "nat" position cards )
  There is also the possibility of specifying intermediate images; in this case
  their coordinates must be set between the first_image and the last_image.
  ( identifier="intermediate_image" must be followed by "nat" position cards ). 
  Image configurations must be specified in the following order:
  
  first_image                                           <= mandatory
   X 0.0  0.0  0.0  { if_pos(1) if_pos(2) if_pos(3) }
   Y 0.5  0.0  0.0  { if_pos(1) if_pos(2) if_pos(3) }
   Z O.0  0.2  0.2  { if_pos(1) if_pos(2) if_pos(3) }
  intermediate_image 1                                  <= optional
   X 0.0  0.0  0.0
   Y 0.9  0.0  0.0
   Z O.0  0.2  0.2
  intermediate_image ...                                <= optional
   X 0.0  0.0  0.0
   Y 0.9  0.0  0.0
   Z O.0  0.2  0.2 }
  last_image                                            <= mandatory
   X 0.0  0.0  0.0
   Y 0.7  0.0  0.0
   Z O.0  0.5  0.2  
   
  IMPORTANT: the total number of configurations specified in the input file 
             must be less than num_of_images (as specified in &IONS).
             The initial path is obtained interpolatig between the specified
             configurations so that all images are equispaced (only the
             coordinates of the first and last images are not changed). 

otherwise

  There are "nat" cards like the following
  
  X  x y z   {if_pos(1) if_pos(2) if_pos(3)}

where :

  identifier  String: a string that identifies image coordinates.
  X           Character: label of the atom as specified in ATOMIC_SPECIES
  x, y, z     Real: atomic positions 
  if_pos:     Integer: component i of the force for this atom is multiplied
              by if_pos(i), which must be 0 or 1. Used to keep selected atoms
              and/or selected components fixed in neb, smd, MD dynamics or 
              structural optimization run
              
-------------------------------------------------------------------------------
K_POINTS { tpiba | automatic | crystal | gamma }

   gamma    : use k = 0 ( do not read anything after this card )
              Note that a set of subroutines optimized for clculations at 
              the gamma point are used so that both memory and cpu requirements
              are reduced
   automatic: automatically generated uniform grid of k-points
              next card:
   nk1, nk2, nk3, k1, k2, k3
              generates ( nk1, nk2, nk3 ) mesh with ( k1, k2, k3 ) offset
              nk1, nk2, nk3 as in Monkhorst-Pack grids
              k1, k2, k3 must be 0 ( no offset ) or 1 ( grid displaced 
              by half a grid step in the corresponding direction )
              The mesh with offset may not work with tetrahedra.
   crystal  : read k-points in crystal coordinates
   tpiba    : read k-points in 2pi/a units ( default )
              next card:
   nks
              number of supplied special points
   xk_x, xk_y, xk_z,  wk
              special points in the irreducible Brillouin Zone
              of the lattice (with all symmetries) and weights
              If the symmetry is lower than the full symmetry 
              of the lattice, additional points with appropriate
              weights are generated
	      
-------------------------------------------------------------------------------
CELL_PARAMETERS { cubic | hexagonal }
  optional card, needed only if ibrav = 0 is specified
  cubic    : assume cubic symmetry or a subset (default)  
  hexagonal: assume hexagonal symmetry or a subset
  Next cards:
    a(1,1) a(2,1) a(3,1)
    a(1,2) a(2,2) a(3,2)
    a(1,3) a(2,3) a(3,3)

  a(:,1) = crystal axis 1    alat units if celldm(1) was specified
      2                 2    a.u. if celldm(1)=0
      3                 3

-------------------------------------------------------------------------------

CLIMBING_IMAGES
  optional card, needed only if calculation = 'neb' and CI_scheme = 'manual'
  Next card: 
  
   index1, index2, ..., indexN
  
  where index1, index2, ..., indexN are the indices of the images to which 
  apply the Climbing Image procedure. If more than an image is specified they
  must be separated by a comma
       
-------------------------------------------------------------------------------

CONSTRAINTS

   Ionic Constraints

 Syntax:

    CONSTRAINTS
      nconstr   constr_tol
      constr_type(.)   constr(1,.)   constr(2,.)

 Where:

      nconstr (INTEGER)         INTEGER, number of constraints
      constr_tol                REAL,    tolerance for keeping the constraints 
                                         satisfied
      constr_type(.)            INTEGER, type of constrain
      constr(1,.) constr(2,.)   INTEGER, atoms indices object of the constraint.
                                        
                          I.E.: 1 ia1 ia2 "1" is the constrain type 
                                (fixed distance) "ia1 ia2" are the 
                                indices of the atoms (as they appear 
                                in the 'ATOMIC_POSITION' CARD) whose 
                                distance has to be kept constant

-------------------------------------------------------------------------------

  ibrav is the structure index:

    ibrav        structure                   celldm(2)-celldm(6)

      0          "free", see above                 not used
      1          cubic P (sc)                      not used
      2          cubic F (fcc)                     not used   
      3          cubic I (bcc)                     not used
      4          Hexagonal and Trigonal P        celldm(3)=c/a
      5          Trigonal R                      celldm(4)=cos(aalpha)
      6          Tetragonal P (st)               celldm(3)=c/a
      7          Tetragonal I (bct)              celldm(3)=c/a
      8          Orthorhombic P                  celldm(2)=b/a,celldm(3)=c/a
      9          Orthorhombic base-centered(bco) celldm(2)=b/a,celldm(3)=c/a
     10          Orthorhombic face-centered      celldm(2)=b/a,celldm(3)=c/a
     11          Orthorhombic body-centered      celldm(2)=b/a,celldm(3)=c/a
     12          Monoclinic P                    celldm(2)=b/a,celldm(3)=c/a,
                                                 celldm(4)=cos(ab)
     13          Monoclinic base-centered        celldm(2)=b/a,celldm(3)=c/a,
                                                 celldm(4)=cos(ab)
     14          Triclinic P                     celldm(2)= b/a,
                                                 celldm(3)= c/a,
                                                 celldm(4)= cos(bc),
                                                 celldm(5)= cos(ac),
                                                 celldm(6)= cos(ab)

  The special axis is the z-axis, one basal-plane vector is along x, 
  and the other basal-plane vector is at angle beta for monoclinic 
  (beta is not actually used), at 120 degrees for trigonal and hexagonal(p)
  groups, and at 90 degrees for remaining groups, excepted fcc, bcc, 
  tetragonal(i), for which the crystallographic vectors are as follows:

  fcc bravais lattice.
  ====================

  a1=(a/2)(-1,0,1), a2=(a/2)(0,1,1), a3=(a/2)(-1,1,0).

  bcc bravais lattice.
  ====================

  a1=(a/2)(1,1,1), a2=(a/2)(-1,1,1), a3=(a/2)(-1,-1,1).

  tetragonal (i) bravais lattices.
  ================================
  a1=(a/2,a/2,c/2), a2=(a/2,-a/2,c/2), a3=(-a/2,-a/2,c/2).

  trigonal(r) groups.
  ===================

  for these groups, the z-axis is chosen as the 3-fold axis, but the
  crystallographic vectors form a three-fold star around the z-axis,
  and the primitive cell is a simple rhombohedron. if c is the cosine
  of the angle between any pair of crystallographic vectors, and if
  tx=sqrt((1-c)/2), ty=sqrt((1-c)/6), tz=sqrt((1+2c)/3), the crystal-
  lographic vectors are:

        a1=a(0,2ty,tz),  a2=a(tx,-ty,tz),  a3=a(-tx,-ty,tz).

  bco base centered orthorhombic
  =============================
  a1=(a/2,b/2,0), a2=(-a/2,b/2,0), a3=(0,0,c)
----------------------------------------------------------------------
