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)
----------------------------------------------------------------------