diff --git a/.gitignore b/.gitignore index 62f249a289504ccc1eb6934cba9eb39cca752c3e..9b35db712eceaafd1820a507e7df7562839308ba 100644 --- a/.gitignore +++ b/.gitignore @@ -9,7 +9,6 @@ *.swp *.UPF *.log -*.pdf *.dvi *.toc *.aux diff --git a/CPV/Doc/INPUT_CP.html b/CPV/Doc/INPUT_CP.html new file mode 100644 index 0000000000000000000000000000000000000000..1d30174ecae6d2468304cb9e6cc957fcc3cab0e2 --- /dev/null +++ b/CPV/Doc/INPUT_CP.html @@ -0,0 +1,3936 @@ + + + + + +cp.x: input description + + + + + +
+

Input File Description

+

Program: + cp.x / CP / Quantum Espresso (version: svn) +

+
+
+

TABLE OF CONTENTS

+
+ + +

INTRODUCTION

+

&CONTROL

+
+calculation | title | verbosity | isave | restart_mode | nstep | iprint | tstress | tprnfor | dt | outdir | saverho | prefix | ndr | ndw | tabps | max_seconds | etot_conv_thr | forc_conv_thr | ekin_conv_thr | disk_io | memory | pseudo_dir | tefield +
+

&SYSTEM

+
+ibrav | celldm | A | B | C | cosAB | cosAC | cosBC | nat | ntyp | nbnd | tot_charge | tot_magnetization | ecutwfc | ecutrho | nr1 | nr2 | nr3 | nr1s | nr2s | nr3s | nr1b | nr2b | nr3b | occupations | degauss | smearing | nspin | ecfixed | qcutz | q2sigma | input_dft | exx_fraction | lda_plus_u | Hubbard_U | vdw_corr | london_s6 | london_rcut | ts_vdw | ts_vdw_econv_thr | ts_vdw_isolated | assume_isolated +
+

&ELECTRONS

+
+electron_maxstep | electron_dynamics | conv_thr | niter_cg_restart | efield | epol | emass | emass_cutoff | orthogonalization | ortho_eps | ortho_max | ortho_para | electron_damping | electron_velocities | electron_temperature | ekincw | fnosee | startingwfc | tcg | maxiter | passop | n_inner | ninter_cold_restart | lambda_cold | grease | ampre +
+

&IONS

+
+ion_dynamics | ion_positions | ion_velocities | ion_damping | ion_radius | iesr | ion_nstepe | remove_rigid_rot | ion_temperature | tempw | fnosep | tolp | nhpcl | nhptyp | nhgrp | fnhscl | ndega | tranp | amprp | greasp +
+

&CELL

+
+cell_parameters | cell_dynamics | cell_velocities | cell_damping | press | wmass | cell_factor | cell_temperature | temph | fnoseh | greash | cell_dofree +
+

&PRESS_AI

+
+abivol | abisur | P_ext | pvar | P_in | P_fin | Surf_t | rho_thr | dthr +
+

&WANNIER

+
+wf_efield | wf_switch | sw_len | efx0 | efy0 | efz0 | efx1 | efy1 | efz1 | wfsd | wfdt | maxwfdt | nit | nsd | wf_q | wf_friction | nsteps | tolw | adapt | calwf | nwf | wffort | writev | exx_neigh | exx_dis_cutoff | exx_poisson_eps | exx_ps_rcut_self | exx_ps_rcut_pair | exx_me_rcut_self | exx_me_rcut_pair +
+

ATOMIC_SPECIES

+
+X | Mass_X | PseudoPot_X +
+

ATOMIC_POSITIONS

+
+X | x | y | z | if_pos(1) | if_pos(2) | if_pos(3) +
+

ATOMIC_VELOCITIES

+
+V | vx | vy | vz +
+

CELL_PARAMETERS

+
+v1 | v2 | v3 +
+

REF_CELL_PARAMETERS

+
+v1 | v2 | v3 +
+

CONSTRAINTS

+
+nconstr | constr_tol | constr_type | constr(1) | constr(2) | constr(3) | constr(4) | constr_target +
+

OCCUPATIONS

+
+f_inp1 | f_inp2 +
+

ATOMIC_FORCES

+
+X | fx | fy | fz +
+

PLOT_WANNIER

+
iwf
+

AUTOPILOT

+
pilot_rule
+
+
+
+

INTRODUCTION

+
+Input data format: { } = optional, [ ] = it depends, | = or
+
+All quantities whose dimensions are not explicitly specified are in
+HARTREE ATOMIC UNITS. Charge is "number" charge (i.e. not multiplied
+by e); potentials are in energy units (i.e. they are multiplied by e)
+
+BEWARE: TABS, DOS <CR><LF> CHARACTERS ARE POTENTIAL SOURCES OF TROUBLE
+Comment lines in namelists can be introduced by a "!", exactly as in
+fortran code. Comments lines in ``cards'' can be introduced by
+either a "!" or a "#" character in the first position of a line.
+Do not start any line in ``cards'' with a "/" character.
+
+Structure of the input data:
+===============================================================================
+
+&CONTROL
+  ...
+/
+
+&SYSTEM
+ ...
+/
+
+&ELECTRONS
+...
+/
+
+[ &IONS
+  ...
+ / ]
+
+[ &CELL
+  ...
+ / ]
+
+[ &WANNIER
+  ...
+ / ]
+
+ATOMIC_SPECIES
+ X  Mass_X  PseudoPot_X
+ Y  Mass_Y  PseudoPot_Y
+ Z  Mass_Z  PseudoPot_Z
+
+ATOMIC_POSITIONS { alat | bohr | crystal | angstrom }
+  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
+
+[ CELL_PARAMETERS { alat | bohr | angstrom }
+   v1(1) v1(2) v1(3)
+   v2(1) v2(2) v2(3)
+   v3(1) v3(2) v3(3) ]
+
+[ OCCUPATIONS
+   f_inp1(1)  f_inp1(2)  f_inp1(3) ... f_inp1(10)
+   f_inp1(11) f_inp1(12) ... f_inp1(nbnd)
+ [ f_inp2(1)  f_inp2(2)  f_inp2(3) ... f_inp2(10)
+   f_inp2(11) f_inp2(12) ... f_inp2(nbnd) ] ]
+
+[ CONSTRAINTS
+   nconstr  { constr_tol }
+   constr_type(.)   constr(1,.)   constr(2,.) [ constr(3,.)   constr(4,.) ] { constr_target(.) } ]
+
+[ ATOMIC_FORCES
+   label_1 Fx(1) Fy(1) Fz(1)
+   .....
+   label_n Fx(n) Fy(n) Fz(n) ]
+   
+
+ + + +

Namelist: &CONTROL +

+ + + + + + + + + + +
calculationCHARACTER
Default: 'cp' +
+a string describing the task to be performed:
+   'cp',
+   'scf',
+   'nscf',
+   'relax',
+   'vc-relax',
+   'vc-cp',
+   'cp-wf',
+   'vc-cp-wf'
+
+   (vc = variable-cell).
+   (wf = Wannier functions).
+         
+ + + + + + + + + + + +
titleCHARACTER
Default: 'MD Simulation ' +
+reprinted on output.
+         
+ + + + + + + + + + + +
verbosityCHARACTER
Default: 'low' +
+In order of decreasing verbose output:
+ 'debug' | 'high' | 'medium' | 'low','default' | 'minimal'
+         
+ + + + + + + + + + + + + + + + + + + +
isaveINTEGER
Default: 100 +
See:ndr
See:ndw
+Number of steps between successive savings of
+information needed to restart the run.
+         
+ + + + + + + + + + + +
restart_modeCHARACTER
Default: 'restart' +
+'from_scratch'   : from scratch
+'restart'        : from previous interrupted run
+'reset_counters' : continue a previous simulation,
+                   performs  "nstep" new steps, resetting
+                   the counter and averages
+         
+ + + + + + + + + + + +
nstepINTEGER
Default: +50 +
+number of Car-Parrinello steps performed in this run
+         
+ + + + + + + + + + + +
iprintINTEGER
Default: 10 +
+Number of steps between successive writings of relevant physical quantities
+to files named as "prefix.???" depending on "prefix" parameter.
+In the standard output relevant quantities are written every 10*iprint steps.
+         
+ + + + + + + + + + + +
tstressLOGICAL
Default: .false. +
+Write stress tensor to standard output each "iprint" steps.
+It is set to .TRUE. automatically if
+calculation='vc-relax'
+         
+ + + + + + + + + + + +
tprnforLOGICAL
Default: .false. +
+print forces. Set to .TRUE. when ions are moving.
+         
+ + + + + + + + + + + +
dtREAL
Default: 1.D0 +
+time step for molecular dynamics, in Hartree atomic units
+(1 a.u.=2.4189 * 10^-17 s : beware, PW code use
+ Rydberg atomic units, twice that much!!!)
+         
+ + + + + + + + + + + +
outdirCHARACTER
Default: +value of the ESPRESSO_TMPDIR environment variable if set; +current directory ('./') otherwise +
+input, temporary, trajectories and output files are found
+in this directory.
+         
+ + + + + + + +
saverhoLOGICAL
+This flag controls the saving of charge density in CP codes:
+If  .TRUE.        save charge density to restart dir,
+If .FALSE. do not save charge density.
+         
+ + + + + + + + + + + +
prefixCHARACTER
Default: 'cp' +
+prepended to input/output filenames:
+  prefix.pos : atomic positions
+  prefix.vel : atomic velocities
+  prefix.for : atomic forces
+  prefix.cel : cell parameters
+  prefix.str : stress tensors
+  prefix.evp : energies
+  prefix.hrs : Hirshfeld effective volumes (ts-vdw)
+  prefix.eig : eigen values
+  prefix.nos : Nose-Hoover variables
+  prefix.spr : spread of Wannier orbitals
+  prefix.wfc : center of Wannier orbitals
+  prefix.ncg : number of Poisson CG steps (PBE0)
+         
+ + + + + + + + + + + +
ndrINTEGER
Default: 50 +
+Units for input and output restart file.
+         
+ + + + + + + + + + + +
ndwINTEGER
Default: 50 +
+Units for input and output restart file.
+         
+ + + + + + + + + + + +
tabpsLOGICAL
Default: .false. +
+.true. to compute the volume and/or the surface of an isolated
+system for finite pressure/finite surface tension calculations
+(PRL 94, 145501 (2005); JCP 124, 074103 (2006)).
+         
+ + + + + + + + + + + +
max_secondsREAL
Default: 1.D+7, or 150 days, i.e. no time limit +
+jobs stops after max_seconds CPU time. Used to prevent
+a hard kill from the queuing system.
+         
+ + + + + + + + + + + +
etot_conv_thrREAL
Default: 1.0D-4 +
+convergence threshold on total energy (a.u) for ionic
+minimization: the convergence criterion is satisfied
+when the total energy changes less than etot_conv_thr
+between two consecutive scf steps.
+See also forc_conv_thr - both criteria must be satisfied
+         
+ + + + + + + + + + + +
forc_conv_thrREAL
Default: 1.0D-3 +
+convergence threshold on forces (a.u) for ionic
+minimization: the convergence criterion is satisfied
+when all components of all forces are smaller than
+forc_conv_thr.
+See also etot_conv_thr - both criteria must be satisfied
+         
+ + + + + + + + + + + +
ekin_conv_thrREAL
Default: 1.0D-6 +
+convergence criterion for electron minimization:
+convergence is achieved when "ekin < ekin_conv_thr".
+See also etot_conv_thr - both criteria must be satisfied.
+         
+ + + + + + + + + + + +
disk_ioCHARACTER
Default: 'default' +
+'high': CP code will write Kohn-Sham wfc files and additional
+        information in data-file.xml in order to restart
+        with a PW calculation or to use postprocessing tools.
+        If disk_io is not set to 'high', the data file
+        written by CP will not be readable by PW or PostProc.
+         
+ + + + + + + + + + + +
memoryCHARACTER
Default: 'default' +
+'small': memory-saving tricks are implemented. Currently:
+         - the G-vectors are sorted only locally, not globally
+         - they are not collected and written to file
+         For large systems, the memory and time gain is sizable
+         but the resulting data files are not portable - use it
+         only if you do not need to re-read the data file
+         
+ + + + + + + + + + + +
pseudo_dirCHARACTER
Default: +value of the $ESPRESSO_PSEUDO environment variable if set; +'$HOME/espresso/pseudo/' otherwise +
+directory containing pseudopotential files
+         
+ + + + + + + + + + + +
tefieldLOGICAL
Default: .FALSE. +
+If .TRUE. a homogeneous finite electric field described
+through the modern theory of the polarization is applied.
+         
+ +
+ + + +

Namelist: &SYSTEM +

+ + + + + + + + + + +
ibravINTEGER
Status: REQUIRED +
+  Bravais-lattice index. If ibrav /= 0, specify EITHER
+  [ celldm(1)-celldm(6) ] OR [ A,B,C,cosAB,cosAC,cosBC ]
+  but NOT both. The lattice parameter "alat" is set to
+  alat = celldm(1) (in a.u.) or alat = A (in Angstrom);
+  see below for the other parameters.
+  For ibrav=0 specify the lattice vectors in CELL_PARAMETER,
+  optionally the lattice parameter alat = celldm(1) (in a.u.)
+  or = A (in Angstrom), or else it is taken from CELL_PARAMETERS
+
+ibrav      structure                   celldm(2)-celldm(6)
+                                     or: b,c,cosbc,cosac,cosab
+  0          free
+      crystal axis provided in input: see card CELL_PARAMETERS
+
+  1          cubic P (sc)
+      v1 = a(1,0,0),  v2 = a(0,1,0),  v3 = a(0,0,1)
+
+  2          cubic F (fcc)
+      v1 = (a/2)(-1,0,1),  v2 = (a/2)(0,1,1), v3 = (a/2)(-1,1,0)
+
+  3          cubic I (bcc)
+      v1 = (a/2)(1,1,1),  v2 = (a/2)(-1,1,1),  v3 = (a/2)(-1,-1,1)
+ -3          cubic I (bcc), more symmetric axis:
+      v1 = (a/2)(-1,1,1), v2 = (a/2)(1,-1,1),  v3 = (a/2)(1,1,-1)
+
+  4          Hexagonal and Trigonal P        celldm(3)=c/a
+      v1 = a(1,0,0),  v2 = a(-1/2,sqrt(3)/2,0),  v3 = a(0,0,c/a)
+
+  5          Trigonal R, 3fold axis c        celldm(4)=cos(gamma)
+      The crystallographic vectors form a three-fold star around
+      the z-axis, the primitive cell is a simple rhombohedron:
+      v1 = a(tx,-ty,tz),   v2 = a(0,2ty,tz),   v3 = a(-tx,-ty,tz)
+      where c=cos(gamma) is the cosine of the angle gamma between
+      any pair of crystallographic vectors, tx, ty, tz are:
+        tx=sqrt((1-c)/2), ty=sqrt((1-c)/6), tz=sqrt((1+2c)/3)
+ -5          Trigonal R, 3fold axis <111>    celldm(4)=cos(gamma)
+      The crystallographic vectors form a three-fold star around
+      <111>. Defining a' = a/sqrt(3) :
+      v1 = a' (u,v,v),   v2 = a' (v,u,v),   v3 = a' (v,v,u)
+      where u and v are defined as
+        u = tz - 2*sqrt(2)*ty,  v = tz + sqrt(2)*ty
+      and tx, ty, tz as for case ibrav=5
+      Note: if you prefer x,y,z as axis in the cubic limit,
+            set  u = tz + 2*sqrt(2)*ty,  v = tz - sqrt(2)*ty
+            See also the note in Modules/latgen.f90
+
+  6          Tetragonal P (st)               celldm(3)=c/a
+      v1 = a(1,0,0),  v2 = a(0,1,0),  v3 = a(0,0,c/a)
+
+  7          Tetragonal I (bct)              celldm(3)=c/a
+      v1=(a/2)(1,-1,c/a),  v2=(a/2)(1,1,c/a),  v3=(a/2)(-1,-1,c/a)
+
+  8          Orthorhombic P                  celldm(2)=b/a
+                                             celldm(3)=c/a
+      v1 = (a,0,0),  v2 = (0,b,0), v3 = (0,0,c)
+
+  9          Orthorhombic base-centered(bco) celldm(2)=b/a
+                                             celldm(3)=c/a
+      v1 = (a/2, b/2,0),  v2 = (-a/2,b/2,0),  v3 = (0,0,c)
+ -9          as 9, alternate description
+      v1 = (a/2,-b/2,0),  v2 = (a/2, b/2,0),  v3 = (0,0,c)
+
+ 10          Orthorhombic face-centered      celldm(2)=b/a
+                                             celldm(3)=c/a
+      v1 = (a/2,0,c/2),  v2 = (a/2,b/2,0),  v3 = (0,b/2,c/2)
+
+ 11          Orthorhombic body-centered      celldm(2)=b/a
+                                             celldm(3)=c/a
+      v1=(a/2,b/2,c/2),  v2=(-a/2,b/2,c/2),  v3=(-a/2,-b/2,c/2)
+
+ 12          Monoclinic P, unique axis c     celldm(2)=b/a
+                                             celldm(3)=c/a,
+                                             celldm(4)=cos(ab)
+      v1=(a,0,0), v2=(b*cos(gamma),b*sin(gamma),0),  v3 = (0,0,c)
+      where gamma is the angle between axis a and b.
+-12          Monoclinic P, unique axis b     celldm(2)=b/a
+                                             celldm(3)=c/a,
+                                             celldm(5)=cos(ac)
+      v1 = (a,0,0), v2 = (0,b,0), v3 = (c*cos(beta),0,c*sin(beta))
+      where beta is the angle between axis a and c
+
+ 13          Monoclinic base-centered        celldm(2)=b/a
+                                             celldm(3)=c/a,
+                                             celldm(4)=cos(gamma)
+      v1 = (  a/2,         0,                -c/2),
+      v2 = (b*cos(gamma), b*sin(gamma),       0  ),
+      v3 = (  a/2,         0,                 c/2),
+      where gamma=angle between axis a and b projected on xy plane
+
+-13          Monoclinic base-centered        celldm(2)=b/a
+             (unique axis b)                 celldm(3)=c/a,
+                                             celldm(5)=cos(beta)
+      v1 = (  a/2,      -b/2,             0),
+      v2 = (  a/2,       b/2,             0),
+      v3 = (c*cos(beta),   0,   c*sin(beta)),
+      where beta=angle between axis a and c projected on xz plane
+
+ 14          Triclinic                       celldm(2)= b/a,
+                                             celldm(3)= c/a,
+                                             celldm(4)= cos(bc),
+                                             celldm(5)= cos(ac),
+                                             celldm(6)= cos(ab)
+      v1 = (a, 0, 0),
+      v2 = (b*cos(gamma), b*sin(gamma), 0)
+      v3 = (c*cos(beta),  c*(cos(alpha)-cos(beta)cos(gamma))/sin(gamma),
+           c*sqrt( 1 + 2*cos(alpha)cos(beta)cos(gamma)
+                     - cos(alpha)^2-cos(beta)^2-cos(gamma)^2 )/sin(gamma) )
+  where alpha is the angle between axis b and c
+         beta is the angle between axis a and c
+        gamma is the angle between axis a and b
+         
+ +
+

Either: +

+ + + + + + + + + + +
celldm(i), i=1,6REAL
See:ibrav
+Crystallographic constants - see the "ibrav" variable.
+Specify either these OR A,B,C,cosAB,cosBC,cosAC NOT both.
+Only needed values (depending on "ibrav") must be specified
+alat = celldm(1) is the lattice parameter "a" (in BOHR)
+If ibrav=0, only celldm(1) is used if present;
+cell vectors are read from card CELL_PARAMETERS
+            
+ +

Or: +

+ + + + + + +
+A, B, C, cosAB, cosAC, cosBCREAL
+Traditional crystallographic constants: a,b,c in ANGSTROM
+  cosAB = cosine of the angle between axis a and b (gamma)
+  cosAC = cosine of the angle between axis a and c (beta)
+  cosBC = cosine of the angle between axis b and c (alpha)
+The axis are chosen according to the value of "ibrav".
+Specify either these OR "celldm" but NOT both.
+Only needed values (depending on "ibrav") must be specified
+The lattice parameter alat = A (in ANGSTROM )
+If ibrav = 0, only A is used if present;
+cell vectors are read from card CELL_PARAMETERS
+            
+ +
+ + + + + + + + + + +
natINTEGER
Status: REQUIRED +
+number of atoms in the unit cell
+         
+ + + + + + + + + + + +
ntypINTEGER
Status: REQUIRED +
+number of types of atoms in the unit cell
+         
+ + + + + + + + + + + +
nbndINTEGER
Default: +for an insulator, nbnd = number of valence bands +(nbnd = # of electrons /2); +for a metal, 20% more (minimum 4 more) +
+number of electronic states (bands) to be calculated.
+Note that in spin-polarized calculations the number of
+k-point, not the number of bands per k-point, is doubled
+         
+ + + + + + + + + + + +
tot_chargeREAL
Default: 0.0 +
+total charge of the system. Useful for simulations with charged cells.
+By default the unit cell is assumed to be neutral (tot_charge=0).
+tot_charge=+1 means one electron missing from the system,
+tot_charge=-1 means one additional electron, and so on.
+
+In a periodic calculation a compensating jellium background is
+inserted to remove divergences if the cell is not neutral.
+         
+ + + + + + + + + + + +
tot_magnetizationREAL
Default: -1 [unspecified] +
+total majority spin charge - minority spin charge.
+Used to impose a specific total electronic magnetization.
+If unspecified, the tot_magnetization variable is ignored
+and the electronic magnetization is determined by the
+occupation numbers (see card OCCUPATIONS) read from input.
+         
+ + + + + + + + + + + +
ecutwfcREAL
Status: REQUIRED +
+kinetic energy cutoff (Ry) for wavefunctions
+         
+ + + + + + + + + + + +
ecutrhoREAL
Default: 4 * ecutwfc +
+kinetic energy cutoff (Ry) for charge density and potential
+For norm-conserving pseudopotential you should stick to the
+default value, you can reduce it by a little but it will
+introduce noise especially on forces and stress.
+If there are ultrasoft PP, a larger value than the default is
+often desirable (ecutrho = 8 to 12 times ecutwfc, typically).
+PAW datasets can often be used at 4*ecutwfc, but it depends
+on the shape of augmentation charge: testing is mandatory.
+The use of gradient-corrected functional, especially in cells
+with vacuum, or for pseudopotential without non-linear core
+correction, usually requires an higher values of ecutrho
+to be accurately converged.
+         
+ + + + + + + + + + + +
+nr1, nr2, nr3INTEGER
See:ecutrho
+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.
+         
+ + + + + + + +
+nr1s, nr2s, nr3sINTEGER
+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 )
+         
+ + + + + + + +
+nr1b, nr2b, nr3bINTEGER
+dimensions of the "box" grid for Ultrasoft pseudopotentials
+must be specified if Ultrasoft PP are present
+         
+ + + + + + + +
occupationsCHARACTER
+a string describing the occupation of the electronic states.
+In the case of conjugate gradient style of minimization
+of the electronic states, if occupations is set to 'ensemble',
+this allows ensemble DFT calculations for metallic systems
+         
+ + + + + + + + + + + +
degaussREAL
Default: 0.D0 Ry +
+parameter for the smearing function, only used for ensemble DFT
+calculations
+         
+ + + + + + + +
smearingCHARACTER
+a string describing the kind of occupations for electronic states
+in the case of ensemble DFT (occupations == 'ensemble' );
+now only Fermi-Dirac ('fd') case is implemented
+         
+ + + + + + + + + + + +
nspinINTEGER
Default: 1 +
+nspin = 1 :  non-polarized calculation (default)
+
+nspin = 2 :  spin-polarized calculation, LSDA
+             (magnetization along z axis)
+         
+ + + + + + + + + + + + + + +
ecfixedREAL
Default: 0.0 +
See:q2sigma
+ + + + + + + + + + + + + + +
qcutzREAL
Default: 0.0 +
See:q2sigma
+ + + + + + + + + + + +
q2sigmaREAL
Default: 0.1 +
+ecfixed, qcutz, q2sigma:  parameters for modified functional to be
+used in variable-cell molecular dynamics (or in stress calculation).
+"ecfixed" is the value (in Rydberg) of the constant-cutoff;
+"qcutz" and "q2sigma" are the height and the width (in Rydberg)
+of the energy step for reciprocal vectors whose square modulus
+is greater than "ecfixed". In the kinetic energy, G^2 is
+replaced by G^2 + qcutz * (1 + erf ( (G^2 - ecfixed)/q2sigma) )
+See: M. Bernasconi et al, J. Phys. Chem. Solids 56, 501 (1995)
+         
+ + + + + + + + + + + +
input_dftCHARACTER
Default: read from pseudopotential files +
+Exchange-correlation functional: eg 'PBE', 'BLYP' etc
+See Modules/funct.f90 for allowed values.
+Overrides the value read from pseudopotential files.
+Use with care and if you know what you are doing!
+
+Use 'PBE0' to perform hybrid functional calculation using Wannier functions.
+Allowed calculation: 'cp-wf' and 'vc-cp-wf'
+See CP specific user manual for further guidance (or in CPV/Doc/user_guide.tex)
+and examples in CPV/examples/EXX-wf-example.
+Also see related keywords starting with exx_.
+         
+ + + + + + + + + + + +
exx_fractionREAL
Default: it depends on the specified functional +
+Fraction of EXX for hybrid functional calculations. In the case of
+input_dft='PBE0', the default value is 0.25.
+         
+ + + + + + + + + + + +
lda_plus_uLOGICAL
Default: .FALSE. +
+lda_plus_u = .TRUE. enables calculation with LDA+U
+                  ("rotationally invariant"). See also Hubbard_U.
+                  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, PRB 71, 035105 (2005).
+         
+ + + + + + + + + + + + + + + +
Hubbard_U(i), i=1,ntypREAL
Default: 0.D0 for all species +
Status: +LDA+U works only for a few selected elements. Modify +CPV/ldaU.f90 if you plan to use LDA+U with an +element that is not configured there. +
+Hubbard_U(i): parameter U (in eV) for LDA+U calculations.
+Currently only the simpler, one-parameter LDA+U is
+implemented (no "alpha" or "J" terms)
+         
+ + + + + + + + + + + +
vdw_corrCHARACTER
Default: 'none' +
+Type of Van der Waals correction. Allowed values:
+
+   'grimme-d2', 'Grimme-D2', 'DFT-D', 'dft-d': semiempirical Grimme's DFT-D2.
+    Optional variables: "london_s6", "london_rcut"
+    S. Grimme, J. Comp. Chem. 27, 1787 (2006),
+    V. Barone et al., J. Comp. Chem. 30, 934 (2009).
+
+    'TS', 'ts', 'ts-vdw', 'ts-vdW', 'tkatchenko-scheffler': Tkatchenko-Scheffler
+     dispersion corrections with first-principle derived C6 coefficients
+     Optional variables: "ts_vdw_econv_thr", "ts_vdw_isolated"
+     See A. Tkatchenko and M. Scheffler, Phys. Rev. Lett. 102, 073005 (2009)
+
+    'XDM', 'xdm': Exchange-hole dipole-moment model. Optional variables: "xdm_a1", "xdm_a2"
+     (implemented in PW only)
+     A. D. Becke and E. R. Johnson, J. Chem. Phys. 127, 154108 (2007)
+      A. Otero de la Roza, E. R. Johnson, J. Chem. Phys. 136, 174109 (2012)
+
+Note that non-local functionals (eg vdw-DF) are NOT specified here but in "input_dft"
+         
+ + + + + + + + + + + +
london_s6REAL
Default: 0.75 +
+global scaling parameter for DFT-D. Default is good for PBE.
+         
+ + + + + + + + + + + +
london_rcutREAL
Default: 200 +
+cutoff radius (a.u.) for dispersion interactions
+         
+ + + + + + + + + + + +
ts_vdwLOGICAL
Default: .FALSE. +
+OBSOLESCENT, same as vdw_corr='TS'
+         
+ + + + + + + + + + + +
ts_vdw_econv_thrREAL
Default: 1.D-6 +
+Optional: controls the convergence of the vdW energy (and forces). The default value
+is a safe choice, likely too safe, but you do not gain much in increasing it
+         
+ + + + + + + + + + + +
ts_vdw_isolatedLOGICAL
Default: .FALSE. +
+Optional: set it to .TRUE. when computing the Tkatchenko-Scheffler vdW energy
+for an isolated (non-periodic) system.
+         
+ + + + + + + + + + + +
assume_isolatedCHARACTER
Default: 'none' +
+Used to perform calculation assuming the system to be
+isolated (a molecule of a clustr in a 3D supercell).
+
+Currently available choices:
+
+'none' (default): regular periodic calculation w/o any correction.
+
+'makov-payne', 'm-p', 'mp' : the Makov-Payne correction to the
+         total energy is computed.
+         Theory:
+         G.Makov, and M.C.Payne,
+         "Periodic boundary conditions in ab initio
+         calculations" , Phys.Rev.B 51, 4014 (1995)
+         
+ +
+ + + +

Namelist: &ELECTRONS +

+ + + + + + + + + + +
electron_maxstepINTEGER
Default: 100 +
+maximum number of iterations in a scf step
+         
+ + + + + + + + + + + +
electron_dynamicsCHARACTER
Default: 'none' +
+set how electrons should be moved
+'none'    : electronic degrees of freedom (d.o.f.) are kept fixed
+'sd'      : steepest descent algorithm is used to minimize
+          electronic d.o.f.
+'damp'    : damped dynamics is used to propagate electronic d.o.f.
+'verlet'  : standard Verlet algorithm is used to propagate
+          electronic d.o.f.
+'cg'      : conjugate gradient is used to converge the
+          wavefunction at each ionic step. 'cg' can be used
+          interchangeably with 'verlet' for a couple of ionic
+          steps in order to "cool down" the electrons and
+          return them back to the Born-Oppenheimer surface.
+          Then 'verlet' can be restarted again. This procedure
+          is useful when electronic adiabaticity in CP is lost
+          yet the ionic velocities need to be preserved.
+         
+ + + + + + + + + + + +
conv_thrREAL
Default: 1.D-6 +
+Convergence threshold for selfconsistency:
+estimated energy error < conv_thr
+         
+ + + + + + + + + + + +
niter_cg_restartINTEGER
Default: 20 +
+frequency in iterations for which the conjugate-gradient algorithm
+for electronic relaxation is restarted
+         
+ + + + + + + + + + + +
efieldREAL
Default: 0.D0 +
+Amplitude of the finite electric field (in a.u.;
+1 a.u. = 51.4220632*10^10 V/m). Used only if tefield=.TRUE.
+         
+ + + + + + + + + + + +
epolINTEGER
Default: 3 +
+direction of the finite electric field (only if tefield == .TRUE.)
+In the case of a PARALLEL calculation only the case epol==3
+is implemented
+         
+ + + + + + + + + + + +
emassREAL
Default: 400.D0 +
+effective electron mass in the CP Lagrangian, in atomic units
+( 1 a.u. of mass = 1/1822.9 a.m.u. = 9.10939 * 10^-31 kg )
+         
+ + + + + + + + + + + +
emass_cutoffREAL
Default: 2.5D0 +
+mass cut-off (in Rydberg) for the Fourier acceleration
+effective mass is rescaled for "G" vector components with
+kinetic energy above "emass_cutoff"
+         
+ + + + + + + + + + + +
orthogonalizationCHARACTER
Default: 'ortho' +
+selects the orthonormalization method for electronic wave
+functions
+'ortho'        : use iterative algorithm - if it doesn't converge,
+                 reduce the timestep, or use options ortho_max
+                 and ortho_eps, or use Gram-Schmidt instead just
+                 to start the simulation
+'Gram-Schmidt' : use Gram-Schmidt algorithm - to be used ONLY in
+                 the first few steps.
+                 YIELDS INCORRECT ENERGIES AND EIGENVALUES.
+         
+ + + + + + + + + + + +
ortho_epsREAL
Default: 1.D-8 +
+tolerance for iterative orthonormalization
+meaningful only if orthogonalization = 'ortho'
+         
+ + + + + + + + + + + +
ortho_maxINTEGER
Default: 20 +
+maximum number of iterations for orthonormalization
+meaningful only if orthogonalization = 'ortho'
+         
+ + + + + + + + + + + + + + + +
ortho_paraINTEGER
Default: 0 +
Status: OBSOLETE: use command-line option " -nd XX" instead +
+
+         
+ + + + + + + + + + + +
electron_dampingREAL
Default: 0.1D0 +
+damping frequency times delta t, optimal values could be
+calculated with the formula :
+         SQRT( 0.5 * LOG( ( E1 - E2 ) / ( E2 - E3 ) ) )
+where E1, E2, E3 are successive values of the DFT total energy
+in a steepest descent simulations.
+meaningful only if " electron_dynamics = 'damp' "
+         
+ + + + + + + +
electron_velocitiesCHARACTER
+'zero'      : restart setting electronic velocities to zero
+'default'   : restart using electronic velocities of the
+            previous run
+         
+ + + + + + + + + + + +
electron_temperatureCHARACTER
Default: 'not_controlled' +
+'nose'            : control electronic temperature using Nose
+                  thermostat. See also "fnosee" and "ekincw".
+'rescaling'       : control electronic temperature via velocities
+                  rescaling.
+'not_controlled'  : electronic temperature is not controlled.
+         
+ + + + + + + + + + + +
ekincwREAL
Default: 0.001D0 +
+value of the average kinetic energy (in atomic units) forced
+by the temperature control
+meaningful only with " electron_temperature /= 'not_controlled' "
+         
+ + + + + + + + + + + +
fnoseeREAL
Default: 1.D0 +
+oscillation frequency of the nose thermostat (in terahertz)
+meaningful only with " electron_temperature = 'nose' "
+         
+ + + + + + + + + + + +
startingwfcCHARACTER
Default: 'random' +
+'atomic': start from superposition of atomic orbitals
+          (not yet implemented)
+
+
+'random': start from random wfcs. See "ampre".
+         
+ + + + + + + + + + + +
tcgLOGICAL
Default: .FALSE. +
+if .TRUE. perform a conjugate gradient minimization of the
+electronic states for every ionic step.
+It requires Gram-Schmidt orthogonalization of the electronic
+states.
+         
+ + + + + + + + + + + +
maxiterINTEGER
Default: 100 +
+maximum number of conjugate gradient iterations for
+conjugate gradient minimizations of electronic states
+         
+ + + + + + + + + + + +
passopREAL
Default: 0.3D0 +
+small step used in the  conjugate gradient minimization
+of the electronic states.
+         
+ + + + + + + + + + + +
n_innerINTEGER
Default: 2 +
+number of internal cycles for every conjugate gradient
+iteration only for ensemble DFT
+         
+ + + + + + + + + + + +
ninter_cold_restartINTEGER
Default: 1 +
+frequency in iterations at which a full inner cycle, only
+for cold smearing, is performed
+         
+ + + + + + + + + + + +
lambda_coldREAL
Default: 0.03D0 +
+step for inner cycle with cold smearing, used when a not full
+cycle is performed
+         
+ + + + + + + + + + + +
greaseREAL
Default: 1.D0 +
+a number <= 1, very close to 1: the damping in electronic
+damped dynamics is multiplied at each time step by "grease"
+(avoids overdamping close to convergence: Obsolete ?)
+grease = 1 : normal damped dynamics
+         
+ + + + + + + + + + + +
ampreREAL
Default: 0.D0 +
+amplitude of the randomization ( allowed values: 0.0 - 1.0 )
+meaningful only if " startingwfc = 'random' "
+         
+ +
+ + + +

Namelist: &IONS +

+

+input this namelist only if calculation = 'cp', 'relax', 'vc-relax', 'vc-cp', 'cp-wf', 'vc-cp-wf' +

+ + + + + + +
ion_dynamicsCHARACTER
+ Specify the type of ionic dynamics.
+
+ For constrained dynamics or constrained optimisations add the
+ CONSTRAINTS card (when the card is present the SHAKE algorithm is
+                   automatically used).
+'none'    : ions are kept fixed
+'sd'      : steepest descent algorithm is used to minimize ionic
+            configuration
+'cg'      : conjugate gradient algorithm is used to minimize ionic
+            configuration
+'damp'    : damped dynamics is used to propagate ions
+'verlet'  : standard Verlet algorithm is used to propagate ions
+         
+ + + + + + + + + + + +
ion_positionsCHARACTER
Default: 'default' +
+'default '  : if restarting, use atomic positions read from the
+              restart file; in all other cases, use atomic
+              positions from standard input.
+
+'from_input' : restart the simulation with atomic positions read
+              from standard input, even if restarting.
+         
+ + + + + + + + + + + + + + + +
ion_velocitiesCHARACTER
Default: 'default' +
See:tempw
+initial ionic velocities
+'default'     : restart the simulation with atomic velocities read
+                from the restart file
+'change_step' : restart the simulation with atomic velocities read
+                from the restart file, with rescaling due to the
+                timestep change, specify the old step via tolp
+                as in tolp = 'old_time_step_value' in au
+'random'      : start the simulation with random atomic velocities
+'from_input'  : restart the simulation with atomic velocities read
+                from standard input - see card 'ATOMIC_VELOCITIES'
+                BEWARE: works only if restart_mode='from_scratch',
+                tested only with electrons_dynamics='cg'
+'zero'        : restart the simulation with atomic velocities set
+                to zero
+         
+ + + + + + + + + + + +
ion_dampingREAL
Default: 0.2D0 +
+damping frequency times delta t, optimal values could be
+  calculated with the formula :
+  SQRT( 0.5 * LOG( ( E1 - E2 ) / ( E2 - E3 ) ) )
+  where E1, E2, E3 are successive values of the DFT total energy
+  in a steepest descent simulations.
+  meaningful only if " ion_dynamics = 'damp' "
+         
+ + + + + + + + + + + +
ion_radius(i), i=1,ntypREAL
Default: 0.5 a.u. for all species +
+ion_radius(i): pseudo-atomic radius of the i-th atomic species
+used in Ewald summation. Typical values: between 0.5 and 2.
+Results should NOT depend upon such parameters if their values
+are properly chosen. See also "iesr".
+         
+ + + + + + + + + + + +
iesrINTEGER
Default: 1 +
+The real-space contribution to the Ewald summation is performed
+on iesr*iesr*iesr cells. Typically iesr=1 is sufficient to have
+converged results.
+         
+ + + + + + + + + + + +
ion_nstepeINTEGER
Default: 1 +
+number of electronic steps per ionic step.
+         
+ + + + + + + + + + + +
remove_rigid_rotLOGICAL
Default: .FALSE. +
+This keyword is useful when simulating the dynamics and/or the
+thermodynamics of an isolated system. If set to true the total
+torque of the internal forces is set to zero by adding new forces
+that compensate the spurious interaction with the periodic
+images. This allows for the use of smaller supercells.
+
+BEWARE: since the potential energy is no longer consistent with
+the forces (it still contains the spurious interaction with the
+repeated images), the total energy is not conserved anymore.
+However the dynamical and thermodynamical properties should be
+in closer agreement with those of an isolated system.
+Also the final energy of a structural relaxation will be higher,
+but the relaxation itself should be faster.
+         
+ + + + + + + + + + + +
ion_temperatureCHARACTER
Default: 'not_controlled' +
+'nose'           : control ionic temperature using Nose-Hoover
+                   thermostat  see parameters "fnosep", "tempw",
+                   "nhpcl", "ndega", "nhptyp"
+'rescaling'      : control ionic temperature via velocities
+                   rescaling. see parameter "tolp"
+'not_controlled' : ionic temperature is not controlled
+         
+ + + + + + + + + + + +
tempwREAL
Default: 300.D0 +
+value of the ionic temperature (in Kelvin) forced by the
+temperature control.
+meaningful only with " ion_temperature /= 'not_controlled' "
+or when the initial velocities are set to 'random'
+"ndega" controls number of degrees of freedom used in
+temperature calculation
+         
+ + + + + + + + + + + +
fnosepREAL
Default: 1.D0 +
+oscillation frequency of the nose thermostat (in terahertz)
+[note that 3 terahertz = 100 cm^-1]
+meaningful only with " ion_temperature = 'nose' "
+for Nose-Hoover chain one can set frequencies of all thermostats
+( fnosep = X Y Z etc. ) If only first is set, the defaults for
+the others will be same.
+         
+ + + + + + + + + + + +
tolpREAL
Default: 100.D0 +
+tolerance (in Kelvin) of the rescaling. When ionic temperature
+differs from "tempw" more than "tolp" apply rescaling.
+meaningful only with " ion_temperature = 'rescaling' "
+and with ion_velocities='change_step', where it specifies
+the old timestep
+         
+ + + + + + + + + + + +
nhpclINTEGER
Default: 1 +
+number of thermostats in the Nose-Hoover chain
+currently maximum allowed is 4
+         
+ + + + + + + + + + + +
nhptypINTEGER
Default: 0 +
+type of the "massive" Nose-Hoover chain thermostat
+nhptyp=1 uses a NH chain per each atomic type
+nhptyp=2 uses a NH chain per atom, this one is useful
+for extremely rapid equipartitioning (equilibration is a
+different beast)
+nhptyp=3 together with nhgrp allows fine grained thermostat
+control
+NOTE: if using more than 1 thermostat per system there will
+be a common thermostat added on top of them all, to disable
+this common thermostat specify nhptyp=-X instead of nhptyp=X
+         
+ + + + + + + + + + + +
nhgrp(i), i=1,ntypINTEGER
Default: 0 +
+specifies which thermostat group to use for given atomic type
+when >0 assigns all the atoms in this type to thermostat
+labeled nhgrp(i), when =0 each atom in the type gets its own
+thermostat. Finally, when <0, then this atomic type will have
+temperature "not controlled". Example: HCOOLi, with types H (1), C(2), O(3), Li(4);
+setting nhgrp={2 2 0 -1} will add a common thermostat for both H & C,
+one thermostat per each O (2 in total), and a non-updated thermostat
+for Li which will effectively make temperature for Li "not controlled"
+         
+ + + + + + + + + + + +
fnhscl(i), i=1,ntypREAL
Default: (Nat_{total}-1)/Nat_{total} +
+these are the scaling factors to be used together with nhptyp=3 and nhgrp(i)
+in order to take care of possible reduction in the degrees of freedom due to
+constraints. Suppose that with the previous example HCOOLi, C-H bond is
+constrained. Then, these 2 atoms will have 5 degrees of freedom in total instead
+of 6, and one can set fnhscl={5/6 5/6 1. 1.}. This way the target kinetic energy
+for H&C will become 6(kT/2)*5/6 = 5(kT/2). This option is to be used for
+simulations with many constraints, such as rigid water with something else in there
+         
+ + + + + + + + + + + +
ndegaINTEGER
Default: 0 +
+number of degrees of freedom used for temperature calculation
+ndega <= 0 sets the number of degrees of freedom to
+[3*nat-abs(ndega)], ndega > 0 is used as the target number
+         
+ + + + + + + + + + + + + + + +
tranp(i), i=1,ntypLOGICAL
Default: .false. +
See:amprp
+If .TRUE. randomize ionic positions for the
+atomic type corresponding to the index.
+         
+ + + + + + + + + + + + + + + +
amprp(i), i=1,ntypREAL
Default: 0.D0 +
See:amprp
+amplitude of the randomization for the atomic type corresponding
+to the index i ( allowed values: 0.0 - 1.0 ).
+meaningful only if " tranp(i) = .TRUE.".
+         
+ + + + + + + + + + + +
greaspREAL
Default: 1.D0 +
+same as "grease", for ionic damped dynamics.
+         
+ +
+ + + +

Namelist: &CELL +

+

+input this namelist only if calculation = 'vc-relax', 'vc-cp', 'vc-cp-wf' +

+ + + + + + +
cell_parametersCHARACTER
+'default'      : restart the simulation with cell parameters read
+               from the restart file or "celldm" if
+               "restart = 'from_scratch'"
+'from_input'   : restart the simulation with cell parameters
+               from standard input.
+               ( see the card 'CELL_PARAMETERS' )
+         
+ + + + + + + + + + + +
cell_dynamicsCHARACTER
Default: 'none' +
+set how cell should be moved
+'none'      : cell is kept fixed
+'sd'        : steepest descent algorithm is used to optimise the
+              cell
+'damp-pr'   : damped dynamics is used to optimise the cell
+              ( Parrinello-Rahman method ).
+'pr'        : standard Verlet algorithm is used to propagate
+              the cell ( Parrinello-Rahman method ).
+         
+ + + + + + + +
cell_velocitiesCHARACTER
+'zero'      : restart setting cell velocity to zero
+'default'   : restart using cell velocity of the previous run
+         
+ + + + + + + + + + + +
cell_dampingREAL
Default: 0.1D0 +
+damping frequency times delta t, optimal values could be
+calculated with the formula :
+         SQRT( 0.5 * LOG( ( E1 - E2 ) / ( E2 - E3 ) ) )
+where E1, E2, E3 are successive values of the DFT total energy
+in a steepest descent simulations.
+meaningful only if " cell_dynamics = 'damp' "
+         
+ + + + + + + + + + + +
pressREAL
Default: 0.D0 +
+Target pressure [KBar] in a variable-cell md or relaxation run.
+         
+ + + + + + + + + + + +
wmassREAL
Default: +0.75*Tot_Mass/pi**2 for Parrinello-Rahman MD; +0.75*Tot_Mass/pi**2/Omega**(2/3) for Wentzcovitch MD +
+Fictitious cell mass [amu] for variable-cell simulations
+(both 'vc-md' and 'vc-relax')
+         
+ + + + + + + + + + + +
cell_factorREAL
Default: 1.2D0 +
+Used in the construction of the pseudopotential tables.
+It should exceed the maximum linear contraction of the
+cell during a simulation.
+         
+ + + + + + + + + + + +
cell_temperatureCHARACTER
Default: 'not_controlled' +
+'nose'            : control cell temperature using Nose thermostat
+                    see parameters "fnoseh" and "temph".
+'rescaling'       : control cell temperature via velocities
+                    rescaling.
+'not_controlled'  : cell temperature is not controlled.
+         
+ + + + + + + + + + + +
temphREAL
Default: 0.D0 +
+value of the cell temperature (in ???) forced
+by the temperature control.
+meaningful only with " cell_temperature /= 'not_controlled' "
+         
+ + + + + + + + + + + +
fnosehREAL
Default: 1.D0 +
+oscillation frequency of the nose thermostat (in terahertz)
+meaningful only with " cell_temperature = 'nose' "
+         
+ + + + + + + + + + + +
greashREAL
Default: 1.D0 +
+same as "grease", for cell damped dynamics
+         
+ + + + + + + + + + + +
cell_dofreeCHARACTER
Default: 'all' +
+Select which of the cell parameters should be moved:
+
+all     = all axis and angles are moved
+x       = only the x component of axis 1 (v1_x) is moved
+y       = only the y component of axis 2 (v2_y) is moved
+z       = only the z component of axis 3 (v3_z) is moved
+xy      = only v1_x and v2_y are moved
+xz      = only v1_x and v3_z are moved
+yz      = only v2_y and v3_z are moved
+xyz     = only v1_x, v2_y, v3_z are moved
+shape   = all axis and angles, keeping the volume fixed
+2Dxy    = only x and y components are allowed to change
+2Dshape = as above, keeping the area in xy plane fixed
+volume  = isotropic variations of v1_x, v2_y, v3_z, keeping
+          the shape fixed. Should be used only with ibrav=1.
+         
+ +
+ + + +

Namelist: &PRESS_AI +

+

+input this namelist only when tabps = .true. +

+ + + + + + + + + + +
abivolLOGICAL
Default: .false. +
+.true. for finite pressure calculations
+         
+ + + + + + + + + + + +
abisurLOGICAL
Default: .false. +
+.true. for finite surface tension calculations
+         
+ + + + + + + + + + + +
P_extREAL
Default: 0.D0 +
+external pressure in GPa
+         
+ + + + + + + + + + + +
pvarLOGICAL
Default: .false. +
+.true. for variable pressure calculations
+pressure changes linearly with time:
+Delta_P = (P_fin - P_in)/nstep
+         
+ + + + + + + + + + + +
P_inREAL
Default: 0.D0 +
+only if pvar = .true.
+initial value of the external pressure (GPa)
+         
+ + + + + + + + + + + +
P_finREAL
Default: 0.D0 +
+only if pvar = .true.
+final value of the external pressure (GPa)
+         
+ + + + + + + + + + + +
Surf_tREAL
Default: 0.D0 +
+Surface tension (in a.u.; typical values 1.d-4 - 1.d-3)
+         
+ + + + + + + + + + + +
rho_thrREAL
Default: 0.D0 +
+threshold parameter which defines the electronic charge density
+isosurface to compute the 'quantum' volume of the system
+(typical values: 1.d-4 - 1.d-3)
+(corresponds to alpha in PRL 94 145501 (2005))
+         
+ + + + + + + + + + + +
dthrREAL
Default: 0.D0 +
+thikness of the external skin of the electronic charge density
+used to compute the 'quantum' surface
+(typical values: 1.d-4 - 1.d-3; 50% to 100% of rho_thr)
+(corresponds to Delta in PRL 94 145501 (2005))
+         
+ +
+ + + +

Namelist: &WANNIER +

+

+only if calculation = 'cp-wf', 'vc-cp-wf' +

+

+Output files used by Wannier Function options are the following
+
+      fort.21: Used only when calwf=5, contains the full list of g-vecs.
+      fort.22: Used Only when calwf=5, contains the coeffs. corresponding
+               to the g-vectors in fort.21
+      fort.24: Used with calwf=3,contains the average spread
+      fort.25: Used with calwf=3, contains the individual Wannier
+               Function Spread of each state
+      fort.26: Used with calwf=3, contains the wannier centers along a
+               trajectory.
+      fort.27: Used with calwf=3 and 4,  contains some general runtime
+               information from ddyn, the subroutine that actually
+               does the localization of the orbitals.
+      fort.28: Used only if efield=.TRUE. , contains the polarization
+               contribution to the total energy.
+
+Also, The center of mass is fixed during the Molecular Dynamics.
+
+BEWARE : THIS WILL ONLY WORK IF THE NUMBER OF PROCESSORS IS LESS THAN OR
+         EQUAL TO THE NUMBER OF STATES.
+
+Nota Bene 1:   For calwf = 5, wffort is not used. The
+               Wannier/Wave(function) coefficients are written to unit 22
+               and the corresponding g-vectors (basis vectors) are
+               written to unit 21. This option gives the g-vecs and
+               their coeffs. in reciprocal space, and the coeffs. are
+               complex. You will have to convert them to real space
+               if you want to plot them for visualization. calwf=1 gives
+               the orbital densities in real space, and this is usually
+               good enough for visualization.
+      

+ + + + + + + + + + +
wf_efieldLOGICAL
Default: .false. +
+If dynamics will be done in the presence of a field
+         
+ + + + + + + + + + + +
wf_switchLOGICAL
Default: .false. +
+Whether to turn on the field adiabatically (adiabatic switch)
+if true, then nbeg is set to 0.
+         
+ + + + + + + + + + + +
sw_lenINTEGER
Default: 1 +
+No. of iterations over which the field will be turned on
+to its final value. Starting value is 0.0
+If sw_len < 0, then it is set to 1.
+If you want to just optimize structures on the presence of a
+field, then you may set this to 1 and run a regular geometry
+optimization.
+         
+ + + + + + + + + + + +
+efx0, efy0, efz0REAL
See:0.D0
+Initial values of the field along x, y, and z directions
+         
+ + + + + + + + + + + +
+efx1, efy1, efz1REAL
See:0.D0
+Final values of the field along x, y, and z directions
+         
+ + + + + + + + + + + +
wfsdINTEGER
Default: 1 +
+Localization algorithm for Wannier function calculation:
+wfsd=1  Damped Dynamics
+wfsd=2  Steepest-Descent / Conjugate-Gradient
+wfsd=3  Jocobi Rotation
+Remember, this is consistent with all the calwf options
+as well as the tolw (see below).
+Not a good idea to Wannier dynamics with this if you are
+using restart='from_scratch' option, since the spreads
+converge fast in the beginning and ortho goes bananas.
+         
+ + + + + + + + + + + +
wfdtREAL
Default: 5.D0 +
+The minimum step size to take in the SD/CG direction
+         
+ + + + + + + + + + + +
maxwfdtREAL
Default: 0.3D0 +
+The maximum step size to take in the SD/CG direction
+The code calculates an optimum step size, but that may be
+either too small (takes forever to converge)  or too large
+(code goes crazy) . This option keeps the step size between
+wfdt and maxwfdt. In my experience 0.1 and 0.5 work quite
+well. (but don't blame me if it doesn't work for you)
+         
+ + + + + + + + + + + +
nitINTEGER
Default: 10 +
+Number of iterations to do for Wannier convergence.
+         
+ + + + + + + + + + + +
nsdINTEGER
Default: 10 +
+Out of a total of NIT iterations, NSD will be Steepest-Descent
+and ( nit - nsd ) will be Conjugate-Gradient.
+         
+ + + + + + + + + + + +
wf_qREAL
Default: 1500.D0 +
+Fictitious mass of the A matrix used for obtaining
+maximally localized Wannier functions. The unitary
+transformation matrix U is written as exp(A) where
+A is a anti-hermitian matrix. The Damped-Dynamics is performed
+in terms of the A matrix, and then U is computed from A.
+Usually a value between 1500 and 2500 works fine, but should
+be tested.
+         
+ + + + + + + + + + + +
wf_frictionREAL
Default: 0.3D0 +
+Damping coefficient for Damped-Dynamics.
+         
+ + + + + + + + + + + +
nstepsINTEGER
Default: 20 +
+Number of Damped-Dynamics steps to be performed per CP
+iteration.
+         
+ + + + + + + + + + + +
tolwREAL
Default: 1.D-8 +
+Convergence criterion for localization.
+         
+ + + + + + + + + + + +
adaptLOGICAL
Default: .true. +
+Whether to adapt the damping parameter dynamically.
+         
+ + + + + + + + + + + +
calwfINTEGER
Default: 3 +
+Wannier Function Options, can be 1,2,3,4,5
+
+1. Output the Wannier function density, nwf and wffort
+   are used for this option. see below.
+2. Output the Overlap matrix O_i,j=<w_i|exp{iGr}|w_j>. O is
+   written to unit 38. For details on how O is constructed,
+   see below.
+3. Perform nsteps of Wannier dynamics per CP iteration, the
+   orbitals are now Wannier Functions, not Kohn-Sham orbitals.
+   This is a Unitary transformation of the occupied subspace
+   and does not leave the CP Lagrangian invariant. Expectation
+   values remain the same. So you will **NOT** have a constant
+   of motion during the run. Don't freak out, its normal.
+4. This option starts for the KS states and does 1 CP iteration
+   and nsteps of Damped-Dynamics to generate  maximally
+   localized wannier functions. Its useful when you have the
+   converged KS groundstate and want to get to the converged
+   Wannier function groundstate in 1 CP Iteration.
+5. This option is similar to calwf 1, except that the output is
+   the Wannier function/wavefunction, and not the orbital
+   density. See nwf below.
+         
+ + + + + + + + + + + +
nwfINTEGER
Default: 0 +
+This option is used with calwf 1 and calwf 5. with calwf=1,
+it tells the code how many Orbital densities are to be
+output. With calwf=5, set this to 1(i.e calwf=5 only writes
+one state during one run. so if you want 10 states, you have
+to run the code 10 times). With calwf=1, you can print many
+orbital densities in a single run.
+See also the PLOT_WANNIER card for specifying the states to
+be printed.
+         
+ + + + + + + + + + + +
wffortINTEGER
Default: 40 +
+This tells the code where to dump the orbital densities. Used
+ only with CALWF=1. for e.g. if you want to print 2 orbital
+ densities, set calwf=1, nwf=2 and wffort to an appropriate
+ number (e.g. 40) then the first orbital density will be
+ output to fort.40, the second to fort.41 and so on. Note that
+ in the current implementation, the following units are used
+ 21,22,24,25,26,27,28,38,39,77,78 and whatever you define as
+ ndr and ndw. so use number other than these.
+         
+ + + + + + + + + + + +
writevLOGICAL
Default: .false. +
+Output the charge density (g-space) and the list of g-vectors
+This is useful if you want to reconstruct the electrostatic
+potential using the Poisson equation. If .TRUE. then the
+code will output the g-space charge density and the list
+if G-vectors, and STOP.
+Charge density is written to : CH_DEN_G_PARA.ispin (1 or 2
+depending on the number of spin types) or CH_DEN_G_SERL.ispin
+depending on if the code is being run in parallel or serial
+G-vectors are written to G_PARA or G_SERL.
+         
+ + + + + + + + + + + +
exx_neighINTEGER
Default: 60 +
+An initial guess on the maximum number of neighboring (overlapping) Wannier functions.
+         
+ + + + + + + + + + + +
exx_dis_cutoffREAL
Default: 8.0 +
+Radial cutoff distance (in bohr) for including overlapping Wannier function pairs
+in EXX calculations.
+         
+ + + + + + + + + + + +
exx_poisson_epsREAL
Default: 1.0D-6 +
+Poisson solver convergence criterion during computation of the EXX potential.
+         
+ + + + + + + + + + + +
exx_ps_rcut_selfREAL
Default: 6.0 +
+Radial cutoff distance (in bohr) to compute the self EXX energy.
+This distance determines the radius of the Poisson sphere centered at
+a given Wannier function center, and should be large enough to cover
+the majority of the orbital charge density.
+         
+ + + + + + + + + + + +
exx_ps_rcut_pairREAL
Default: 5.0 +
+Radial cutoff distance (in bohr) to compute the pair EXX energy.
+This distance determines the radius of the Poisson sphere centered at
+the midpoint of two overlapping Wannier functions, and should be
+large enough to cover the majority of the orbital overlap charge density.
+This parameter can generally be chosen as smaller than exx_ps_rcut_self.
+         
+ + + + + + + + + + + +
exx_me_rcut_selfREAL
Default: 10.0 +
+Radial cutoff distance (in bohr) for the multipole-expansion sphere
+centered at a given Wannier function center.
+The far-field self EXX potential in this sphere is generated with
+multipole expansion of the orbital charge density.
+         
+ + + + + + + + + + + +
exx_me_rcut_pairREAL
Default: 7.0 +
+Radial cutoff distance (in bohr) for the multipole-expansion sphere
+centered at the midpoint of two overlapping Wannier functions.
+The far-field pair EXX potential in this sphere is generated with
+a multipole expansion of the orbital overlap charge density.
+This parameter can generally be chosen as smaller than exx_me_rcut_self.
+         
+ +
+ + + +

+ Card: ATOMIC_SPECIES

+ + +
+

Syntax:

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

Description of items:

+
+ + + + + + +
XCHARACTER
+label of the atom. Acceptable syntax:
+chemical symbol X (1 or 2 characters, case-insensitive)
+or chemical symbol plus a number or a letter, as in
+"Xn" (e.g. Fe1) or "X_*" or "X-*" (e.g. C1, C_h;
+max total length cannot exceed 3 characters)
+                  
+ + + + + + + +
Mass_XREAL
+mass of the atomic species [amu: mass of C = 12]
+not used if calculation='scf', 'nscf', 'bands'
+                  
+ + + + + + + +
PseudoPot_XCHARACTER
+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
+                  
+ +
+
+ + + +

+ Card: ATOMIC_POSITIONS { alat | bohr | angstrom | crystal }

+ + +
+IF calculation == 'bands' OR calculation == 'nscf' :
+

+Specified atomic positions will be IGNORED and those from the
+previous scf calculation will be used instead !!!
+            

+
+ELSEIF :
+

Syntax:

+
+ATOMIC_POSITIONS { alat | bohr | angstrom | crystal + }
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 X(1)  x(1)  y(1)  z(1)  {  if_pos(1)(1)  if_pos(2)(1)  if_pos(3)(1)  }
 X(2)  x(2)  y(2)  z(2)  {  if_pos(1)(2)  if_pos(2)(2)  if_pos(3)(2)  }
 . . .
 X(nat)  x(nat)  y(nat)  z(nat)  {  if_pos(1)(nat)  if_pos(2)(nat)  if_pos(3)(nat)  }
+
+
+
+
+

Description of items:

+
+ + + + + + + + + + +
Card's options: +alat | bohr | angstrom | crystal +
Default: (DEPRECATED) bohr +
+alat    : atomic positions are in cartesian coordinates,
+          in units of the lattice parameter (either
+          celldm(1) or A).
+
+bohr    : atomic positions are in cartesian coordinate,
+          in atomic units (i.e. Bohr).
+          If no option is specified, 'bohr' is assumed;
+          not specifying units is DEPRECATED and will no
+          longer be allowed in the future
+
+angstrom: atomic positions are in cartesian coordinates,
+          in Angstrom
+
+crystal : atomic positions are in crystal coordinates, i.e.
+          in relative coordinates of the primitive lattice
+          vectors as defined either in card CELL_PARAMETERS
+          or via the ibrav + celldm / a,b,c... variables
+         
+ + + + + + + +
XCHARACTER
 label of the atom as specified in ATOMIC_SPECIES
+                        
+ + + + + + + +
+x, y, z +REAL
 atomic positions
+                        
+ + + + + + + + + + + +
+if_pos(1), if_pos(2), if_pos(3) +INTEGER
Default: 1 +
+component i of the force for this atom is multiplied by if_pos(i),
+which must be either 0 or 1.  Used to keep selected atoms and/or
+selected components fixed in MD dynamics or
+structural optimization run.
+                           
+ +
+
+ + + +

+ Card: ATOMIC_VELOCITIES { a.u }

+ + +
+

+Optional card, reads velocities from standard input +

+

+when starting with ion_velocities="from_input" it is convenient
+to perform few steps (~5-10) with a smaller time step (0.5 a.u.).
+The velocities must be expressed using the same length units
+indicated in the card ATOMIC_POSITIONS, divided by time
+in atomic units.
+      

+

Syntax:

+
+ATOMIC_VELOCITIES { a.u + }
+ + + + + + + + + + + + + + + + + + + + +
 V(1)  vx(1)  vy(1)  vz(1) 
 V(2)  vx(2)  vy(2)  vz(2) 
 . . .
 V(nat)  vx(nat)  vy(nat)  vz(nat) 
+
+
+
+

Description of items:

+
+ + + + + + +
VCHARACTER
 label of the atom as specified in ATOMIC_SPECIES
+                  
+ + + + + + + +
+vx, vy, vz +REAL
 atomic velocities along x y and z direction
+                  
+ +
+
+ + + +

+ Card: CELL_PARAMETERS { bohr | angstrom | alat }

+ + +
+

+Optional card, needed only if ibrav = 0 is specified, ignored otherwise ! +

+

Syntax:

+
+CELL_PARAMETERS { bohr | angstrom | alat + }
+ + + + + + + + + + + + + + + + + + + + + + +
 v1(1)  v1(2)  v1(3) 
 v2(1)  v2(2)  v2(3) 
 v3(1)  v3(2)  v3(3) 
+
+
+
+

Description of items:

+
+ + + + + + +
Card's options: +bohr | angstrom | alat +
+'bohr'/'angstrom': lattice vectors in bohr radii / angstrom.
+'alat' / nothing specified: lattice vectors in units or the
+lattice parameter (either celldm(1) or a). Not specifing
+units is DEPRECATED and will not be allowed in the future.
+If nothing specified and no lattice parameter specified,
+'bohr' is assumed - DEPRECATED, will no longer be allowed
+         
+ + + + + + + +
+v1, v2, v3 +REAL
+Crystal lattice vectors:
+    v1(1)  v1(2)  v1(3)    ... 1st lattice vector
+    v2(1)  v2(2)  v2(3)    ... 2nd lattice vector
+    v3(1)  v3(2)  v3(3)    ... 3rd lattice vector
+                  
+ +
+
+ + + +

+ Card: REF_CELL_PARAMETERS { bohr | angstrom }

+ + +
+

+ Optional card, needed only if one wants to do variable cell calculations accurately. +The reference cell generates additional buffer planewaves. +

+

Syntax:

+
+REF_CELL_PARAMETERS { bohr | angstrom + }
+ + + + + + + + + + + + + + + + + + + + + + +
 v1(1)  v1(2)  v1(3) 
 v2(1)  v2(2)  v2(3) 
 v3(1)  v3(2)  v3(3) 
+
+
+
+

Description of items:

+
+ + + + + + +
Card's options: +bohr | angstrom +
+bohr / angstrom: reference cell parameters in bohr radii / angstrom.
+
+To mimic a constant effective planewave kinetic energy (ecfixed) during a
+variable-cell calculation, the specified reference cell has to be large enough
+such that the individual cell vector lengths of the fluctuating cell do not
+exceed the corresponding reference lattice vector lengths during the entire
+calculation. The cost of the calculation will increase with the increasing
+size of the reference cell. The user must test for the proper reference cell
+parameters.
+
+The reference cell parameters should be used in conjunction with q2sigma,
+qcutz, and ecfixed. See q2sigma for more information about mimicking constant
+effective planewave kinetic energy (ecfixed) during variable-cell calculations.
+
+The reference cell parameters should be chosen as an isotropic scaling of the
+initial cell of the system. This means that the reference cell should have
+the same shape as the initial simulatoin cell. The reference cell parameters should
+NOT be changed throughout a given simulatoin. Typically, 2%-10% scaling of
+the unit cell vectors are sufficient. However, the cell fluctuations depend on
+the system and the thermodynamic conditions. So again user must test for the proper
+choice of reference cell parameters.
+         
+ + + + + + + +
+v1, v2, v3 +REAL
+REF_CELL_PARAMETERS { bohr | angstrom }
+v1(1)  v1(2)  v1(3)    ... 1st reference lattice vector
+v2(1)  v2(2)  v2(3)    ... 2nd reference lattice vector
+v3(1)  v3(2)  v3(3)    ... 3rd reference lattice vector
+                  
+ +
+
+ + + +

+ Card: CONSTRAINTS

+ + +
+

+Optional card, used for constrained dynamics or constrained optimisations +

+

+When this card is present the SHAKE algorithm is automatically used.
+      

+

Syntax:

+
+CONSTRAINTS
+nconstr   { constr_tol   }
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 constr_type(1)  constr(1)(1)  constr(2)(1)  [  constr(3)(1) +   constr(4)(1) +   ] {  constr_target(1)  }
 constr_type(2)  constr(1)(2)  constr(2)(2)  [  constr(3)(2) +   constr(4)(2) +   ] {  constr_target(2)  }
 . . .
 constr_type(nconstr)  constr(1)(nconstr)  constr(2)(nconstr)  [  constr(3)(nconstr) +   constr(4)(nconstr) +   ] {  constr_target(nconstr)  }
+
+
+
+

Description of items:

+
+ + + + + + +
nconstrINTEGER
 Number of constraints.
+               
+ + + + + + + +
constr_tolREAL
 Tolerance for keeping the constraints satisfied.
+                  
+ + + + + + + +
constr_typeCHARACTER
+Type of constrain :
+
+'type_coord'      : constraint on global coordination-number, i.e. the
+                    average number of atoms of type B surrounding the
+                    atoms of type A. The coordination is defined by
+                    using a Fermi-Dirac.
+                    (four indexes must be specified).
+
+'atom_coord'      : constraint on local coordination-number, i.e. the
+                    average number of atoms of type A surrounding a
+                    specific atom. The coordination is defined by
+                    using a Fermi-Dirac.
+                    (four indexes must be specified).
+
+'distance'        : constraint on interatomic distance
+                    (two atom indexes must be specified).
+
+'planar_angle'    : constraint on planar angle
+                    (three atom indexes must be specified).
+
+'torsional_angle' : constraint on torsional angle
+                    (four atom indexes must be specified).
+
+'bennett_proj'    : constraint on the projection onto a given direction
+                    of the vector defined by the position of one atom
+                    minus the center of mass of the others.
+                    ( Ch.H. Bennett in Diffusion in Solids, Recent
+                      Developments, Ed. by A.S. Nowick and J.J. Burton,
+                      New York 1975 ).
+                  
+ + + + + + + +
+constr(1), constr(2), constr(3), constr(4) +
+                      These variables have different meanings
+                      for different constraint types:
+
+                     'type_coord' : constr(1) is the first index of the
+                                    atomic type involved
+                                    constr(2) is the second index of the
+                                    atomic type involved
+                                    constr(3) is the cut-off radius for
+                                    estimating the coordination
+                                    constr(4) is a smoothing parameter
+
+                     'atom_coord' : constr(1) is the atom index of the
+                                    atom with constrained coordination
+                                    constr(2) is the index of the atomic
+                                    type involved in the coordination
+                                    constr(3) is the cut-off radius for
+                                    estimating the coordination
+                                    constr(4) is a smoothing parameter
+
+                       'distance' : atoms indices object of the
+                                    constraint, as they appear in
+                                    the 'ATOMIC_POSITION' CARD
+
+'planar_angle', 'torsional_angle' : atoms indices object of the
+                                    constraint, as they appear in the
+                                    'ATOMIC_POSITION' CARD (beware the
+                                    order)
+
+                   'bennett_proj' : constr(1) is the index of the atom
+                                    whose position is constrained.
+                                    constr(2:4) are the three coordinates
+                                    of the vector that specifies the
+                                    constraint direction.
+                  
+ + + + + + + +
constr_targetREAL
+Target for the constrain ( angles are specified in degrees ).
+This variable is optional.
+                     
+ +
+
+ + + +

+ Card: OCCUPATIONS

+ + +
+

Optional card, used only if occupations = 'from_input', ignored otherwise ! +

+

Syntax:

+
+OCCUPATIONS
+ + + + + + + + + + + + + + + + + +
 f_inp1(1)  f_inp1(2)  . . . f_inp1(nbnd) 
[   f_inp2(1)  f_inp2(2)  . . . f_inp2(nbnd)   ]
+
+
+
+

Description of items:

+
+ + + + + + +
f_inp1REAL
+Occupations of individual states (MAX 10 PER LINE).
+For spin-polarized calculations, these are majority spin states.
+                  
+ + + + + + + +
f_inp2REAL
+Occupations of minority spin states (MAX 10 PER LINE)
+To be specified only for spin-polarized calculations.
+                     
+ +
+
+ + + +

+ Card: ATOMIC_FORCES

+ + +
+

Optional card used to specify external forces acting on atoms +

+

Syntax:

+
+ATOMIC_FORCES
+ + + + + + + + + + + + + + + + + + + + +
 X(1)  fx(1)  fy(1)  fz(1) 
 X(2)  fx(2)  fy(2)  fz(2) 
 . . .
 X(nat)  fx(nat)  fy(nat)  fz(nat) 
+
+
+
+

Description of items:

+
+ + + + + + +
XCHARACTER
 label of the atom as specified in ATOMIC_SPECIES
+                  
+ + + + + + + +
+fx, fy, fz +REAL
+external force on atom X (cartesian components, Ha/a.u. units)
+                  
+ +
+
+ + + +

+ Card: PLOT_WANNIER

+ + +
+

+Optional card, indices of the states that have to be printed (only for calf=1 and calf=5). +

+

Syntax:

+
+PLOT_WANNIER
+ + + + + +
 iwf(1) 
 iwf(2) 
 . . .
 iwf(nwf) 
+
+
+
+

Description of items:

+
+ + + + + + +
iwfINTEGER
+These are the indices of the states that you want to output.
+Also used with calwf = 1 and 5. If calwf = 1, then you need
+nwf indices here (each in a new line). If CALWF=5, then just
+one index in needed.
+                  
+ +
+
+ + + +

+ Card: AUTOPILOT

+ + +
+

+Optional card, changes some variables on the fly of the calculation. + +Notice that the rules has to be ordered in with time step and the Card has +to be terminated with "ENDRULES" +

+

Syntax:

+
+AUTOPILOT
+ + + + + +
 pilot_rule(1) 
 pilot_rule(2) 
 . . .
 pilot_rule(nevent) 
+
+
+
+

Description of items:

+
+ + + + + + +
pilot_ruleRULE
+To set up a rule, one can add the scheduled steps with on_step and
+separate the corresponding change in parameters with a column.
+
+See a simple example bellow:
+
+AUTOPILOT
+    on_step =  31  : dt               = 5.0
+    on_step =  91  : iprint           = 100
+    on_step =  91  : isave            = 100
+    on_step = 191  : ion_dynamics     = 'damp'
+    on_step = 191  : electron_damping = 0.00
+    on_step = 691  : ion_temperature  = 'nose'
+    on_step = 691  : tempw            = 150.0
+ENDRULES
+                  
+ +
+
+
+ + This file has been created by helpdoc utility on Fri Jun 22 17:10:59 CEST 2018. + + + diff --git a/CPV/Doc/INPUT_CP.txt b/CPV/Doc/INPUT_CP.txt new file mode 100644 index 0000000000000000000000000000000000000000..5fec49e0fbaea7b01b8c712da47eda6fe88df790 --- /dev/null +++ b/CPV/Doc/INPUT_CP.txt @@ -0,0 +1,2485 @@ +*** FILE AUTOMATICALLY CREATED: DO NOT EDIT, CHANGES WILL BE LOST *** + +------------------------------------------------------------------------ +INPUT FILE DESCRIPTION + +Program: cp.x / CP / Quantum Espresso (version: svn) +------------------------------------------------------------------------ + + +Input data format: { } = optional, [ ] = it depends, | = or + +All quantities whose dimensions are not explicitly specified are in +HARTREE ATOMIC UNITS. Charge is "number" charge (i.e. not multiplied +by e); potentials are in energy units (i.e. they are multiplied by e) + +BEWARE: TABS, DOS CHARACTERS ARE POTENTIAL SOURCES OF TROUBLE +Comment lines in namelists can be introduced by a "!", exactly as in +fortran code. Comments lines in ``cards'' can be introduced by +either a "!" or a "#" character in the first position of a line. +Do not start any line in ``cards'' with a "/" character. + +Structure of the input data: +=============================================================================== + +&CONTROL + ... +/ + +&SYSTEM + ... +/ + +&ELECTRONS +... +/ + +[ &IONS + ... + / ] + +[ &CELL + ... + / ] + +[ &WANNIER + ... + / ] + +ATOMIC_SPECIES + X Mass_X PseudoPot_X + Y Mass_Y PseudoPot_Y + Z Mass_Z PseudoPot_Z + +ATOMIC_POSITIONS { alat | bohr | crystal | angstrom } + 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 + +[ CELL_PARAMETERS { alat | bohr | angstrom } + v1(1) v1(2) v1(3) + v2(1) v2(2) v2(3) + v3(1) v3(2) v3(3) ] + +[ OCCUPATIONS + f_inp1(1) f_inp1(2) f_inp1(3) ... f_inp1(10) + f_inp1(11) f_inp1(12) ... f_inp1(nbnd) + [ f_inp2(1) f_inp2(2) f_inp2(3) ... f_inp2(10) + f_inp2(11) f_inp2(12) ... f_inp2(nbnd) ] ] + +[ CONSTRAINTS + nconstr { constr_tol } + constr_type(.) constr(1,.) constr(2,.) [ constr(3,.) constr(4,.) ] { constr_target(.) } ] + +[ ATOMIC_FORCES + label_1 Fx(1) Fy(1) Fz(1) + ..... + label_n Fx(n) Fy(n) Fz(n) ] + + + +======================================================================== +NAMELIST: &CONTROL + + +-------------------------------------------------------------------- + Variable: calculation + + Type: CHARACTER + Default: 'cp' + Description: a string describing the task to be performed: + 'cp', + 'scf', + 'nscf', + 'relax', + 'vc-relax', + 'vc-cp', + 'cp-wf', + 'vc-cp-wf' + + (vc = variable-cell). + (wf = Wannier functions). + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: title + + Type: CHARACTER + Default: 'MD Simulation ' + Description: reprinted on output. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: verbosity + + Type: CHARACTER + Default: 'low' + Description: In order of decreasing verbose output: + 'debug' | 'high' | 'medium' | 'low','default' | 'minimal' + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: isave + + Type: INTEGER + See: ndr + See: ndw + Default: 100 + Description: Number of steps between successive savings of + information needed to restart the run. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: restart_mode + + Type: CHARACTER + Default: 'restart' + Description: 'from_scratch' : from scratch + 'restart' : from previous interrupted run + 'reset_counters' : continue a previous simulation, + performs "nstep" new steps, resetting + the counter and averages + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: nstep + + Type: INTEGER + Description: number of Car-Parrinello steps performed in this run + Default: 50 + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: iprint + + Type: INTEGER + Default: 10 + Description: Number of steps between successive writings of relevant physical quantities + to files named as "prefix.???" depending on "prefix" parameter. + In the standard output relevant quantities are written every 10*iprint steps. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: tstress + + Type: LOGICAL + Default: .false. + Description: Write stress tensor to standard output each "iprint" steps. + It is set to .TRUE. automatically if + calculation='vc-relax' + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: tprnfor + + Type: LOGICAL + Default: .false. + Description: print forces. Set to .TRUE. when ions are moving. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: dt + + Type: REAL + Default: 1.D0 + Description: time step for molecular dynamics, in Hartree atomic units + (1 a.u.=2.4189 * 10^-17 s : beware, PW code use + Rydberg atomic units, twice that much!!!) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: outdir + + Type: CHARACTER + Default: value of the ESPRESSO_TMPDIR environment variable if set; + current directory ('./') otherwise + Description: input, temporary, trajectories and output files are found + in this directory. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: saverho + + Type: LOGICAL + Description: This flag controls the saving of charge density in CP codes: + If .TRUE. save charge density to restart dir, + If .FALSE. do not save charge density. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: prefix + + Type: CHARACTER + Default: 'cp' + Description: prepended to input/output filenames: + prefix.pos : atomic positions + prefix.vel : atomic velocities + prefix.for : atomic forces + prefix.cel : cell parameters + prefix.str : stress tensors + prefix.evp : energies + prefix.hrs : Hirshfeld effective volumes (ts-vdw) + prefix.eig : eigen values + prefix.nos : Nose-Hoover variables + prefix.spr : spread of Wannier orbitals + prefix.wfc : center of Wannier orbitals + prefix.ncg : number of Poisson CG steps (PBE0) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ndr + + Type: INTEGER + Default: 50 + Description: Units for input and output restart file. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ndw + + Type: INTEGER + Default: 50 + Description: Units for input and output restart file. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: tabps + + Type: LOGICAL + Default: .false. + Description: .true. to compute the volume and/or the surface of an isolated + system for finite pressure/finite surface tension calculations + (PRL 94, 145501 (2005); JCP 124, 074103 (2006)). + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: max_seconds + + Type: REAL + Default: 1.D+7, or 150 days, i.e. no time limit + Description: jobs stops after max_seconds CPU time. Used to prevent + a hard kill from the queuing system. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: etot_conv_thr + + Type: REAL + Default: 1.0D-4 + Description: convergence threshold on total energy (a.u) for ionic + minimization: the convergence criterion is satisfied + when the total energy changes less than etot_conv_thr + between two consecutive scf steps. + See also forc_conv_thr - both criteria must be satisfied + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: forc_conv_thr + + Type: REAL + Default: 1.0D-3 + Description: convergence threshold on forces (a.u) for ionic + minimization: the convergence criterion is satisfied + when all components of all forces are smaller than + forc_conv_thr. + See also etot_conv_thr - both criteria must be satisfied + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ekin_conv_thr + + Type: REAL + Default: 1.0D-6 + Description: convergence criterion for electron minimization: + convergence is achieved when "ekin < ekin_conv_thr". + See also etot_conv_thr - both criteria must be satisfied. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: disk_io + + Type: CHARACTER + Default: 'default' + Description: 'high': CP code will write Kohn-Sham wfc files and additional + information in data-file.xml in order to restart + with a PW calculation or to use postprocessing tools. + If disk_io is not set to 'high', the data file + written by CP will not be readable by PW or PostProc. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: memory + + Type: CHARACTER + Default: 'default' + Description: 'small': memory-saving tricks are implemented. Currently: + - the G-vectors are sorted only locally, not globally + - they are not collected and written to file + For large systems, the memory and time gain is sizable + but the resulting data files are not portable - use it + only if you do not need to re-read the data file + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: pseudo_dir + + Type: CHARACTER + Default: value of the $ESPRESSO_PSEUDO environment variable if set; + '$HOME/espresso/pseudo/' otherwise + Description: directory containing pseudopotential files + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: tefield + + Type: LOGICAL + Default: .FALSE. + Description: If .TRUE. a homogeneous finite electric field described + through the modern theory of the polarization is applied. + +-------------------------------------------------------------------- + +===END OF NAMELIST====================================================== + + +======================================================================== +NAMELIST: &SYSTEM + + +-------------------------------------------------------------------- + Variable: ibrav + + Type: INTEGER + Status: REQUIRED + Description: Bravais-lattice index. If ibrav /= 0, specify EITHER + [ celldm(1)-celldm(6) ] OR [ A,B,C,cosAB,cosAC,cosBC ] + but NOT both. The lattice parameter "alat" is set to + alat = celldm(1) (in a.u.) or alat = A (in Angstrom); + see below for the other parameters. + For ibrav=0 specify the lattice vectors in CELL_PARAMETER, + optionally the lattice parameter alat = celldm(1) (in a.u.) + or = A (in Angstrom), or else it is taken from CELL_PARAMETERS + + ibrav structure celldm(2)-celldm(6) + or: b,c,cosbc,cosac,cosab + 0 free + crystal axis provided in input: see card CELL_PARAMETERS + + 1 cubic P (sc) + v1 = a(1,0,0), v2 = a(0,1,0), v3 = a(0,0,1) + + 2 cubic F (fcc) + v1 = (a/2)(-1,0,1), v2 = (a/2)(0,1,1), v3 = (a/2)(-1,1,0) + + 3 cubic I (bcc) + v1 = (a/2)(1,1,1), v2 = (a/2)(-1,1,1), v3 = (a/2)(-1,-1,1) + -3 cubic I (bcc), more symmetric axis: + v1 = (a/2)(-1,1,1), v2 = (a/2)(1,-1,1), v3 = (a/2)(1,1,-1) + + 4 Hexagonal and Trigonal P celldm(3)=c/a + v1 = a(1,0,0), v2 = a(-1/2,sqrt(3)/2,0), v3 = a(0,0,c/a) + + 5 Trigonal R, 3fold axis c celldm(4)=cos(gamma) + The crystallographic vectors form a three-fold star around + the z-axis, the primitive cell is a simple rhombohedron: + v1 = a(tx,-ty,tz), v2 = a(0,2ty,tz), v3 = a(-tx,-ty,tz) + where c=cos(gamma) is the cosine of the angle gamma between + any pair of crystallographic vectors, tx, ty, tz are: + tx=sqrt((1-c)/2), ty=sqrt((1-c)/6), tz=sqrt((1+2c)/3) + -5 Trigonal R, 3fold axis <111> celldm(4)=cos(gamma) + The crystallographic vectors form a three-fold star around + <111>. Defining a' = a/sqrt(3) : + v1 = a' (u,v,v), v2 = a' (v,u,v), v3 = a' (v,v,u) + where u and v are defined as + u = tz - 2*sqrt(2)*ty, v = tz + sqrt(2)*ty + and tx, ty, tz as for case ibrav=5 + Note: if you prefer x,y,z as axis in the cubic limit, + set u = tz + 2*sqrt(2)*ty, v = tz - sqrt(2)*ty + See also the note in Modules/latgen.f90 + + 6 Tetragonal P (st) celldm(3)=c/a + v1 = a(1,0,0), v2 = a(0,1,0), v3 = a(0,0,c/a) + + 7 Tetragonal I (bct) celldm(3)=c/a + v1=(a/2)(1,-1,c/a), v2=(a/2)(1,1,c/a), v3=(a/2)(-1,-1,c/a) + + 8 Orthorhombic P celldm(2)=b/a + celldm(3)=c/a + v1 = (a,0,0), v2 = (0,b,0), v3 = (0,0,c) + + 9 Orthorhombic base-centered(bco) celldm(2)=b/a + celldm(3)=c/a + v1 = (a/2, b/2,0), v2 = (-a/2,b/2,0), v3 = (0,0,c) + -9 as 9, alternate description + v1 = (a/2,-b/2,0), v2 = (a/2, b/2,0), v3 = (0,0,c) + + 10 Orthorhombic face-centered celldm(2)=b/a + celldm(3)=c/a + v1 = (a/2,0,c/2), v2 = (a/2,b/2,0), v3 = (0,b/2,c/2) + + 11 Orthorhombic body-centered celldm(2)=b/a + celldm(3)=c/a + v1=(a/2,b/2,c/2), v2=(-a/2,b/2,c/2), v3=(-a/2,-b/2,c/2) + + 12 Monoclinic P, unique axis c celldm(2)=b/a + celldm(3)=c/a, + celldm(4)=cos(ab) + v1=(a,0,0), v2=(b*cos(gamma),b*sin(gamma),0), v3 = (0,0,c) + where gamma is the angle between axis a and b. + -12 Monoclinic P, unique axis b celldm(2)=b/a + celldm(3)=c/a, + celldm(5)=cos(ac) + v1 = (a,0,0), v2 = (0,b,0), v3 = (c*cos(beta),0,c*sin(beta)) + where beta is the angle between axis a and c + + 13 Monoclinic base-centered celldm(2)=b/a + celldm(3)=c/a, + celldm(4)=cos(gamma) + v1 = ( a/2, 0, -c/2), + v2 = (b*cos(gamma), b*sin(gamma), 0 ), + v3 = ( a/2, 0, c/2), + where gamma=angle between axis a and b projected on xy plane + + -13 Monoclinic base-centered celldm(2)=b/a + (unique axis b) celldm(3)=c/a, + celldm(5)=cos(beta) + v1 = ( a/2, -b/2, 0), + v2 = ( a/2, b/2, 0), + v3 = (c*cos(beta), 0, c*sin(beta)), + where beta=angle between axis a and c projected on xz plane + + 14 Triclinic celldm(2)= b/a, + celldm(3)= c/a, + celldm(4)= cos(bc), + celldm(5)= cos(ac), + celldm(6)= cos(ab) + v1 = (a, 0, 0), + v2 = (b*cos(gamma), b*sin(gamma), 0) + v3 = (c*cos(beta), c*(cos(alpha)-cos(beta)cos(gamma))/sin(gamma), + c*sqrt( 1 + 2*cos(alpha)cos(beta)cos(gamma) + - cos(alpha)^2-cos(beta)^2-cos(gamma)^2 )/sin(gamma) ) + where alpha is the angle between axis b and c + beta is the angle between axis a and c + gamma is the angle between axis a and b + +-------------------------------------------------------------------- + + ///--- + EITHER: + + +-------------------------------------------------------------------- + Variable: celldm(i), i=1,6 + + Type: REAL + See: ibrav + Description: Crystallographic constants - see the "ibrav" variable. + Specify either these OR A,B,C,cosAB,cosBC,cosAC NOT both. + Only needed values (depending on "ibrav") must be specified + alat = celldm(1) is the lattice parameter "a" (in BOHR) + If ibrav=0, only celldm(1) is used if present; + cell vectors are read from card CELL_PARAMETERS + +-------------------------------------------------------------------- + + OR: + + +-------------------------------------------------------------------- + Variables: A, B, C, cosAB, cosAC, cosBC + + Type: REAL + Description: Traditional crystallographic constants: a,b,c in ANGSTROM + cosAB = cosine of the angle between axis a and b (gamma) + cosAC = cosine of the angle between axis a and c (beta) + cosBC = cosine of the angle between axis b and c (alpha) + The axis are chosen according to the value of "ibrav". + Specify either these OR "celldm" but NOT both. + Only needed values (depending on "ibrav") must be specified + The lattice parameter alat = A (in ANGSTROM ) + If ibrav = 0, only A is used if present; + cell vectors are read from card CELL_PARAMETERS + +-------------------------------------------------------------------- + + \\\--- + + +-------------------------------------------------------------------- + Variable: nat + + Type: INTEGER + Status: REQUIRED + Description: number of atoms in the unit cell + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ntyp + + Type: INTEGER + Status: REQUIRED + Description: number of types of atoms in the unit cell + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: nbnd + + Type: INTEGER + Default: for an insulator, nbnd = number of valence bands + (nbnd = # of electrons /2); + for a metal, 20% more (minimum 4 more) + Description: number of electronic states (bands) to be calculated. + Note that in spin-polarized calculations the number of + k-point, not the number of bands per k-point, is doubled + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: tot_charge + + Type: REAL + Default: 0.0 + Description: total charge of the system. Useful for simulations with charged cells. + By default the unit cell is assumed to be neutral (tot_charge=0). + tot_charge=+1 means one electron missing from the system, + tot_charge=-1 means one additional electron, and so on. + + In a periodic calculation a compensating jellium background is + inserted to remove divergences if the cell is not neutral. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: tot_magnetization + + Type: REAL + Default: -1 [unspecified] + Description: total majority spin charge - minority spin charge. + Used to impose a specific total electronic magnetization. + If unspecified, the tot_magnetization variable is ignored + and the electronic magnetization is determined by the + occupation numbers (see card OCCUPATIONS) read from input. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ecutwfc + + Type: REAL + Status: REQUIRED + Description: kinetic energy cutoff (Ry) for wavefunctions + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ecutrho + + Type: REAL + Default: 4 * ecutwfc + Description: kinetic energy cutoff (Ry) for charge density and potential + For norm-conserving pseudopotential you should stick to the + default value, you can reduce it by a little but it will + introduce noise especially on forces and stress. + If there are ultrasoft PP, a larger value than the default is + often desirable (ecutrho = 8 to 12 times ecutwfc, typically). + PAW datasets can often be used at 4*ecutwfc, but it depends + on the shape of augmentation charge: testing is mandatory. + The use of gradient-corrected functional, especially in cells + with vacuum, or for pseudopotential without non-linear core + correction, usually requires an higher values of ecutrho + to be accurately converged. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: nr1, nr2, nr3 + + Type: INTEGER + See: ecutrho + Description: 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. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: nr1s, nr2s, nr3s + + Type: INTEGER + Description: 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 ) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: nr1b, nr2b, nr3b + + Type: INTEGER + Description: dimensions of the "box" grid for Ultrasoft pseudopotentials + must be specified if Ultrasoft PP are present + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: occupations + + Type: CHARACTER + Description: a string describing the occupation of the electronic states. + In the case of conjugate gradient style of minimization + of the electronic states, if occupations is set to 'ensemble', + this allows ensemble DFT calculations for metallic systems + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: degauss + + Type: REAL + Default: 0.D0 Ry + Description: parameter for the smearing function, only used for ensemble DFT + calculations + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: smearing + + Type: CHARACTER + Description: a string describing the kind of occupations for electronic states + in the case of ensemble DFT (occupations == 'ensemble' ); + now only Fermi-Dirac ('fd') case is implemented + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: nspin + + Type: INTEGER + Default: 1 + Description: nspin = 1 : non-polarized calculation (default) + + nspin = 2 : spin-polarized calculation, LSDA + (magnetization along z axis) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ecfixed + + Type: REAL + Default: 0.0 + See: q2sigma + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: qcutz + + Type: REAL + Default: 0.0 + See: q2sigma + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: q2sigma + + Type: REAL + Default: 0.1 + Description: ecfixed, qcutz, q2sigma: parameters for modified functional to be + used in variable-cell molecular dynamics (or in stress calculation). + "ecfixed" is the value (in Rydberg) of the constant-cutoff; + "qcutz" and "q2sigma" are the height and the width (in Rydberg) + of the energy step for reciprocal vectors whose square modulus + is greater than "ecfixed". In the kinetic energy, G^2 is + replaced by G^2 + qcutz * (1 + erf ( (G^2 - ecfixed)/q2sigma) ) + See: M. Bernasconi et al, J. Phys. Chem. Solids 56, 501 (1995) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: input_dft + + Type: CHARACTER + Default: read from pseudopotential files + Description: Exchange-correlation functional: eg 'PBE', 'BLYP' etc + See Modules/funct.f90 for allowed values. + Overrides the value read from pseudopotential files. + Use with care and if you know what you are doing! + + Use 'PBE0' to perform hybrid functional calculation using Wannier functions. + Allowed calculation: 'cp-wf' and 'vc-cp-wf' + See CP specific user manual for further guidance (or in CPV/Doc/user_guide.tex) + and examples in CPV/examples/EXX-wf-example. + Also see related keywords starting with exx_. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: exx_fraction + + Type: REAL + Default: it depends on the specified functional + Description: Fraction of EXX for hybrid functional calculations. In the case of + input_dft='PBE0', the default value is 0.25. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: lda_plus_u + + Type: LOGICAL + Default: .FALSE. + Description: lda_plus_u = .TRUE. enables calculation with LDA+U + ("rotationally invariant"). See also Hubbard_U. + 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, PRB 71, 035105 (2005). + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: Hubbard_U(i), i=1,ntyp + + Type: REAL + Default: 0.D0 for all species + Status: LDA+U works only for a few selected elements. Modify + CPV/ldaU.f90 if you plan to use LDA+U with an + element that is not configured there. + Description: Hubbard_U(i): parameter U (in eV) for LDA+U calculations. + Currently only the simpler, one-parameter LDA+U is + implemented (no "alpha" or "J" terms) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: vdw_corr + + Type: CHARACTER + Default: 'none' + Description: Type of Van der Waals correction. Allowed values: + + 'grimme-d2', 'Grimme-D2', 'DFT-D', 'dft-d': semiempirical Grimme's DFT-D2. + Optional variables: "london_s6", "london_rcut" + S. Grimme, J. Comp. Chem. 27, 1787 (2006), + V. Barone et al., J. Comp. Chem. 30, 934 (2009). + + 'TS', 'ts', 'ts-vdw', 'ts-vdW', 'tkatchenko-scheffler': Tkatchenko-Scheffler + dispersion corrections with first-principle derived C6 coefficients + Optional variables: "ts_vdw_econv_thr", "ts_vdw_isolated" + See A. Tkatchenko and M. Scheffler, Phys. Rev. Lett. 102, 073005 (2009) + + 'XDM', 'xdm': Exchange-hole dipole-moment model. Optional variables: "xdm_a1", "xdm_a2" + (implemented in PW only) + A. D. Becke and E. R. Johnson, J. Chem. Phys. 127, 154108 (2007) + A. Otero de la Roza, E. R. Johnson, J. Chem. Phys. 136, 174109 (2012) + + Note that non-local functionals (eg vdw-DF) are NOT specified here but in "input_dft" + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: london_s6 + + Type: REAL + Default: 0.75 + Description: global scaling parameter for DFT-D. Default is good for PBE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: london_rcut + + Type: REAL + Default: 200 + Description: cutoff radius (a.u.) for dispersion interactions + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ts_vdw + + Type: LOGICAL + Default: .FALSE. + Description: OBSOLESCENT, same as vdw_corr='TS' + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ts_vdw_econv_thr + + Type: REAL + Default: 1.D-6 + Description: Optional: controls the convergence of the vdW energy (and forces). The default value + is a safe choice, likely too safe, but you do not gain much in increasing it + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ts_vdw_isolated + + Type: LOGICAL + Default: .FALSE. + Description: Optional: set it to .TRUE. when computing the Tkatchenko-Scheffler vdW energy + for an isolated (non-periodic) system. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: assume_isolated + + Type: CHARACTER + Default: 'none' + Description: Used to perform calculation assuming the system to be + isolated (a molecule of a clustr in a 3D supercell). + + Currently available choices: + + 'none' (default): regular periodic calculation w/o any correction. + + 'makov-payne', 'm-p', 'mp' : the Makov-Payne correction to the + total energy is computed. + Theory: + G.Makov, and M.C.Payne, + "Periodic boundary conditions in ab initio + calculations" , Phys.Rev.B 51, 4014 (1995) + +-------------------------------------------------------------------- + +===END OF NAMELIST====================================================== + + +======================================================================== +NAMELIST: &ELECTRONS + + +-------------------------------------------------------------------- + Variable: electron_maxstep + + Type: INTEGER + Default: 100 + Description: maximum number of iterations in a scf step + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: electron_dynamics + + Type: CHARACTER + Default: 'none' + Description: set how electrons should be moved + 'none' : electronic degrees of freedom (d.o.f.) are kept fixed + 'sd' : steepest descent algorithm is used to minimize + electronic d.o.f. + 'damp' : damped dynamics is used to propagate electronic d.o.f. + 'verlet' : standard Verlet algorithm is used to propagate + electronic d.o.f. + 'cg' : conjugate gradient is used to converge the + wavefunction at each ionic step. 'cg' can be used + interchangeably with 'verlet' for a couple of ionic + steps in order to "cool down" the electrons and + return them back to the Born-Oppenheimer surface. + Then 'verlet' can be restarted again. This procedure + is useful when electronic adiabaticity in CP is lost + yet the ionic velocities need to be preserved. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: conv_thr + + Type: REAL + Default: 1.D-6 + Description: Convergence threshold for selfconsistency: + estimated energy error < conv_thr + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: niter_cg_restart + + Type: INTEGER + Default: 20 + Description: frequency in iterations for which the conjugate-gradient algorithm + for electronic relaxation is restarted + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: efield + + Type: REAL + Default: 0.D0 + Description: Amplitude of the finite electric field (in a.u.; + 1 a.u. = 51.4220632*10^10 V/m). Used only if tefield=.TRUE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: epol + + Type: INTEGER + Default: 3 + Description: direction of the finite electric field (only if tefield == .TRUE.) + In the case of a PARALLEL calculation only the case epol==3 + is implemented + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: emass + + Type: REAL + Default: 400.D0 + Description: effective electron mass in the CP Lagrangian, in atomic units + ( 1 a.u. of mass = 1/1822.9 a.m.u. = 9.10939 * 10^-31 kg ) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: emass_cutoff + + Type: REAL + Default: 2.5D0 + Description: mass cut-off (in Rydberg) for the Fourier acceleration + effective mass is rescaled for "G" vector components with + kinetic energy above "emass_cutoff" + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: orthogonalization + + Type: CHARACTER + Default: 'ortho' + Description: selects the orthonormalization method for electronic wave + functions + 'ortho' : use iterative algorithm - if it doesn't converge, + reduce the timestep, or use options ortho_max + and ortho_eps, or use Gram-Schmidt instead just + to start the simulation + 'Gram-Schmidt' : use Gram-Schmidt algorithm - to be used ONLY in + the first few steps. + YIELDS INCORRECT ENERGIES AND EIGENVALUES. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ortho_eps + + Type: REAL + Default: 1.D-8 + Description: tolerance for iterative orthonormalization + meaningful only if orthogonalization = 'ortho' + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ortho_max + + Type: INTEGER + Default: 20 + Description: maximum number of iterations for orthonormalization + meaningful only if orthogonalization = 'ortho' + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ortho_para + + Type: INTEGER + Default: 0 + Status: OBSOLETE: use command-line option " -nd XX" instead + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: electron_damping + + Type: REAL + Default: 0.1D0 + Description: damping frequency times delta t, optimal values could be + calculated with the formula : + SQRT( 0.5 * LOG( ( E1 - E2 ) / ( E2 - E3 ) ) ) + where E1, E2, E3 are successive values of the DFT total energy + in a steepest descent simulations. + meaningful only if " electron_dynamics = 'damp' " + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: electron_velocities + + Type: CHARACTER + Description: 'zero' : restart setting electronic velocities to zero + 'default' : restart using electronic velocities of the + previous run + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: electron_temperature + + Type: CHARACTER + Default: 'not_controlled' + Description: 'nose' : control electronic temperature using Nose + thermostat. See also "fnosee" and "ekincw". + 'rescaling' : control electronic temperature via velocities + rescaling. + 'not_controlled' : electronic temperature is not controlled. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ekincw + + Type: REAL + Default: 0.001D0 + Description: value of the average kinetic energy (in atomic units) forced + by the temperature control + meaningful only with " electron_temperature /= 'not_controlled' " + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: fnosee + + Type: REAL + Default: 1.D0 + Description: oscillation frequency of the nose thermostat (in terahertz) + meaningful only with " electron_temperature = 'nose' " + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: startingwfc + + Type: CHARACTER + Default: 'random' + Description: 'atomic': start from superposition of atomic orbitals + (not yet implemented) + + + 'random': start from random wfcs. See "ampre". + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: tcg + + Type: LOGICAL + Default: .FALSE. + Description: if .TRUE. perform a conjugate gradient minimization of the + electronic states for every ionic step. + It requires Gram-Schmidt orthogonalization of the electronic + states. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: maxiter + + Type: INTEGER + Default: 100 + Description: maximum number of conjugate gradient iterations for + conjugate gradient minimizations of electronic states + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: passop + + Type: REAL + Default: 0.3D0 + Description: small step used in the conjugate gradient minimization + of the electronic states. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: n_inner + + Type: INTEGER + Default: 2 + Description: number of internal cycles for every conjugate gradient + iteration only for ensemble DFT + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ninter_cold_restart + + Type: INTEGER + Default: 1 + Description: frequency in iterations at which a full inner cycle, only + for cold smearing, is performed + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: lambda_cold + + Type: REAL + Default: 0.03D0 + Description: step for inner cycle with cold smearing, used when a not full + cycle is performed + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: grease + + Type: REAL + Default: 1.D0 + Description: a number <= 1, very close to 1: the damping in electronic + damped dynamics is multiplied at each time step by "grease" + (avoids overdamping close to convergence: Obsolete ?) + grease = 1 : normal damped dynamics + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ampre + + Type: REAL + Default: 0.D0 + Description: amplitude of the randomization ( allowed values: 0.0 - 1.0 ) + meaningful only if " startingwfc = 'random' " + +-------------------------------------------------------------------- + +===END OF NAMELIST====================================================== + + +======================================================================== +NAMELIST: &IONS + + INPUT THIS NAMELIST ONLY IF CALCULATION = 'CP', 'RELAX', 'VC-RELAX', 'VC-CP', 'CP-WF', 'VC-CP-WF' + + +-------------------------------------------------------------------- + Variable: ion_dynamics + + Type: CHARACTER + Description: Specify the type of ionic dynamics. + + For constrained dynamics or constrained optimisations add the + CONSTRAINTS card (when the card is present the SHAKE algorithm is + automatically used). + 'none' : ions are kept fixed + 'sd' : steepest descent algorithm is used to minimize ionic + configuration + 'cg' : conjugate gradient algorithm is used to minimize ionic + configuration + 'damp' : damped dynamics is used to propagate ions + 'verlet' : standard Verlet algorithm is used to propagate ions + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ion_positions + + Type: CHARACTER + Default: 'default' + Description: 'default ' : if restarting, use atomic positions read from the + restart file; in all other cases, use atomic + positions from standard input. + + 'from_input' : restart the simulation with atomic positions read + from standard input, even if restarting. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ion_velocities + + Type: CHARACTER + Default: 'default' + See: tempw + Description: initial ionic velocities + 'default' : restart the simulation with atomic velocities read + from the restart file + 'change_step' : restart the simulation with atomic velocities read + from the restart file, with rescaling due to the + timestep change, specify the old step via tolp + as in tolp = 'old_time_step_value' in au + 'random' : start the simulation with random atomic velocities + 'from_input' : restart the simulation with atomic velocities read + from standard input - see card 'ATOMIC_VELOCITIES' + BEWARE: works only if restart_mode='from_scratch', + tested only with electrons_dynamics='cg' + 'zero' : restart the simulation with atomic velocities set + to zero + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ion_damping + + Type: REAL + Default: 0.2D0 + Description: damping frequency times delta t, optimal values could be + calculated with the formula : + SQRT( 0.5 * LOG( ( E1 - E2 ) / ( E2 - E3 ) ) ) + where E1, E2, E3 are successive values of the DFT total energy + in a steepest descent simulations. + meaningful only if " ion_dynamics = 'damp' " + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ion_radius(i), i=1,ntyp + + Type: REAL + Default: 0.5 a.u. for all species + Description: ion_radius(i): pseudo-atomic radius of the i-th atomic species + used in Ewald summation. Typical values: between 0.5 and 2. + Results should NOT depend upon such parameters if their values + are properly chosen. See also "iesr". + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: iesr + + Type: INTEGER + Default: 1 + Description: The real-space contribution to the Ewald summation is performed + on iesr*iesr*iesr cells. Typically iesr=1 is sufficient to have + converged results. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ion_nstepe + + Type: INTEGER + Default: 1 + Description: number of electronic steps per ionic step. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: remove_rigid_rot + + Type: LOGICAL + Default: .FALSE. + Description: This keyword is useful when simulating the dynamics and/or the + thermodynamics of an isolated system. If set to true the total + torque of the internal forces is set to zero by adding new forces + that compensate the spurious interaction with the periodic + images. This allows for the use of smaller supercells. + + BEWARE: since the potential energy is no longer consistent with + the forces (it still contains the spurious interaction with the + repeated images), the total energy is not conserved anymore. + However the dynamical and thermodynamical properties should be + in closer agreement with those of an isolated system. + Also the final energy of a structural relaxation will be higher, + but the relaxation itself should be faster. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ion_temperature + + Type: CHARACTER + Default: 'not_controlled' + Description: 'nose' : control ionic temperature using Nose-Hoover + thermostat see parameters "fnosep", "tempw", + "nhpcl", "ndega", "nhptyp" + 'rescaling' : control ionic temperature via velocities + rescaling. see parameter "tolp" + 'not_controlled' : ionic temperature is not controlled + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: tempw + + Type: REAL + Default: 300.D0 + Description: value of the ionic temperature (in Kelvin) forced by the + temperature control. + meaningful only with " ion_temperature /= 'not_controlled' " + or when the initial velocities are set to 'random' + "ndega" controls number of degrees of freedom used in + temperature calculation + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: fnosep + + Type: REAL + Default: 1.D0 + Description: oscillation frequency of the nose thermostat (in terahertz) + [note that 3 terahertz = 100 cm^-1] + meaningful only with " ion_temperature = 'nose' " + for Nose-Hoover chain one can set frequencies of all thermostats + ( fnosep = X Y Z etc. ) If only first is set, the defaults for + the others will be same. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: tolp + + Type: REAL + Default: 100.D0 + Description: tolerance (in Kelvin) of the rescaling. When ionic temperature + differs from "tempw" more than "tolp" apply rescaling. + meaningful only with " ion_temperature = 'rescaling' " + and with ion_velocities='change_step', where it specifies + the old timestep + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: nhpcl + + Type: INTEGER + Default: 1 + Description: number of thermostats in the Nose-Hoover chain + currently maximum allowed is 4 + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: nhptyp + + Type: INTEGER + Default: 0 + Description: type of the "massive" Nose-Hoover chain thermostat + nhptyp=1 uses a NH chain per each atomic type + nhptyp=2 uses a NH chain per atom, this one is useful + for extremely rapid equipartitioning (equilibration is a + different beast) + nhptyp=3 together with nhgrp allows fine grained thermostat + control + NOTE: if using more than 1 thermostat per system there will + be a common thermostat added on top of them all, to disable + this common thermostat specify nhptyp=-X instead of nhptyp=X + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: nhgrp(i), i=1,ntyp + + Type: INTEGER + Default: 0 + Description: specifies which thermostat group to use for given atomic type + when >0 assigns all the atoms in this type to thermostat + labeled nhgrp(i), when =0 each atom in the type gets its own + thermostat. Finally, when <0, then this atomic type will have + temperature "not controlled". Example: HCOOLi, with types H (1), C(2), O(3), Li(4); + setting nhgrp={2 2 0 -1} will add a common thermostat for both H & C, + one thermostat per each O (2 in total), and a non-updated thermostat + for Li which will effectively make temperature for Li "not controlled" + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: fnhscl(i), i=1,ntyp + + Type: REAL + Default: (Nat_{total}-1)/Nat_{total} + Description: these are the scaling factors to be used together with nhptyp=3 and nhgrp(i) + in order to take care of possible reduction in the degrees of freedom due to + constraints. Suppose that with the previous example HCOOLi, C-H bond is + constrained. Then, these 2 atoms will have 5 degrees of freedom in total instead + of 6, and one can set fnhscl={5/6 5/6 1. 1.}. This way the target kinetic energy + for H&C will become 6(kT/2)*5/6 = 5(kT/2). This option is to be used for + simulations with many constraints, such as rigid water with something else in there + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ndega + + Type: INTEGER + Default: 0 + Description: number of degrees of freedom used for temperature calculation + ndega <= 0 sets the number of degrees of freedom to + [3*nat-abs(ndega)], ndega > 0 is used as the target number + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: tranp(i), i=1,ntyp + + Type: LOGICAL + See: amprp + Default: .false. + Description: If .TRUE. randomize ionic positions for the + atomic type corresponding to the index. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: amprp(i), i=1,ntyp + + Type: REAL + See: amprp + Default: 0.D0 + Description: amplitude of the randomization for the atomic type corresponding + to the index i ( allowed values: 0.0 - 1.0 ). + meaningful only if " tranp(i) = .TRUE.". + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: greasp + + Type: REAL + Default: 1.D0 + Description: same as "grease", for ionic damped dynamics. + +-------------------------------------------------------------------- + +===END OF NAMELIST====================================================== + + +======================================================================== +NAMELIST: &CELL + + INPUT THIS NAMELIST ONLY IF CALCULATION = 'VC-RELAX', 'VC-CP', 'VC-CP-WF' + + +-------------------------------------------------------------------- + Variable: cell_parameters + + Type: CHARACTER + Description: 'default' : restart the simulation with cell parameters read + from the restart file or "celldm" if + "restart = 'from_scratch'" + 'from_input' : restart the simulation with cell parameters + from standard input. + ( see the card 'CELL_PARAMETERS' ) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: cell_dynamics + + Type: CHARACTER + Default: 'none' + Description: set how cell should be moved + 'none' : cell is kept fixed + 'sd' : steepest descent algorithm is used to optimise the + cell + 'damp-pr' : damped dynamics is used to optimise the cell + ( Parrinello-Rahman method ). + 'pr' : standard Verlet algorithm is used to propagate + the cell ( Parrinello-Rahman method ). + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: cell_velocities + + Type: CHARACTER + Description: 'zero' : restart setting cell velocity to zero + 'default' : restart using cell velocity of the previous run + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: cell_damping + + Type: REAL + Default: 0.1D0 + Description: damping frequency times delta t, optimal values could be + calculated with the formula : + SQRT( 0.5 * LOG( ( E1 - E2 ) / ( E2 - E3 ) ) ) + where E1, E2, E3 are successive values of the DFT total energy + in a steepest descent simulations. + meaningful only if " cell_dynamics = 'damp' " + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: press + + Type: REAL + Default: 0.D0 + Description: Target pressure [KBar] in a variable-cell md or relaxation run. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: wmass + + Type: REAL + Default: 0.75*Tot_Mass/pi**2 for Parrinello-Rahman MD; + 0.75*Tot_Mass/pi**2/Omega**(2/3) for Wentzcovitch MD + Description: Fictitious cell mass [amu] for variable-cell simulations + (both 'vc-md' and 'vc-relax') + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: cell_factor + + Type: REAL + Default: 1.2D0 + Description: Used in the construction of the pseudopotential tables. + It should exceed the maximum linear contraction of the + cell during a simulation. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: cell_temperature + + Type: CHARACTER + Default: 'not_controlled' + Description: 'nose' : control cell temperature using Nose thermostat + see parameters "fnoseh" and "temph". + 'rescaling' : control cell temperature via velocities + rescaling. + 'not_controlled' : cell temperature is not controlled. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: temph + + Type: REAL + Default: 0.D0 + Description: value of the cell temperature (in ???) forced + by the temperature control. + meaningful only with " cell_temperature /= 'not_controlled' " + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: fnoseh + + Type: REAL + Default: 1.D0 + Description: oscillation frequency of the nose thermostat (in terahertz) + meaningful only with " cell_temperature = 'nose' " + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: greash + + Type: REAL + Default: 1.D0 + Description: same as "grease", for cell damped dynamics + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: cell_dofree + + Type: CHARACTER + Default: 'all' + Description: Select which of the cell parameters should be moved: + + all = all axis and angles are moved + x = only the x component of axis 1 (v1_x) is moved + y = only the y component of axis 2 (v2_y) is moved + z = only the z component of axis 3 (v3_z) is moved + xy = only v1_x and v2_y are moved + xz = only v1_x and v3_z are moved + yz = only v2_y and v3_z are moved + xyz = only v1_x, v2_y, v3_z are moved + shape = all axis and angles, keeping the volume fixed + 2Dxy = only x and y components are allowed to change + 2Dshape = as above, keeping the area in xy plane fixed + volume = isotropic variations of v1_x, v2_y, v3_z, keeping + the shape fixed. Should be used only with ibrav=1. + +-------------------------------------------------------------------- + +===END OF NAMELIST====================================================== + + +======================================================================== +NAMELIST: &PRESS_AI + + INPUT THIS NAMELIST ONLY WHEN TABPS = .TRUE. + + +-------------------------------------------------------------------- + Variable: abivol + + Type: LOGICAL + Default: .false. + Description: .true. for finite pressure calculations + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: abisur + + Type: LOGICAL + Default: .false. + Description: .true. for finite surface tension calculations + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: P_ext + + Type: REAL + Default: 0.D0 + Description: external pressure in GPa + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: pvar + + Type: LOGICAL + Default: .false. + Description: .true. for variable pressure calculations + pressure changes linearly with time: + Delta_P = (P_fin - P_in)/nstep + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: P_in + + Type: REAL + Default: 0.D0 + Description: only if pvar = .true. + initial value of the external pressure (GPa) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: P_fin + + Type: REAL + Default: 0.D0 + Description: only if pvar = .true. + final value of the external pressure (GPa) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: Surf_t + + Type: REAL + Default: 0.D0 + Description: Surface tension (in a.u.; typical values 1.d-4 - 1.d-3) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: rho_thr + + Type: REAL + Default: 0.D0 + Description: threshold parameter which defines the electronic charge density + isosurface to compute the 'quantum' volume of the system + (typical values: 1.d-4 - 1.d-3) + (corresponds to alpha in PRL 94 145501 (2005)) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: dthr + + Type: REAL + Default: 0.D0 + Description: thikness of the external skin of the electronic charge density + used to compute the 'quantum' surface + (typical values: 1.d-4 - 1.d-3; 50% to 100% of rho_thr) + (corresponds to Delta in PRL 94 145501 (2005)) + +-------------------------------------------------------------------- + +===END OF NAMELIST====================================================== + + +======================================================================== +NAMELIST: &WANNIER + + ONLY IF CALCULATION = 'CP-WF', 'VC-CP-WF' + + Output files used by Wannier Function options are the following + + fort.21: Used only when calwf=5, contains the full list of g-vecs. + fort.22: Used Only when calwf=5, contains the coeffs. corresponding + to the g-vectors in fort.21 + fort.24: Used with calwf=3,contains the average spread + fort.25: Used with calwf=3, contains the individual Wannier + Function Spread of each state + fort.26: Used with calwf=3, contains the wannier centers along a + trajectory. + fort.27: Used with calwf=3 and 4, contains some general runtime + information from ddyn, the subroutine that actually + does the localization of the orbitals. + fort.28: Used only if efield=.TRUE. , contains the polarization + contribution to the total energy. + + Also, The center of mass is fixed during the Molecular Dynamics. + + BEWARE : THIS WILL ONLY WORK IF THE NUMBER OF PROCESSORS IS LESS THAN OR + EQUAL TO THE NUMBER OF STATES. + + Nota Bene 1: For calwf = 5, wffort is not used. The + Wannier/Wave(function) coefficients are written to unit 22 + and the corresponding g-vectors (basis vectors) are + written to unit 21. This option gives the g-vecs and + their coeffs. in reciprocal space, and the coeffs. are + complex. You will have to convert them to real space + if you want to plot them for visualization. calwf=1 gives + the orbital densities in real space, and this is usually + good enough for visualization. + + +-------------------------------------------------------------------- + Variable: wf_efield + + Type: LOGICAL + Default: .false. + Description: If dynamics will be done in the presence of a field + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: wf_switch + + Type: LOGICAL + Default: .false. + Description: Whether to turn on the field adiabatically (adiabatic switch) + if true, then nbeg is set to 0. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: sw_len + + Type: INTEGER + Default: 1 + Description: No. of iterations over which the field will be turned on + to its final value. Starting value is 0.0 + If sw_len < 0, then it is set to 1. + If you want to just optimize structures on the presence of a + field, then you may set this to 1 and run a regular geometry + optimization. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: efx0, efy0, efz0 + + Type: REAL + See: 0.D0 + Description: Initial values of the field along x, y, and z directions + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: efx1, efy1, efz1 + + Type: REAL + See: 0.D0 + Description: Final values of the field along x, y, and z directions + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: wfsd + + Type: INTEGER + Default: 1 + Description: Localization algorithm for Wannier function calculation: + wfsd=1 Damped Dynamics + wfsd=2 Steepest-Descent / Conjugate-Gradient + wfsd=3 Jocobi Rotation + Remember, this is consistent with all the calwf options + as well as the tolw (see below). + Not a good idea to Wannier dynamics with this if you are + using restart='from_scratch' option, since the spreads + converge fast in the beginning and ortho goes bananas. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: wfdt + + Type: REAL + Default: 5.D0 + Description: The minimum step size to take in the SD/CG direction + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: maxwfdt + + Type: REAL + Default: 0.3D0 + Description: The maximum step size to take in the SD/CG direction + The code calculates an optimum step size, but that may be + either too small (takes forever to converge) or too large + (code goes crazy) . This option keeps the step size between + wfdt and maxwfdt. In my experience 0.1 and 0.5 work quite + well. (but don't blame me if it doesn't work for you) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: nit + + Type: INTEGER + Default: 10 + Description: Number of iterations to do for Wannier convergence. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: nsd + + Type: INTEGER + Default: 10 + Description: Out of a total of NIT iterations, NSD will be Steepest-Descent + and ( nit - nsd ) will be Conjugate-Gradient. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: wf_q + + Type: REAL + Default: 1500.D0 + Description: Fictitious mass of the A matrix used for obtaining + maximally localized Wannier functions. The unitary + transformation matrix U is written as exp(A) where + A is a anti-hermitian matrix. The Damped-Dynamics is performed + in terms of the A matrix, and then U is computed from A. + Usually a value between 1500 and 2500 works fine, but should + be tested. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: wf_friction + + Type: REAL + Default: 0.3D0 + Description: Damping coefficient for Damped-Dynamics. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: nsteps + + Type: INTEGER + Default: 20 + Description: Number of Damped-Dynamics steps to be performed per CP + iteration. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: tolw + + Type: REAL + Default: 1.D-8 + Description: Convergence criterion for localization. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: adapt + + Type: LOGICAL + Default: .true. + Description: Whether to adapt the damping parameter dynamically. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: calwf + + Type: INTEGER + Default: 3 + Description: Wannier Function Options, can be 1,2,3,4,5 + + 1. Output the Wannier function density, nwf and wffort + are used for this option. see below. + 2. Output the Overlap matrix O_i,j=. O is + written to unit 38. For details on how O is constructed, + see below. + 3. Perform nsteps of Wannier dynamics per CP iteration, the + orbitals are now Wannier Functions, not Kohn-Sham orbitals. + This is a Unitary transformation of the occupied subspace + and does not leave the CP Lagrangian invariant. Expectation + values remain the same. So you will **NOT** have a constant + of motion during the run. Don't freak out, its normal. + 4. This option starts for the KS states and does 1 CP iteration + and nsteps of Damped-Dynamics to generate maximally + localized wannier functions. Its useful when you have the + converged KS groundstate and want to get to the converged + Wannier function groundstate in 1 CP Iteration. + 5. This option is similar to calwf 1, except that the output is + the Wannier function/wavefunction, and not the orbital + density. See nwf below. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: nwf + + Type: INTEGER + Default: 0 + Description: This option is used with calwf 1 and calwf 5. with calwf=1, + it tells the code how many Orbital densities are to be + output. With calwf=5, set this to 1(i.e calwf=5 only writes + one state during one run. so if you want 10 states, you have + to run the code 10 times). With calwf=1, you can print many + orbital densities in a single run. + See also the PLOT_WANNIER card for specifying the states to + be printed. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: wffort + + Type: INTEGER + Default: 40 + Description: This tells the code where to dump the orbital densities. Used + only with CALWF=1. for e.g. if you want to print 2 orbital + densities, set calwf=1, nwf=2 and wffort to an appropriate + number (e.g. 40) then the first orbital density will be + output to fort.40, the second to fort.41 and so on. Note that + in the current implementation, the following units are used + 21,22,24,25,26,27,28,38,39,77,78 and whatever you define as + ndr and ndw. so use number other than these. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: writev + + Type: LOGICAL + Default: .false. + Description: Output the charge density (g-space) and the list of g-vectors + This is useful if you want to reconstruct the electrostatic + potential using the Poisson equation. If .TRUE. then the + code will output the g-space charge density and the list + if G-vectors, and STOP. + Charge density is written to : CH_DEN_G_PARA.ispin (1 or 2 + depending on the number of spin types) or CH_DEN_G_SERL.ispin + depending on if the code is being run in parallel or serial + G-vectors are written to G_PARA or G_SERL. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: exx_neigh + + Type: INTEGER + Default: 60 + Description: An initial guess on the maximum number of neighboring (overlapping) Wannier functions. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: exx_dis_cutoff + + Type: REAL + Default: 8.0 + Description: Radial cutoff distance (in bohr) for including overlapping Wannier function pairs + in EXX calculations. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: exx_poisson_eps + + Type: REAL + Default: 1.0D-6 + Description: Poisson solver convergence criterion during computation of the EXX potential. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: exx_ps_rcut_self + + Type: REAL + Default: 6.0 + Description: Radial cutoff distance (in bohr) to compute the self EXX energy. + This distance determines the radius of the Poisson sphere centered at + a given Wannier function center, and should be large enough to cover + the majority of the orbital charge density. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: exx_ps_rcut_pair + + Type: REAL + Default: 5.0 + Description: Radial cutoff distance (in bohr) to compute the pair EXX energy. + This distance determines the radius of the Poisson sphere centered at + the midpoint of two overlapping Wannier functions, and should be + large enough to cover the majority of the orbital overlap charge density. + This parameter can generally be chosen as smaller than exx_ps_rcut_self. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: exx_me_rcut_self + + Type: REAL + Default: 10.0 + Description: Radial cutoff distance (in bohr) for the multipole-expansion sphere + centered at a given Wannier function center. + The far-field self EXX potential in this sphere is generated with + multipole expansion of the orbital charge density. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: exx_me_rcut_pair + + Type: REAL + Default: 7.0 + Description: Radial cutoff distance (in bohr) for the multipole-expansion sphere + centered at the midpoint of two overlapping Wannier functions. + The far-field pair EXX potential in this sphere is generated with + a multipole expansion of the orbital overlap charge density. + This parameter can generally be chosen as smaller than exx_me_rcut_self. + +-------------------------------------------------------------------- + +===END OF NAMELIST====================================================== + + +======================================================================== +CARD: ATOMIC_SPECIES + + ///////////////////////////////////////// + // Syntax: // + ///////////////////////////////////////// + + ATOMIC_SPECIES + X(1) Mass_X(1) PseudoPot_X(1) + X(2) Mass_X(2) PseudoPot_X(2) + . . . + X(ntyp) Mass_X(ntyp) PseudoPot_X(ntyp) + + ///////////////////////////////////////// + + DESCRIPTION OF ITEMS: + + +-------------------------------------------------------------------- + Variable: X + + Type: CHARACTER + Description: label of the atom. Acceptable syntax: + chemical symbol X (1 or 2 characters, case-insensitive) + or chemical symbol plus a number or a letter, as in + "Xn" (e.g. Fe1) or "X_*" or "X-*" (e.g. C1, C_h; + max total length cannot exceed 3 characters) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: Mass_X + + Type: REAL + Description: mass of the atomic species [amu: mass of C = 12] + not used if calculation='scf', 'nscf', 'bands' + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: PseudoPot_X + + Type: CHARACTER + Description: 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 + +-------------------------------------------------------------------- + +===END OF CARD========================================================== + + +======================================================================== +CARD: ATOMIC_POSITIONS { alat | bohr | angstrom | crystal } + + ________________________________________________________________________ + * IF calculation == 'bands' OR calculation == 'nscf' : + + Specified atomic positions will be IGNORED and those from the + previous scf calculation will be used instead !!! + + + * ELSE IF : + + ///////////////////////////////////////// + // Syntax: // + ///////////////////////////////////////// + + ATOMIC_POSITIONS { alat | bohr | angstrom | crystal } + X(1) x(1) y(1) z(1) { if_pos(1)(1) if_pos(2)(1) if_pos(3)(1) } + X(2) x(2) y(2) z(2) { if_pos(1)(2) if_pos(2)(2) if_pos(3)(2) } + . . . + X(nat) x(nat) y(nat) z(nat) { if_pos(1)(nat) if_pos(2)(nat) if_pos(3)(nat) } + + ///////////////////////////////////////// + + + ENDIF + ________________________________________________________________________ + + DESCRIPTION OF ITEMS: + + +-------------------------------------------------------------------- + Card's flags: { alat | bohr | angstrom | crystal } + + Default: (DEPRECATED) bohr + Description: alat : atomic positions are in cartesian coordinates, + in units of the lattice parameter (either + celldm(1) or A). + + bohr : atomic positions are in cartesian coordinate, + in atomic units (i.e. Bohr). + If no option is specified, 'bohr' is assumed; + not specifying units is DEPRECATED and will no + longer be allowed in the future + + angstrom: atomic positions are in cartesian coordinates, + in Angstrom + + crystal : atomic positions are in crystal coordinates, i.e. + in relative coordinates of the primitive lattice + vectors as defined either in card CELL_PARAMETERS + or via the ibrav + celldm / a,b,c... variables + +-------------------------------------------------------------------- + + + +-------------------------------------------------------------------- + Variable: X + + Type: CHARACTER + Description: label of the atom as specified in ATOMIC_SPECIES + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: x, y, z + + Type: REAL + Description: atomic positions + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: if_pos(1), if_pos(2), if_pos(3) + + Type: INTEGER + Default: 1 + Description: component i of the force for this atom is multiplied by if_pos(i), + which must be either 0 or 1. Used to keep selected atoms and/or + selected components fixed in MD dynamics or + structural optimization run. + +-------------------------------------------------------------------- + +===END OF CARD========================================================== + + +======================================================================== +CARD: ATOMIC_VELOCITIES { a.u } + + OPTIONAL CARD, READS VELOCITIES FROM STANDARD INPUT + + when starting with ion_velocities="from_input" it is convenient + to perform few steps (~5-10) with a smaller time step (0.5 a.u.). + The velocities must be expressed using the same length units + indicated in the card ATOMIC_POSITIONS, divided by time + in atomic units. + + ///////////////////////////////////////// + // Syntax: // + ///////////////////////////////////////// + + ATOMIC_VELOCITIES { a.u } + V(1) vx(1) vy(1) vz(1) + V(2) vx(2) vy(2) vz(2) + . . . + V(nat) vx(nat) vy(nat) vz(nat) + + ///////////////////////////////////////// + + DESCRIPTION OF ITEMS: + + +-------------------------------------------------------------------- + Card's flags: { a.u } + + +-------------------------------------------------------------------- + + + +-------------------------------------------------------------------- + Variable: V + + Type: CHARACTER + Description: label of the atom as specified in ATOMIC_SPECIES + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: vx, vy, vz + + Type: REAL + Description: atomic velocities along x y and z direction + +-------------------------------------------------------------------- + +===END OF CARD========================================================== + + +======================================================================== +CARD: CELL_PARAMETERS { bohr | angstrom | alat } + + OPTIONAL CARD, NEEDED ONLY IF IBRAV = 0 IS SPECIFIED, IGNORED OTHERWISE ! + + ///////////////////////////////////////// + // Syntax: // + ///////////////////////////////////////// + + CELL_PARAMETERS { bohr | angstrom | alat } + v1(1) v1(2) v1(3) + v2(1) v2(2) v2(3) + v3(1) v3(2) v3(3) + + ///////////////////////////////////////// + + DESCRIPTION OF ITEMS: + + +-------------------------------------------------------------------- + Card's flags: { bohr | angstrom | alat } + + Description: 'bohr'/'angstrom': lattice vectors in bohr radii / angstrom. + 'alat' / nothing specified: lattice vectors in units or the + lattice parameter (either celldm(1) or a). Not specifing + units is DEPRECATED and will not be allowed in the future. + If nothing specified and no lattice parameter specified, + 'bohr' is assumed - DEPRECATED, will no longer be allowed + +-------------------------------------------------------------------- + + + +-------------------------------------------------------------------- + Variables: v1, v2, v3 + + Type: REAL + Description: Crystal lattice vectors: + v1(1) v1(2) v1(3) ... 1st lattice vector + v2(1) v2(2) v2(3) ... 2nd lattice vector + v3(1) v3(2) v3(3) ... 3rd lattice vector + +-------------------------------------------------------------------- + +===END OF CARD========================================================== + + +======================================================================== +CARD: REF_CELL_PARAMETERS { bohr | angstrom } + + OPTIONAL CARD, NEEDED ONLY IF ONE WANTS TO DO VARIABLE CELL CALCULATIONS ACCURATELY. + THE REFERENCE CELL GENERATES ADDITIONAL BUFFER PLANEWAVES. + + ///////////////////////////////////////// + // Syntax: // + ///////////////////////////////////////// + + REF_CELL_PARAMETERS { bohr | angstrom } + v1(1) v1(2) v1(3) + v2(1) v2(2) v2(3) + v3(1) v3(2) v3(3) + + ///////////////////////////////////////// + + DESCRIPTION OF ITEMS: + + +-------------------------------------------------------------------- + Card's flags: { bohr | angstrom } + + Description: bohr / angstrom: reference cell parameters in bohr radii / angstrom. + + To mimic a constant effective planewave kinetic energy (ecfixed) during a + variable-cell calculation, the specified reference cell has to be large enough + such that the individual cell vector lengths of the fluctuating cell do not + exceed the corresponding reference lattice vector lengths during the entire + calculation. The cost of the calculation will increase with the increasing + size of the reference cell. The user must test for the proper reference cell + parameters. + + The reference cell parameters should be used in conjunction with q2sigma, + qcutz, and ecfixed. See q2sigma for more information about mimicking constant + effective planewave kinetic energy (ecfixed) during variable-cell calculations. + + The reference cell parameters should be chosen as an isotropic scaling of the + initial cell of the system. This means that the reference cell should have + the same shape as the initial simulatoin cell. The reference cell parameters should + NOT be changed throughout a given simulatoin. Typically, 2%-10% scaling of + the unit cell vectors are sufficient. However, the cell fluctuations depend on + the system and the thermodynamic conditions. So again user must test for the proper + choice of reference cell parameters. + +-------------------------------------------------------------------- + + + +-------------------------------------------------------------------- + Variables: v1, v2, v3 + + Type: REAL + Description: REF_CELL_PARAMETERS { bohr | angstrom } + v1(1) v1(2) v1(3) ... 1st reference lattice vector + v2(1) v2(2) v2(3) ... 2nd reference lattice vector + v3(1) v3(2) v3(3) ... 3rd reference lattice vector + +-------------------------------------------------------------------- + +===END OF CARD========================================================== + + +======================================================================== +CARD: CONSTRAINTS + + OPTIONAL CARD, USED FOR CONSTRAINED DYNAMICS OR CONSTRAINED OPTIMISATIONS + + When this card is present the SHAKE algorithm is automatically used. + + ///////////////////////////////////////// + // Syntax: // + ///////////////////////////////////////// + + CONSTRAINTS + nconstr { constr_tol } + constr_type(1) constr(1)(1) constr(2)(1) [ constr(3)(1) constr(4)(1) ] { constr_target(1) } + constr_type(2) constr(1)(2) constr(2)(2) [ constr(3)(2) constr(4)(2) ] { constr_target(2) } + . . . + constr_type(nconstr) constr(1)(nconstr) constr(2)(nconstr) [ constr(3)(nconstr) constr(4)(nconstr) ] { constr_target(nconstr) } + + ///////////////////////////////////////// + + DESCRIPTION OF ITEMS: + + +-------------------------------------------------------------------- + Variable: nconstr + + Type: INTEGER + Description: Number of constraints. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: constr_tol + + Type: REAL + Description: Tolerance for keeping the constraints satisfied. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: constr_type + + Type: CHARACTER + Description: Type of constrain : + + 'type_coord' : constraint on global coordination-number, i.e. the + average number of atoms of type B surrounding the + atoms of type A. The coordination is defined by + using a Fermi-Dirac. + (four indexes must be specified). + + 'atom_coord' : constraint on local coordination-number, i.e. the + average number of atoms of type A surrounding a + specific atom. The coordination is defined by + using a Fermi-Dirac. + (four indexes must be specified). + + 'distance' : constraint on interatomic distance + (two atom indexes must be specified). + + 'planar_angle' : constraint on planar angle + (three atom indexes must be specified). + + 'torsional_angle' : constraint on torsional angle + (four atom indexes must be specified). + + 'bennett_proj' : constraint on the projection onto a given direction + of the vector defined by the position of one atom + minus the center of mass of the others. + ( Ch.H. Bennett in Diffusion in Solids, Recent + Developments, Ed. by A.S. Nowick and J.J. Burton, + New York 1975 ). + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: constr(1), constr(2), constr(3), constr(4) + + Description: These variables have different meanings + for different constraint types: + + 'type_coord' : constr(1) is the first index of the + atomic type involved + constr(2) is the second index of the + atomic type involved + constr(3) is the cut-off radius for + estimating the coordination + constr(4) is a smoothing parameter + + 'atom_coord' : constr(1) is the atom index of the + atom with constrained coordination + constr(2) is the index of the atomic + type involved in the coordination + constr(3) is the cut-off radius for + estimating the coordination + constr(4) is a smoothing parameter + + 'distance' : atoms indices object of the + constraint, as they appear in + the 'ATOMIC_POSITION' CARD + + 'planar_angle', 'torsional_angle' : atoms indices object of the + constraint, as they appear in the + 'ATOMIC_POSITION' CARD (beware the + order) + + 'bennett_proj' : constr(1) is the index of the atom + whose position is constrained. + constr(2:4) are the three coordinates + of the vector that specifies the + constraint direction. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: constr_target + + Type: REAL + Description: Target for the constrain ( angles are specified in degrees ). + This variable is optional. + +-------------------------------------------------------------------- + +===END OF CARD========================================================== + + +======================================================================== +CARD: OCCUPATIONS + + OPTIONAL CARD, USED ONLY IF OCCUPATIONS = 'FROM_INPUT', IGNORED OTHERWISE ! + + ///////////////////////////////////////// + // Syntax: // + ///////////////////////////////////////// + + OCCUPATIONS + f_inp1(1) f_inp1(2) . . . f_inp1(nbnd) + [ f_inp2(1) f_inp2(2) . . . f_inp2(nbnd) ] + + + ///////////////////////////////////////// + + DESCRIPTION OF ITEMS: + + +-------------------------------------------------------------------- + Variable: f_inp1 + + Type: REAL + Description: Occupations of individual states (MAX 10 PER LINE). + For spin-polarized calculations, these are majority spin states. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: f_inp2 + + Type: REAL + Description: Occupations of minority spin states (MAX 10 PER LINE) + To be specified only for spin-polarized calculations. + +-------------------------------------------------------------------- + +===END OF CARD========================================================== + + +======================================================================== +CARD: ATOMIC_FORCES + + OPTIONAL CARD USED TO SPECIFY EXTERNAL FORCES ACTING ON ATOMS + + ///////////////////////////////////////// + // Syntax: // + ///////////////////////////////////////// + + ATOMIC_FORCES + X(1) fx(1) fy(1) fz(1) + X(2) fx(2) fy(2) fz(2) + . . . + X(nat) fx(nat) fy(nat) fz(nat) + + ///////////////////////////////////////// + + DESCRIPTION OF ITEMS: + + +-------------------------------------------------------------------- + Variable: X + + Type: CHARACTER + Description: label of the atom as specified in ATOMIC_SPECIES + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: fx, fy, fz + + Type: REAL + Description: external force on atom X (cartesian components, Ha/a.u. units) + +-------------------------------------------------------------------- + +===END OF CARD========================================================== + + +======================================================================== +CARD: PLOT_WANNIER + + OPTIONAL CARD, INDICES OF THE STATES THAT HAVE TO BE PRINTED (ONLY FOR CALF=1 AND CALF=5). + + ///////////////////////////////////////// + // Syntax: // + ///////////////////////////////////////// + + PLOT_WANNIER + iwf(1) + iwf(2) + . . . + iwf(nwf) + + ///////////////////////////////////////// + + DESCRIPTION OF ITEMS: + + +-------------------------------------------------------------------- + Variable: iwf + + Type: INTEGER + Description: These are the indices of the states that you want to output. + Also used with calwf = 1 and 5. If calwf = 1, then you need + nwf indices here (each in a new line). If CALWF=5, then just + one index in needed. + +-------------------------------------------------------------------- + +===END OF CARD========================================================== + + +======================================================================== +CARD: AUTOPILOT + + OPTIONAL CARD, CHANGES SOME VARIABLES ON THE FLY OF THE CALCULATION. + + NOTICE THAT THE RULES HAS TO BE ORDERED IN WITH TIME STEP AND THE CARD HAS + TO BE TERMINATED WITH "ENDRULES" + + ///////////////////////////////////////// + // Syntax: // + ///////////////////////////////////////// + + AUTOPILOT + pilot_rule(1) + pilot_rule(2) + . . . + pilot_rule(nevent) + + ///////////////////////////////////////// + + DESCRIPTION OF ITEMS: + + +-------------------------------------------------------------------- + Variable: pilot_rule + + Type: RULE + Description: To set up a rule, one can add the scheduled steps with on_step and + separate the corresponding change in parameters with a column. + + See a simple example bellow: + + AUTOPILOT + on_step = 31 : dt = 5.0 + on_step = 91 : iprint = 100 + on_step = 91 : isave = 100 + on_step = 191 : ion_dynamics = 'damp' + on_step = 191 : electron_damping = 0.00 + on_step = 691 : ion_temperature = 'nose' + on_step = 691 : tempw = 150.0 + ENDRULES + +-------------------------------------------------------------------- + +===END OF CARD========================================================== + + +This file has been created by helpdoc utility on Fri Jun 22 17:10:59 CEST 2018 diff --git a/CPV/Doc/INPUT_CPPP.html b/CPV/Doc/INPUT_CPPP.html new file mode 100644 index 0000000000000000000000000000000000000000..11f44456feab7fa351167f34c436a61ff55f44c9 --- /dev/null +++ b/CPV/Doc/INPUT_CPPP.html @@ -0,0 +1,412 @@ + + + + + +cppp.x: input description + + + + + +
+

Input File Description

+

Program: + cppp.x / CP / Quantum Espresso (version: svn) +

+
+
+

TABLE OF CONTENTS

+
+ + +

INTRODUCTION

+

&INPUTPP

+
+prefix | fileout | output | outdir | lcharge | lforces | ldynamics | lpdb | lrotation | ns1 | ns2 | ns3 | np1 | np2 | np3 | nframes | ndr | atomic_number | charge_density | state | lbinary +
+
+
+
+

INTRODUCTION

+
+=============================================================================
+                            CP Post-Processing code (cppp.x)
+=============================================================================
+
+The cppp.x code is an utility that can be used to extract data from the CP
+restart and CP trajectory files.
+
+INPUT:
+=====
+
+the program read the input parameters from the standard input or from
+any other file specified through the usual "-input" command line flag.
+The input parameters, in the input file, should be specified in the inputpp
+namelist follow:
+
+&INPUTPP
+  ...
+  cppp_input_parameter
+  ...
+/
+   
+
+ + + +

Namelist: &INPUTPP +

+ + + + + + + + + + +
prefixCHARACTER
Default: 'cp' +
+basename prepended to cp.x output filenames: cp.evp, cp.pos ....
+         
+ + + + + + + + + + + +
fileoutCHARACTER
Default: 'out' +
+basename of the cppp.x output files
+         
+ + + + + + + + + + + +
outputCHARACTER
Default: 'xsf' +
+a string describing the output format to be performed,
+allowed values: 'xsf', 'grd', 'xyz'
+
+    xsf     xcrysden format
+    grd     GRD gaussian 3D grid format
+    xyz     XMOL format
+         
+ + + + + + + + + + + +
outdirCHARACTER
Default: './' +
+directory containing the CP trajectory files (.evp .pos .cel ...)
+and restart files ( .save ) to be processed
+         
+ + + + + + + + + + + +
lchargeLOGICAL
Default: .false. +
+This logical flag control the processing of charge density.
+
+   .TRUE.  generate output file containing charge density.
+           The file format is controlled by the "output" parameter
+
+   .FALSE. do not generate charge density file
+         
+ + + + + + + + + + + +
lforcesLOGICAL
Default: .false. +
+This logical flag control the processing of forces.
+
+    .TRUE.  extract forces from trajectory files and write
+            them to xcrysden file
+
+    .FALSE. do not proces forces
+         
+ + + + + + + + + + + +
ldynamicsLOGICAL
Default: .false. +
+This logical flag control the processing of atoms trajectory.
+
+    .TRUE.  process CP trajectory files and generate a trajectory
+            file for xcrysden (.axsf)
+
+    .FALSE. do not process trajectory
+         
+ + + + + + + + + + + +
lpdbLOGICAL
Default: .false. +
+This logical flag control the generation of a pdb file.
+
+    .TRUE.  generate a pdb file containing positions and cell
+            of the simulated system
+
+    .FALSE. do not generate pdb file
+         
+ + + + + + + + + + + +
lrotationLOGICAL
Default: .false. +
+This logical flag control the rotation of the cell
+
+    .TRUE.  rotate the system cell in space in order to have
+            the a lattice parameter laying on the x axis,
+            the b lattice parameter laying on the xy plane
+
+    .FALSE. do not rotate cell
+         
+ + + + + + + + + + + +
+ns1, ns2, ns3INTEGER
Default: 0 +
+Dimensions of the charge density 3D grid.
+
+If ns1, ns2, ns3 are 0 or not specified, the dimensions
+of the grid in the CP run are assumed; otherwise chargedensity
+is re-sampled on the GRID specified with ns1,ns2,ns3
+         
+ + + + + + + + + + + +
+np1, np2, np3INTEGER
Default: 1 +
+Number of replicas of atomic positions along cell parameters.
+
+If ns1, ns2, ns3 are 1 or not specified, cppp.x do not
+replicate atomi positions in space.
+
+If ns1 ns2 ns3 are > 1 cppp.x replicate the positions along
+a ns1 times, along b ns2 times and along c ns3 times.
+the atomic positions used in the simunation.
+         
+ + + + + + + + + + + +
nframesINTEGER
Default: 1 +
+number of MD step to be read to build the trajectory
+         
+ + + + + + + + + + + +
ndrINTEGER
Default: 51 +
+CP restart file number to post process
+         
+ + + + + + + + + + + +
atomic_number(i), i=1,ntypINTEGER
Default: 1 +
+Specify the atomic number of the species in CP trajectory and
+restart file.
+
+atomic_number(1)  specify the atomic number of the first specie
+atomic_number(2)  specify the atomic number of the second specie
+....
+         
+ + + + + + + + + + + +
charge_densityCHARACTER
Default: 'full' +
+specify the component of the charge density to plot,
+allowed values:
+
+'full'   print the full electronic charge
+'spin'   print the spin polarization (for LSD calculations)
+         
+ + + + + + + + + + + +
stateCHARACTER
Default: ' ' +
+specify the Kohn-Sham state to plot, example: 'KS_1'
+         
+ + + + + + + + + + + +
lbinaryLOGICAL
Default: .TRUE. +
+specify the file format of the wave function files
+to be read and plotted
+         
+ +
+
+ + This file has been created by helpdoc utility on Fri Jun 22 17:11:00 CEST 2018. + + + diff --git a/CPV/Doc/INPUT_CPPP.txt b/CPV/Doc/INPUT_CPPP.txt new file mode 100644 index 0000000000000000000000000000000000000000..edf8d3b87a6e1d086a2a57ad6827b76685380abc --- /dev/null +++ b/CPV/Doc/INPUT_CPPP.txt @@ -0,0 +1,228 @@ +*** FILE AUTOMATICALLY CREATED: DO NOT EDIT, CHANGES WILL BE LOST *** + +------------------------------------------------------------------------ +INPUT FILE DESCRIPTION + +Program: cppp.x / CP / Quantum Espresso (version: svn) +------------------------------------------------------------------------ + + +============================================================================= + CP Post-Processing code (cppp.x) +============================================================================= + +The cppp.x code is an utility that can be used to extract data from the CP +restart and CP trajectory files. + +INPUT: +===== + +the program read the input parameters from the standard input or from +any other file specified through the usual "-input" command line flag. +The input parameters, in the input file, should be specified in the inputpp +namelist follow: + +&INPUTPP + ... + cppp_input_parameter + ... +/ + + + +======================================================================== +NAMELIST: &INPUTPP + + +-------------------------------------------------------------------- + Variable: prefix + + Type: CHARACTER + Default: 'cp' + Description: basename prepended to cp.x output filenames: cp.evp, cp.pos .... + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: fileout + + Type: CHARACTER + Default: 'out' + Description: basename of the cppp.x output files + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: output + + Type: CHARACTER + Default: 'xsf' + Description: a string describing the output format to be performed, + allowed values: 'xsf', 'grd', 'xyz' + + xsf xcrysden format + grd GRD gaussian 3D grid format + xyz XMOL format + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: outdir + + Type: CHARACTER + Default: './' + Description: directory containing the CP trajectory files (.evp .pos .cel ...) + and restart files ( .save ) to be processed + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: lcharge + + Type: LOGICAL + Default: .false. + Description: This logical flag control the processing of charge density. + + .TRUE. generate output file containing charge density. + The file format is controlled by the "output" parameter + + .FALSE. do not generate charge density file + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: lforces + + Type: LOGICAL + Default: .false. + Description: This logical flag control the processing of forces. + + .TRUE. extract forces from trajectory files and write + them to xcrysden file + + .FALSE. do not proces forces + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ldynamics + + Type: LOGICAL + Default: .false. + Description: This logical flag control the processing of atoms trajectory. + + .TRUE. process CP trajectory files and generate a trajectory + file for xcrysden (.axsf) + + .FALSE. do not process trajectory + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: lpdb + + Type: LOGICAL + Default: .false. + Description: This logical flag control the generation of a pdb file. + + .TRUE. generate a pdb file containing positions and cell + of the simulated system + + .FALSE. do not generate pdb file + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: lrotation + + Type: LOGICAL + Default: .false. + Description: This logical flag control the rotation of the cell + + .TRUE. rotate the system cell in space in order to have + the a lattice parameter laying on the x axis, + the b lattice parameter laying on the xy plane + + .FALSE. do not rotate cell + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: ns1, ns2, ns3 + + Type: INTEGER + Default: 0 + Description: Dimensions of the charge density 3D grid. + + If ns1, ns2, ns3 are 0 or not specified, the dimensions + of the grid in the CP run are assumed; otherwise chargedensity + is re-sampled on the GRID specified with ns1,ns2,ns3 + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: np1, np2, np3 + + Type: INTEGER + Default: 1 + Description: Number of replicas of atomic positions along cell parameters. + + If ns1, ns2, ns3 are 1 or not specified, cppp.x do not + replicate atomi positions in space. + + If ns1 ns2 ns3 are > 1 cppp.x replicate the positions along + a ns1 times, along b ns2 times and along c ns3 times. + the atomic positions used in the simunation. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: nframes + + Type: INTEGER + Default: 1 + Description: number of MD step to be read to build the trajectory + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ndr + + Type: INTEGER + Default: 51 + Description: CP restart file number to post process + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: atomic_number(i), i=1,ntyp + + Type: INTEGER + Default: 1 + Description: Specify the atomic number of the species in CP trajectory and + restart file. + + atomic_number(1) specify the atomic number of the first specie + atomic_number(2) specify the atomic number of the second specie + .... + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: charge_density + + Type: CHARACTER + Default: 'full' + Description: specify the component of the charge density to plot, + allowed values: + + 'full' print the full electronic charge + 'spin' print the spin polarization (for LSD calculations) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: state + + Type: CHARACTER + Default: ' ' + Description: specify the Kohn-Sham state to plot, example: 'KS_1' + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: lbinary + + Type: LOGICAL + Default: .TRUE. + Description: specify the file format of the wave function files + to be read and plotted + +-------------------------------------------------------------------- + +===END OF NAMELIST====================================================== + + +This file has been created by helpdoc utility on Fri Jun 22 17:10:59 CEST 2018 diff --git a/CPV/Doc/user_guide.pdf b/CPV/Doc/user_guide.pdf new file mode 100644 index 0000000000000000000000000000000000000000..d7258d0a687ed4f5365d86465cd7d65197dd5d98 Binary files /dev/null and b/CPV/Doc/user_guide.pdf differ diff --git a/Doc/brillouin_zones.pdf b/Doc/brillouin_zones.pdf new file mode 100644 index 0000000000000000000000000000000000000000..7ec9da128d22a32b697aa3a8675f7d342f8400d3 Binary files /dev/null and b/Doc/brillouin_zones.pdf differ diff --git a/Doc/constraints_HOWTO.pdf b/Doc/constraints_HOWTO.pdf new file mode 100644 index 0000000000000000000000000000000000000000..4d1dd79ff84076c5e0d3bc347b0b14a78911db04 Binary files /dev/null and b/Doc/constraints_HOWTO.pdf differ diff --git a/Doc/developer_man.pdf b/Doc/developer_man.pdf new file mode 100644 index 0000000000000000000000000000000000000000..5dcac2280278483015f0d25013d420b955c4847b Binary files /dev/null and b/Doc/developer_man.pdf differ diff --git a/Doc/plumed_quick_ref.pdf b/Doc/plumed_quick_ref.pdf new file mode 100644 index 0000000000000000000000000000000000000000..632dbca7c1f55d248825ce7d8f3679037fe311c2 Binary files /dev/null and b/Doc/plumed_quick_ref.pdf differ diff --git a/Doc/user_guide.pdf b/Doc/user_guide.pdf new file mode 100644 index 0000000000000000000000000000000000000000..a989db1c6d657338c37f1560479e06273cd53cc8 Binary files /dev/null and b/Doc/user_guide.pdf differ diff --git a/NEB/Doc/INPUT_NEB.html b/NEB/Doc/INPUT_NEB.html new file mode 100644 index 0000000000000000000000000000000000000000..4fce5d44c1e91db1532f6e090cc951741005865f --- /dev/null +++ b/NEB/Doc/INPUT_NEB.html @@ -0,0 +1,717 @@ + + + + + +neb.x: input description + + + + + +
+

Input File Description

+

Program: + neb.x / NEB / Quantum Espresso (version: svn) +

+
+
+

TABLE OF CONTENTS

+
+ + +

INTRODUCTION

+

BEGIN

+
+

BEGIN_PATH_INPUT

+
+

&PATH

+
+string_method | restart_mode | nstep_path | num_of_images | opt_scheme | CI_scheme | first_last_opt | minimum_image | temp_req | ds | k_max | k_min | path_thr | use_masses | use_freezing | lfcpopt | fcp_mu | fcp_tot_charge_first | fcp_tot_charge_last +
+

CLIMBING_IMAGES

+
index1, index2, ... indexN +
+
+

BEGIN_ENGINE_INPUT

+
+

BEGIN_POSITIONS

+
+

FIRST_IMAGE

+

ATOMIC_POSITIONS

+

INTERMEDIATE_IMAGE

+

ATOMIC_POSITIONS

+

LAST_IMAGE

+

ATOMIC_POSITIONS

+
+
+
+
+
+
+

INTRODUCTION

+
+Input data format: { } = optional, [ ] = it depends, | = or
+
+All quantities whose dimensions are not explicitly specified are in
+RYDBERG ATOMIC UNITS
+
+BEWARE: TABS, DOS <CR><LF> CHARACTERS ARE POTENTIAL SOURCES OF TROUBLE
+
+neb.x DOES NOT READ FROM STANDARD INPUT !
+
+There are two ways for running a calculation with neb.x:
+
+(1) specifying a file to parse with the ./neb.x -inp or ./neb.x -input
+    command line option.
+
+(2) or specifying the number of copies of PWscf inputs with the ./neb.x -input_images
+
+For case (1) a file containing special KEYWORDS (aka SUPERCARDS) has to be
+written (see below). These KEYWORDS tell the parser which part of the file
+contains the neb specifics and which part contains the energy/force engine
+input (at the moment only PW).  After the parsing, different files are
+generated: neb.dat, with the neb specific variables, and a set of pw_*.in
+PWscf input files, i.e., one for each input position. All options for a
+single SCF calculation apply.
+
+The general structure of the file to be parsed is:
+==================================================
+
+BEGIN
+  BEGIN_PATH_INPUT
+    ... neb specific namelists and cards
+  END_PATH_INPUT
+
+  BEGIN_ENGINE_INPUT
+    ...pw specific namelists and cards
+    BEGIN_POSITIONS
+      FIRST_IMAGE
+      ...pw ATOMIC_POSITIONS card
+      INTERMEDIATE_IMAGE
+      ...pw ATOMIC_POSITIONS card
+      LAST_IMAGE
+      ...pw ATOMIC_POSITIONS card
+    END_POSITIONS
+    ... other pw specific cards
+  END_ENGINE_INPUT
+END
+
+
+For case (2) neb.dat and all pw_1.in, pw_2.in ... should be already present.
+
+Structure of the NEB-only input data (file neb.dat):
+====================================================
+
+&PATH
+  ...
+/
+
+[ CLIMBING_IMAGES
+   list of images, separated by a comma ]
+   
+
+ + + + + +

BEGIN

+Syntax of this supercard is the following:
BEGIN
  ... content of the supercard here ...
END
+and the content is: +
+ + + + + +

BEGIN_PATH_INPUT

+Syntax of this supercard is the following:
BEGIN_PATH_INPUT
  ... content of the supercard here ...
END_PATH_INPUT
+and the content is: +
+ + + +

Namelist: &PATH +

+ + + + + + + + + + +
string_methodCHARACTER
Default: 'neb' +
+
+A string describing the task to be performed. Options are:
+                  
+
+
'neb' :
+
 nudget-elastic-band
+                  
+
+
+
'smd' :
+
 string-method-dynamics
+                  
+
+
+ + + + + + + + + + + +
restart_modeCHARACTER
Default: 'from_scratch' +
+
 Options are:
+                  
+
+
'from_scratch' :
+
 from scratch
+                  
+
+
+
'restart' :
+
 from previous interrupted run
+                  
+
+
+ + + + + + + + + + + +
nstep_pathINTEGER
Default: +1 +
+number of ionic + electronic steps
+               
+ + + + + + + + + + + +
num_of_imagesINTEGER
Default: 0 +
+Number of points used to discretize the path
+(it must be larger than 3).
+               
+ + + + + + + + + + + +
opt_schemeCHARACTER
Default: 'quick-min' +
+
+Specify the type of optimization scheme:
+                  
+
+
'sd' :
+
+steepest descent
+                  
+
+
+
'broyden' :
+
+quasi-Newton Broyden's second method (suggested)
+                  
+
+
+
'broyden2' :
+
+another variant of the quasi-Newton Broyden's
+second method to be tested and compared with the
+previous one.
+                  
+
+
+
'quick-min' :
+
+an optimisation algorithm based on the
+projected velocity Verlet scheme
+                  
+
+
+
'langevin' :
+
+finite temperature langevin dynamics of the
+string (smd only). It is used to compute the
+average path and the free-energy profile.
+                  
+
+
+ + + + + + + + + + + +
CI_schemeCHARACTER
Default: 'no-CI' +
+
+Specify the type of Climbing Image scheme:
+                  
+
+
'no-CI' :
+
+climbing image is not used
+                  
+
+
+
'auto' :
+
+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_optLOGICAL
Default: .FALSE. +
+Also the first and the last configurations are optimized
+"on the fly" (these images do not feel the effect of the springs).
+               
+ + + + + + + + + + + +
minimum_imageLOGICAL
Default: .FALSE. +
+Assume a "minimum image criterion" to build the path. If an atom
+moves by more than half the length of a crystal axis between one
+image and the next in the input (before interpolation),
+an appropriate periodic replica of that atom is chosen.
+Useful to avoid jumps in the initial reaction path.
+               
+ + + + + + + + + + + +
temp_reqREAL
Default: 0.D0 Kelvin +
+Temperature used for the langevin dynamics of the string.
+               
+ + + + + + + + + + + +
dsREAL
Default: 1.D0 +
+Optimisation step length ( Hartree atomic units ).
+If opt_scheme=="broyden", ds is used as a guess for the
+diagonal part of the Jacobian matrix.
+               
+ + + + + + + + + + + +
+k_max, k_minREAL
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_thrREAL
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.
+               
+ + + + + + + + + + + +
use_massesLOGICAL
Default: .FALSE. +
+If. TRUE. the optimisation of the path is performed using
+mass-weighted coordinates. Useful together with quick-min
+optimization scheme, if some bonds are much stiffer than
+others. By assigning a larger (fictitious) mass to atoms
+with stiff bonds, one may use a longer time step "ds"
+               
+ + + + + + + + + + + +
use_freezingLOGICAL
Default: .FALSE. +
+If. TRUE. the images are optimised according to their error:
+only those images with an error larger than half of the largest
+are optimised. The other images are kept frozen.
+               
+ + + + + + + + + + + + + + + +
lfcpoptLOGICAL
Default: .FALSE. +
See:fcp_mu
+If .TRUE. perform a constant bias potential (constant-mu)
+calculation with ESM method (assume_isolated = 'esm' and
+esm_bc = 'bc2' or 'bc3' must be set in SYSTEM namelist).
+fcp_mu gives the target Fermi energy.
+See the header of PW/src/fcp.f90 for documentation
+               
+ + + + + + + + + + + + + + + +
fcp_muREAL
Default: 0.d0 +
See:lfcpopt
+If lfcpopt == .TRUE., gives the target Fermi energy [Ry].
+One can specify the total charge of the system for the first
+and last image by giving fcp_tot_charge_first and fcp_tot_charge_last
+so that the Fermi energy of these systems will be the target value,
+otherwise first_last_opt should be .TRUE.
+               
+ + + + + + + + + + + + + + + +
fcp_tot_charge_firstREAL
Default: 0.d0 +
See:lfcpopt
+Total charge of the system ('tot_charge') for the first image.
+Initial 'tot_charge' for intermediate images will be given by
+linear interpolation of fcp_tot_charge_first and fcp_tot_charge_last
+               
+ + + + + + + + + + + + + + + +
fcp_tot_charge_lastREAL
Default: 0.d0 +
See:lfcpopt
+Total charge of the system ('tot_charge') for the last image.
+Initial 'tot_charge' for intermediate images will be given by
+linear interpolation of fcp_tot_charge_first and fcp_tot_charge_last
+               
+ +
+ + + +

+ Card: CLIMBING_IMAGES

+ + +
+

+Optional card, needed only if CI_scheme == 'manual', ignored otherwise ! +

+

Syntax:

+
+CLIMBING_IMAGES
+
+
+

Description of items:

+
+ + + + + + +
index1, index2, ... indexN + INTEGER
+index1, index2, ..., indexN are indices of the images to which the
+Climbing-Image procedure apply. If more than one image is specified
+they must be separated by a comma.
+                  
+ +
+
+

END_PATH_INPUT

+ + + + + +

BEGIN_ENGINE_INPUT

+Syntax of this supercard is the following:
BEGIN_ENGINE_INPUT
  ... content of the supercard here ...
END_ENGINE_INPUT
+and the content is: +
+

+Here comes the pw.x specific namelists and cards (see file: INPUT_PW.html or INPUT_PW.txt)
+with the exception of ATOMIC_POSITIONS cards, which are specified separately within the
+BEGIN_POSITIONS/END_POSITIONS supercard as described below.
+
+So the input that follows here is of the following structure:
+
+   &CONTROL
+      ...
+   /
+   &SYSTEM
+     ...
+   /
+   &ELECTRONS
+     ...
+   /
+   ...
+         

+ + + + + +

BEGIN_POSITIONS

+Syntax of this supercard is the following:
BEGIN_POSITIONS
  ... content of the supercard here ...
END_POSITIONS
+and the content is: +
+

+NB:
+Atomic positions for all the images are specified within the BEGIN_POSITIONS / END_POSITIONS
+supercard, where each instance of ATOMIC_POSITIONS card is prefixed either by FIRST_IMAGE,
+INTERMEDIATE_IMAGE, or LAST_IMAGE keywords.
+
+Note that intermediate images are optional, i.e., there can be none or any number of
+INTERMEDIATE_IMAGE images.
+            

+ + + + +

FIRST_IMAGE

+Syntax of this supercard is the following:
FIRST_IMAGE
  ... content of the supercard here ...
+and the content is: +
+ + + +

+ Card: ATOMIC_POSITIONS { alat | bohr | angstrom | crystal | crystal_sg }

+For the description of ATOMIC_POSITIONS card see file: INPUT_PW.html or INPUT_PW.txt
+                  

+
+ + + + + + +

INTERMEDIATE_IMAGE

+Syntax of this supercard is the following:
INTERMEDIATE_IMAGE
  ... content of the supercard here ...
+and the content is: +
( Remark: There can be any number (including zero) of INTERMEDIATE_IMAGE supercards. )
+ + + +

+ Card: ATOMIC_POSITIONS { alat | bohr | angstrom | crystal | crystal_sg }

+For the description of ATOMIC_POSITIONS card see file: INPUT_PW.html or INPUT_PW.txt
+                     

+
+ + + + + +

LAST_IMAGE

+Syntax of this supercard is the following:
LAST_IMAGE
  ... content of the supercard here ...
+and the content is: +
+ + + +

+ Card: ATOMIC_POSITIONS { alat | bohr | angstrom | crystal | crystal_sg }

+For the description of ATOMIC_POSITIONS card see file: INPUT_PW.html or INPUT_PW.txt
+                  

+
+

END_POSITIONS

+

+Here can follow other pw specific cards ...
+         

+

END_ENGINE_INPUT

+

END

+
+ + This file has been created by helpdoc utility on Fri Jun 22 17:11:02 CEST 2018. + + + diff --git a/NEB/Doc/INPUT_NEB.txt b/NEB/Doc/INPUT_NEB.txt new file mode 100644 index 0000000000000000000000000000000000000000..d4219403769adf3814d68fecc734763bb7c2cadf --- /dev/null +++ b/NEB/Doc/INPUT_NEB.txt @@ -0,0 +1,473 @@ +*** FILE AUTOMATICALLY CREATED: DO NOT EDIT, CHANGES WILL BE LOST *** + +------------------------------------------------------------------------ +INPUT FILE DESCRIPTION + +Program: neb.x / NEB / Quantum Espresso (version: svn) +------------------------------------------------------------------------ + + +Input data format: { } = optional, [ ] = it depends, | = or + +All quantities whose dimensions are not explicitly specified are in +RYDBERG ATOMIC UNITS + +BEWARE: TABS, DOS CHARACTERS ARE POTENTIAL SOURCES OF TROUBLE + +neb.x DOES NOT READ FROM STANDARD INPUT ! + +There are two ways for running a calculation with neb.x: + +(1) specifying a file to parse with the ./neb.x -inp or ./neb.x -input + command line option. + +(2) or specifying the number of copies of PWscf inputs with the ./neb.x -input_images + +For case (1) a file containing special KEYWORDS (aka SUPERCARDS) has to be +written (see below). These KEYWORDS tell the parser which part of the file +contains the neb specifics and which part contains the energy/force engine +input (at the moment only PW). After the parsing, different files are +generated: neb.dat, with the neb specific variables, and a set of pw_*.in +PWscf input files, i.e., one for each input position. All options for a +single SCF calculation apply. + +The general structure of the file to be parsed is: +================================================== + +BEGIN + BEGIN_PATH_INPUT + ... neb specific namelists and cards + END_PATH_INPUT + + BEGIN_ENGINE_INPUT + ...pw specific namelists and cards + BEGIN_POSITIONS + FIRST_IMAGE + ...pw ATOMIC_POSITIONS card + INTERMEDIATE_IMAGE + ...pw ATOMIC_POSITIONS card + LAST_IMAGE + ...pw ATOMIC_POSITIONS card + END_POSITIONS + ... other pw specific cards + END_ENGINE_INPUT +END + + +For case (2) neb.dat and all pw_1.in, pw_2.in ... should be already present. + +Structure of the NEB-only input data (file neb.dat): +==================================================== + +&PATH + ... +/ + +[ CLIMBING_IMAGES + list of images, separated by a comma ] + + + +######################################################################## +| SUPERCARD: BEGIN/END +| this supercard is enclosed within the keywords: +| +| BEGIN +| ... content of the supercard here ... +| END +| +| The syntax of supercard's content follows below: + + ######################################################################## + | SUPERCARD: BEGIN_PATH_INPUT/END_PATH_INPUT + | this supercard is enclosed within the keywords: + | + | BEGIN_PATH_INPUT + | ... content of the supercard here ... + | END_PATH_INPUT + | + | The syntax of supercard's content follows below: + + ======================================================================== + NAMELIST: &PATH + + +-------------------------------------------------------------------- + Variable: string_method + + Type: CHARACTER + Default: 'neb' + Description: + A string describing the task to be performed. Options are: + + 'neb' : + nudget-elastic-band + + 'smd' : + string-method-dynamics + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: restart_mode + + Type: CHARACTER + Default: 'from_scratch' + Description: + Options are: + + 'from_scratch' : + from scratch + + 'restart' : + from previous interrupted run + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: nstep_path + + Type: INTEGER + Description: number of ionic + electronic steps + Default: 1 + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: num_of_images + + Type: INTEGER + Default: 0 + Description: Number of points used to discretize the path + (it must be larger than 3). + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: opt_scheme + + Type: CHARACTER + Default: 'quick-min' + Description: + Specify the type of optimization scheme: + + 'sd' : + steepest descent + + 'broyden' : + quasi-Newton Broyden's second method (suggested) + + 'broyden2' : + another variant of the quasi-Newton Broyden's + second method to be tested and compared with the + previous one. + + 'quick-min' : + an optimisation algorithm based on the + projected velocity Verlet scheme + + 'langevin' : + finite temperature langevin dynamics of the + string (smd only). It is used to compute the + average path and the free-energy profile. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: CI_scheme + + Type: CHARACTER + Default: 'no-CI' + Description: + Specify the type of Climbing Image scheme: + + 'no-CI' : + climbing image is not used + + 'auto' : + 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 + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: first_last_opt + + Type: LOGICAL + Default: .FALSE. + Description: Also the first and the last configurations are optimized + "on the fly" (these images do not feel the effect of the springs). + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: minimum_image + + Type: LOGICAL + Default: .FALSE. + Description: Assume a "minimum image criterion" to build the path. If an atom + moves by more than half the length of a crystal axis between one + image and the next in the input (before interpolation), + an appropriate periodic replica of that atom is chosen. + Useful to avoid jumps in the initial reaction path. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: temp_req + + Type: REAL + Default: 0.D0 Kelvin + Description: Temperature used for the langevin dynamics of the string. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ds + + Type: REAL + Default: 1.D0 + Description: Optimisation step length ( Hartree atomic units ). + If "opt_scheme"=="broyden", ds is used as a guess for the + diagonal part of the Jacobian matrix. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: k_max, k_min + + Type: REAL + Default: 0.1D0 Hartree atomic units + Description: 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. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: path_thr + + Type: REAL + Default: 0.05D0 eV / Angstrom + Description: The simulation stops when the error ( the norm of the force + orthogonal to the path in eV/A ) is less than path_thr. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: use_masses + + Type: LOGICAL + Default: .FALSE. + Description: If. TRUE. the optimisation of the path is performed using + mass-weighted coordinates. Useful together with quick-min + optimization scheme, if some bonds are much stiffer than + others. By assigning a larger (fictitious) mass to atoms + with stiff bonds, one may use a longer time step "ds" + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: use_freezing + + Type: LOGICAL + Default: .FALSE. + Description: If. TRUE. the images are optimised according to their error: + only those images with an error larger than half of the largest + are optimised. The other images are kept frozen. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: lfcpopt + + Type: LOGICAL + See: fcp_mu + Default: .FALSE. + Description: If .TRUE. perform a constant bias potential (constant-mu) + calculation with ESM method (assume_isolated = 'esm' and + esm_bc = 'bc2' or 'bc3' must be set in SYSTEM namelist). + "fcp_mu" gives the target Fermi energy. + See the header of PW/src/fcp.f90 for documentation + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: fcp_mu + + Type: REAL + See: lfcpopt + Default: 0.d0 + Description: If "lfcpopt" == .TRUE., gives the target Fermi energy [Ry]. + One can specify the total charge of the system for the first + and last image by giving "fcp_tot_charge_first" and "fcp_tot_charge_last" + so that the Fermi energy of these systems will be the target value, + otherwise "first_last_opt" should be .TRUE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: fcp_tot_charge_first + + Type: REAL + See: lfcpopt + Default: 0.d0 + Description: Total charge of the system ('tot_charge') for the first image. + Initial 'tot_charge' for intermediate images will be given by + linear interpolation of "fcp_tot_charge_first" and "fcp_tot_charge_last" + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: fcp_tot_charge_last + + Type: REAL + See: lfcpopt + Default: 0.d0 + Description: Total charge of the system ('tot_charge') for the last image. + Initial 'tot_charge' for intermediate images will be given by + linear interpolation of "fcp_tot_charge_first" and "fcp_tot_charge_last" + +-------------------------------------------------------------------- + + ===END OF NAMELIST====================================================== + + + ======================================================================== + CARD: CLIMBING_IMAGES + + OPTIONAL CARD, NEEDED ONLY IF "CI_SCHEME" == 'MANUAL', IGNORED OTHERWISE ! + + ///////////////////////////////////////// + // Syntax: // + ///////////////////////////////////////// + + CLIMBING_IMAGES + index1, index2, ... indexN + + ///////////////////////////////////////// + + DESCRIPTION OF ITEMS: + + +-------------------------------------------------------------------- + Variables: index1, index2, ... indexN + + Type: INTEGER + Description: index1, index2, ..., indexN are indices of the images to which the + Climbing-Image procedure apply. If more than one image is specified + they must be separated by a comma. + +-------------------------------------------------------------------- + + + ===END OF CARD========================================================== + + + ### END OF SUPERCARD : BEGIN_PATH_INPUT/END_PATH_INPUT ################ + + + ######################################################################## + | SUPERCARD: BEGIN_ENGINE_INPUT/END_ENGINE_INPUT + | this supercard is enclosed within the keywords: + | + | BEGIN_ENGINE_INPUT + | ... content of the supercard here ... + | END_ENGINE_INPUT + | + | The syntax of supercard's content follows below: + + Here comes the pw.x specific namelists and cards (see file: "" or INPUT_PW.txt) + with the exception of "ATOMIC_POSITIONS" cards, which are specified separately within the + "BEGIN_POSITIONS"/END_POSITIONS supercard as described below. + + So the input that follows here is of the following structure: + + &CONTROL + ... + / + &SYSTEM + ... + / + &ELECTRONS + ... + / + ... + + ######################################################################## + | SUPERCARD: BEGIN_POSITIONS/END_POSITIONS + | this supercard is enclosed within the keywords: + | + | BEGIN_POSITIONS + | ... content of the supercard here ... + | END_POSITIONS + | + | The syntax of supercard's content follows below: + + NB: + Atomic positions for all the images are specified within the "BEGIN_POSITIONS" / END_POSITIONS + supercard, where each instance of "ATOMIC_POSITIONS" card is prefixed either by "FIRST_IMAGE", + "INTERMEDIATE_IMAGE", or "LAST_IMAGE" keywords. + + Note that intermediate images are optional, i.e., there can be none or any number of + "INTERMEDIATE_IMAGE" images. + + ######################################################################## + | SUPERCARD: FIRST_IMAGE + | this supercard starts with the keyword: + | + | FIRST_IMAGE + | ... content of the supercard here ... + | + | The syntax of supercard's content follows below: + + ======================================================================== + CARD: ATOMIC_POSITIONS { alat | bohr | angstrom | crystal | crystal_sg } + + For the description of ATOMIC_POSITIONS card see file: "" or INPUT_PW.txt + + ===END OF CARD========================================================== + + + ### END OF SUPERCARD : FIRST_IMAGE #################################### + + + ######################################################################## + | SUPERCARD: INTERMEDIATE_IMAGE + | this supercard starts with the keyword: + | + | INTERMEDIATE_IMAGE + | ... content of the supercard here ... + | + | REMARK: + | There can be any number (including zero) of INTERMEDIATE_IMAGE supercards. + | + | The syntax of supercard's content follows below: + + ======================================================================== + CARD: ATOMIC_POSITIONS { alat | bohr | angstrom | crystal | crystal_sg } + + For the description of ATOMIC_POSITIONS card see file: "" or INPUT_PW.txt + + ===END OF CARD========================================================== + + + ### END OF SUPERCARD : INTERMEDIATE_IMAGE ############################# + + + ######################################################################## + | SUPERCARD: LAST_IMAGE + | this supercard starts with the keyword: + | + | LAST_IMAGE + | ... content of the supercard here ... + | + | The syntax of supercard's content follows below: + + ======================================================================== + CARD: ATOMIC_POSITIONS { alat | bohr | angstrom | crystal | crystal_sg } + + For the description of ATOMIC_POSITIONS card see file: "" or INPUT_PW.txt + + ===END OF CARD========================================================== + + + ### END OF SUPERCARD : LAST_IMAGE ##################################### + + + ### END OF SUPERCARD : BEGIN_POSITIONS/END_POSITIONS ################## + + + Here can follow other pw specific cards ... + + ### END OF SUPERCARD : BEGIN_ENGINE_INPUT/END_ENGINE_INPUT ############ + + +### END OF SUPERCARD : BEGIN/END ###################################### + + +This file has been created by helpdoc utility on Fri Jun 22 17:11:02 CEST 2018 diff --git a/NEB/Doc/user_guide.pdf b/NEB/Doc/user_guide.pdf new file mode 100644 index 0000000000000000000000000000000000000000..55b20b90e42fff50f46369a85960dcc35eafa6ff Binary files /dev/null and b/NEB/Doc/user_guide.pdf differ diff --git a/PHonon/Doc/INPUT_DYNMAT.html b/PHonon/Doc/INPUT_DYNMAT.html new file mode 100644 index 0000000000000000000000000000000000000000..a0d3808afb4f8460c84a2e6031cb750aa6b04153 --- /dev/null +++ b/PHonon/Doc/INPUT_DYNMAT.html @@ -0,0 +1,343 @@ + + + + + +dynmat.x: input description + + + + + +
+

Input File Description

+

Program: + dynmat.x / PWscf / Quantum Espresso (version: svn) +

+
+
+

TABLE OF CONTENTS

+
+ + +

INTRODUCTION

+

&INPUT

+
+fildyn | q | amass | asr | axis | lperm | lplasma | filout | fileig | filmol | filxsf | loto_2d +
+
+
+
+

INTRODUCTION

+
+Purpose of dynmat.x:
+
+- reads a dynamical matrix file produced by the phonon code
+
+- adds the non-analytical part (if Z* and epsilon are read from
+  file), applies the chosen Acoustic Sum Rule (if q=0)
+
+- diagonalise the dynamical matrix
+
+- calculates IR and Raman cross sections (if Z* and Raman
+  tensors are read from file, respectively)
+
+- writes the results to files, both for inspection and for
+  plotting
+
+
+Structure of the input data:
+========================================================================
+
+&INPUT
+   ...specs of namelist variables...
+/
+   
+
+ + + +

Namelist: &INPUT +

+ + + + + + + + + + +
fildynCHARACTER
Default: 'matdyn' +
+input file containing the dynamical matrix
+         
+ + + + + + + + + + + +
q(i), i=1,3REAL
Default: q = (0,0,0) +
+calculate LO modes (add non-analytic terms) along the direction q (Cartesian axis)
+         
+ + + + + + + + + + + +
amass(i), i=1,ntypREAL
Default: amass is read from file fildyn +
+mass for each atom type
+         
+ + + + + + + + + + + +
asrCHARACTER
Default: 'no' +
+
+Indicates the type of Acoustic Sum Rule imposed.
+
+Allowed values:
+            
+
+
'no' :
+
+no Acoustic Sum Rules imposed (default)
+            
+
+
+
'simple' :
+
+previous implementation of the asr used
+(3 translational asr imposed by correction of
+ the diagonal elements of the dynamical matrix)
+            
+
+
+
'crystal' :
+
+3 translational asr imposed by optimized
+correction of the dyn. matrix (projection)
+            
+
+
+
'one-dim' :
+
+3 translational asr + 1 rotational asr imposed
+by optimized correction of the dyn. mat. (the
+rotation axis is the direction of periodicity; it
+will work only if this axis considered is one of
+the Cartesian axis).
+            
+
+
+
'zero-dim' :
+
+3 translational asr + 3 rotational asr imposed
+by optimized correction of the dyn. mat.
+            
+
+
+Note that in certain cases, not all the rotational asr
+can be applied (e.g. if there are only 2 atoms in a
+molecule or if all the atoms are aligned, etc.).  In
+these cases the supplementary asr are canceled during
+the orthonormalization procedure (see below).
+
+Finally, in all cases except 'no' a simple correction
+on the effective charges is performed (same as in the
+previous implementation).
+            
+
+ + + + + + + + + + + +
axisINTEGER
Default: 3 +
+indicates the rotation axis for a 1D system (1=Ox, 2=Oy, 3=Oz)
+         
+ + + + + + + + + + + +
lpermLOGICAL
Default: .false. +
+if .true. then calculate Gamma-point mode contributions to
+dielectric permittivity tensor
+         
+ + + + + + + + + + + +
lplasmaLOGICAL
Default: .false. +
+if .true. then calculate Gamma-point mode effective plasma
+frequencies, automatically triggers lperm = .true.
+         
+ + + + + + + + + + + +
filoutCHARACTER
Default: 'dynmat.out' +
+output file containing phonon frequencies and normalized
+phonon displacements (i.e. eigenvectors divided by the
+square root of the mass and then normalized; they are
+not orthogonal)
+         
+ + + + + + + + + + + +
fileigCHARACTER
Default: ' ' +
+output file containing phonon frequencies and eigenvectors
+of the dynamical matrix (they are orthogonal)
+         
+ + + + + + + + + + + +
filmolCHARACTER
Default: 'dynmat.mold' +
+as above, in a format suitable for molden
+         
+ + + + + + + + + + + +
filxsfCHARACTER
Default: 'dynmat.axsf' +
+as above, in axsf format suitable for xcrysden
+         
+ + + + + + + + + + + +
loto_2dLOGICAL
Default: '.false.' +
+set to .true. to activate two-dimensional treatment of LO-TO splitting.
+         
+ +
+
+ + This file has been created by helpdoc utility on Fri Jun 22 17:11:33 CEST 2018. + + + diff --git a/PHonon/Doc/INPUT_DYNMAT.txt b/PHonon/Doc/INPUT_DYNMAT.txt new file mode 100644 index 0000000000000000000000000000000000000000..ceb7c05c1969fc839c3e64f2e3bc991174b27f44 --- /dev/null +++ b/PHonon/Doc/INPUT_DYNMAT.txt @@ -0,0 +1,179 @@ +*** FILE AUTOMATICALLY CREATED: DO NOT EDIT, CHANGES WILL BE LOST *** + +------------------------------------------------------------------------ +INPUT FILE DESCRIPTION + +Program: dynmat.x / PWscf / Quantum Espresso (version: svn) +------------------------------------------------------------------------ + + +Purpose of dynmat.x: + +- reads a dynamical matrix file produced by the phonon code + +- adds the non-analytical part (if Z* and epsilon are read from + file), applies the chosen Acoustic Sum Rule (if q=0) + +- diagonalise the dynamical matrix + +- calculates IR and Raman cross sections (if Z* and Raman + tensors are read from file, respectively) + +- writes the results to files, both for inspection and for + plotting + + +Structure of the input data: +======================================================================== + +&INPUT + ...specs of namelist variables... +/ + + + +======================================================================== +NAMELIST: &INPUT + + +-------------------------------------------------------------------- + Variable: fildyn + + Type: CHARACTER + Description: input file containing the dynamical matrix + Default: 'matdyn' + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: q(i), i=1,3 + + Type: REAL + Description: calculate LO modes (add non-analytic terms) along the direction q (Cartesian axis) + Default: q = (0,0,0) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: amass(i), i=1,ntyp + + Type: REAL + Description: mass for each atom type + Default: amass is read from file "fildyn" + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: asr + + Type: CHARACTER + Default: 'no' + Description: + Indicates the type of Acoustic Sum Rule imposed. + + Allowed values: + + 'no' : + no Acoustic Sum Rules imposed (default) + + 'simple' : + previous implementation of the asr used + (3 translational asr imposed by correction of + the diagonal elements of the dynamical matrix) + + 'crystal' : + 3 translational asr imposed by optimized + correction of the dyn. matrix (projection) + + 'one-dim' : + 3 translational asr + 1 rotational asr imposed + by optimized correction of the dyn. mat. (the + rotation axis is the direction of periodicity; it + will work only if this axis considered is one of + the Cartesian axis). + + 'zero-dim' : + 3 translational asr + 3 rotational asr imposed + by optimized correction of the dyn. mat. + + Note that in certain cases, not all the rotational asr + can be applied (e.g. if there are only 2 atoms in a + molecule or if all the atoms are aligned, etc.). In + these cases the supplementary asr are canceled during + the orthonormalization procedure (see below). + + Finally, in all cases except 'no' a simple correction + on the effective charges is performed (same as in the + previous implementation). + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: axis + + Type: INTEGER + Description: indicates the rotation axis for a 1D system (1=Ox, 2=Oy, 3=Oz) + Default: 3 + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: lperm + + Type: LOGICAL + Description: if .true. then calculate Gamma-point mode contributions to + dielectric permittivity tensor + Default: .false. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: lplasma + + Type: LOGICAL + Description: if .true. then calculate Gamma-point mode effective plasma + frequencies, automatically triggers "lperm" = .true. + Default: .false. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: filout + + Type: CHARACTER + Description: output file containing phonon frequencies and normalized + phonon displacements (i.e. eigenvectors divided by the + square root of the mass and then normalized; they are + not orthogonal) + Default: 'dynmat.out' + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: fileig + + Type: CHARACTER + Description: output file containing phonon frequencies and eigenvectors + of the dynamical matrix (they are orthogonal) + Default: ' ' + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: filmol + + Type: CHARACTER + Description: as above, in a format suitable for molden + Default: 'dynmat.mold' + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: filxsf + + Type: CHARACTER + Description: as above, in axsf format suitable for xcrysden + Default: 'dynmat.axsf' + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: loto_2d + + Type: LOGICAL + Description: set to .true. to activate two-dimensional treatment of LO-TO splitting. + Default: '.false.' + +-------------------------------------------------------------------- + +===END OF NAMELIST====================================================== + + +This file has been created by helpdoc utility on Fri Jun 22 17:11:33 CEST 2018 diff --git a/PHonon/Doc/INPUT_PH.html b/PHonon/Doc/INPUT_PH.html new file mode 100644 index 0000000000000000000000000000000000000000..00b148f704b40997cc7f13bb7c3f4d3108c79afd --- /dev/null +++ b/PHonon/Doc/INPUT_PH.html @@ -0,0 +1,1308 @@ + + + + + +ph.x: input description + + + + + +
+

Input File Description

+

Program: + ph.x / PWscf / Quantum Espresso (version: svn) +

+
+
+

TABLE OF CONTENTS

+
+ + +

INTRODUCTION

+

Line-of-input: title_line

+

&INPUTPH

+
+amass | outdir | prefix | niter_ph | tr2_ph | alpha_mix(niter) | nmix_ph | verbosity | reduce_io | max_seconds | fildyn | fildrho | fildvscf | epsil | lrpa | lnoloc | trans | lraman | eth_rps | eth_ns | dek | recover | low_directory_check | only_init | qplot | q2d | q_in_band_form | electron_phonon | lshift_q | zeu | zue | elop | fpol | ldisp | nogg | asr | ldiag | lqdir | search_sym | nq1 | nq2 | nq3 | nk1 | nk2 | nk3 | k1 | k2 | k3 | start_irr | last_irr | nat_todo | modenum | start_q | last_q | dvscf_star | drho_star +
+

Line-of-input: xq(1) xq(2) xq(3) +

+

qPointsSpecs

+
+nqs | xq1 | xq2 | xq3 | nq +
+

Line-of-input: atom(1) atom(2) ... atom(nat_todo) +

+

ADDITIONAL INFORMATION

+
+
+
+

INTRODUCTION

+
+Input data format: { } = optional, [ ] = it depends, # = comment
+
+Structure of the input data:
+===============================================================================
+
+title_line
+
+&INPUTPH
+   ...
+/
+
+[ xq(1) xq(2) xq(3) ]                        # if ldisp != .true.  and  qplot != .true.
+
+[ nqs                                        # if qplot == .true. 
+  xq(1,i)    xq(2,i)    xq(3,1)    nq(1)
+  ...
+  xq(1,nqs)  xq(2,nqs)  xq(3,nqs)  nq(nqs) ]
+
+[ atom(1)  atom(2)  ... atom(nat_todo) ]     # if nat_todo was specified
+   
+
+ + + +

+ Line of input +

+ + +
+

Syntax:

+
+title_line  
+
+

Description of items:

+
+ + + + + + +
title_lineCHARACTER
+Title of the job, i.e., a line that is reprinted on output.
+         
+ +
+
+ + + +

Namelist: &INPUTPH +

+ + + + + + + + + + +
amass(i), i=1,ntypREAL
Default: 0.0 +
+Atomic mass [amu] of each atomic type.
+If not specified, masses are read from data file.
+         
+ + + + + + + + + + + +
outdirCHARACTER
Default: +value of the ESPRESSO_TMPDIR environment variable if set; +
current directory ('./') otherwise +
+Directory containing input, output, and scratch files;
+must be the same as specified in the calculation of
+the unperturbed system.
+         
+ + + + + + + + + + + +
prefixCHARACTER
Default: 'pwscf' +
+Prepended to input/output filenames; must be the same
+used in the calculation of unperturbed system.
+         
+ + + + + + + + + + + +
niter_phINTEGER
Default: maxter=100 +
+Maximum number of iterations in a scf step. If you want
+more than 100, edit variable "maxter" in PH/phcom.f90
+         
+ + + + + + + + + + + +
tr2_phREAL
Default: 1e-12 +
 Threshold for self-consistency.
+         
+ + + + + + + + + + + +
alpha_mix(niter)REAL
Default: alpha_mix(1)=0.7 +
+Mixing factor (for each iteration) for updating
+the scf potential:
+
+vnew(in) = alpha_mix*vold(out) + (1-alpha_mix)*vold(in)
+         
+ + + + + + + + + + + +
nmix_phINTEGER
Default: 4 +
 Number of iterations used in potential mixing.
+         
+ + + + + + + + + + + +
verbosityCHARACTER
Default: 'default' +
+
 Options are:
+            
+
+
'debug', 'high', 'medium' :
+
 verbose output
+            
+
+
+
'low', 'default', 'minimal' :
+
 short output
+            
+
+
+ + + + + + + + + + + +
reduce_ioLOGICAL
Default: .false. +
 Reduce I/O to the strict minimum.
+         
+ + + + + + + + + + + +
max_secondsREAL
Default: 1.d7 +
 Maximum allowed run time before the job stops smoothly.
+         
+ + + + + + + + + + + +
fildynCHARACTER
Default: 'matdyn' +
 File where the dynamical matrix is written.
+         
+ + + + + + + + + + + +
fildrhoCHARACTER
Default: ' ' +
+File where the charge density responses are written. Note that the file
+                  will actually be saved as ${outdir}/_ph0/${prefix}.${fildrho}1
+                  where  ${outdir}, ${prefix} and ${fildrho} are the values of the
+                  corresponding input variables
+         
+ + + + + + + + + + + +
fildvscfCHARACTER
Default: ' ' +
+File where the the potential variation is written
+(for later use in electron-phonon calculation, see also fildrho).
+         
+ + + + + + + + + + + +
epsilLOGICAL
Default: .false. +
+If .true. in a q=0 calculation for a non metal the
+macroscopic dielectric constant of the system is
+computed. Do not set epsil to .true. if you have a
+metallic system or q/=0: the code will complain and stop.
+         
+ + + + + + + + + + + +
lrpaLOGICAL
Default: .false. +
+If .true. the dielectric constant is calculated at the
+RPA level with DV_xc=0.
+         
+ + + + + + + + + + + +
lnolocLOGICAL
Default: .false. +
+If .true. the dielectric constant is calculated without
+local fields, i.e. by setting DV_H=0 and DV_xc=0.
+         
+ + + + + + + + + + + +
transLOGICAL
Default: .true. +
+If .true. the phonons are computed.
+If trans .and. epsil are .true. effective charges are
+calculated.
+         
+ + + + + + + + + + + +
lramanLOGICAL
Default: .false. +
+If .true. calculate non-resonant Raman coefficients
+using second-order response as in:
+M. Lazzeri and F. Mauri, PRL 90, 036401 (2003).
+         
+ +
+

Optional variables for Raman: +

+ + + + + + + + + + +
eth_rpsREAL
Default: 1.0d-9 +
 Threshold for calculation of  Pc R |psi>.
+            
+ + + + + + + + + + + +
eth_nsREAL
Default: 1.0e-12 +
 Threshold for non-scf wavefunction calculation.
+            
+ + + + + + + + + + + +
dekREAL
Default: 1.0e-3 +
 Delta_xk used for wavefunction derivation wrt k.
+            
+ +
+ + + + + + + + + + +
recoverLOGICAL
Default: .false. +
 If .true. restart from an interrupted run.
+         
+ + + + + + + + + + + +
low_directory_checkLOGICAL
Default: .false. +
+If .true. search in the phsave directory only the
+                 quantities requested in input.
+         
+ + + + + + + + + + + +
only_initLOGICAL
Default: .false. +
+If .true. only the bands and other initialization quantities are calculated.
+(used for GRID parallelization)
+         
+ + + + + + + + + + + +
qplotLOGICAL
Default: .false. +
 If .true. a list of q points is read from input.
+         
+ + + + + + + + + + + +
q2dLOGICAL
Default: .false. +
+If .true. three q points and relative weights are
+read from input. The three q points define the rectangle
+q(:,1) + l (q(:,2)-q(:,1)) + m (q(:,3)-q(:,1)) where
+0< l,m < 1. The weights are integer and those of points two
+and three are the number of points in the two directions.
+         
+ + + + + + + + + + + +
q_in_band_formLOGICAL
Default: .false. +
+This flag is used only when qplot is .true. and q2d is
+.false.. When .true. each couple of q points q(:,i+1) and
+q(:,i) define the line from q(:,i) to q(:,i+1) and nq
+points are generated along that line. nq is the weigth of
+q(:,i). When .false. only the list of q points given as
+input is calculated. The weights are not used.
+         
+ + + + + + + + + + + +
electron_phononCHARACTER
Default: ' ' +
+
+Options are:
+            
+
+
'simple' :
+
+Electron-phonon lambda coefficients are computed
+for a given q and a grid of k-points specified by
+the variables nk1, nk2, nk3, k1, k2, k3.
+            
+
+
+
'interpolated' :
+
+Electron-phonon is calculated by interpolation
+over the Brillouin Zone as in M. Wierzbowska, et
+al. arXiv:cond-mat/0504077
+            
+
+
+
'lambda_tetra' :
+
+The electron-phonon coefficient \lambda_{q \nu}
+is calculated with the optimized tetrahedron method.
+            
+
+
+
'gamma_tetra' :
+
+The phonon linewidth \gamma_{q \nu} is calculated
+from the electron-phonon interactions
+using the optimized tetrahedron method.
+            
+
+
+For metals only, requires gaussian smearing.
+
+If trans=.true., the lambdas are calculated in the same
+run, using the same k-point grid for phonons and lambdas.
+If trans=.false., the lambdas are calculated using
+previously saved DeltaVscf in fildvscf, previously saved
+dynamical matrix, and the present punch file. This allows
+the use of a different (larger) k-point grid.
+            
+
+ + + + + + + + + + + +
lshift_qLOGICAL
Default: .false. +
+Use a wave-vector grid displaced by half a grid step
+in each direction - meaningful only when ldisp is .true.
+When this option is set, the q2r.x code cannot be used.
+         
+ + + + + + + + + + + +
zeuLOGICAL
Default: zeu=epsil +
+If .true. in a q=0 calculation for a non metal the
+effective charges are computed from the dielectric
+response. This is the default algorithm. If epsil=.true.
+and zeu=.false. only the dielectric tensor is calculated.
+         
+ + + + + + + + + + + +
zueLOGICAL
Default: .false. +
+If .true. in a q=0 calculation for a non metal the
+effective charges are computed from the phonon
+density responses. This is an alternative algorithm,
+different from the default one (if trans .and. epsil )
+The results should be the same within numerical noise.
+         
+ + + + + + + + + + + +
elopLOGICAL
Default: .false. +
+If .true. calculate electro-optic tensor.
+         
+ + + + + + + + + + + +
fpolLOGICAL
Default: .false. +
+If .true. calculate dynamic polarizabilities
+Requires epsil=.true. ( experimental stage:
+see example09 for calculation of methane ).
+         
+ + + + + + + + + + + +
ldispLOGICAL
Default: .false. +
+If .true. the run calculates phonons for a grid of
+q-points specified by nq1, nq2, nq3 - for direct
+calculation of the entire phonon dispersion.
+         
+ + + + + + + + + + + +
noggLOGICAL
Default: .false. +
+If .true. disable the "gamma_gamma" trick used to speed
+up calculations at q=0 (phonon wavevector) if the sum over
+the Brillouin Zone includes k=0 only. The gamma_gamma
+trick exploits symmetry and acoustic sum rule to reduce
+the number of linear response calculations to the strict
+minimum, as it is done in code phcg.x.
+         
+ + + + + + + + + + + +
asrLOGICAL
Default: .false. +
+Apply Acoustic Sum Rule to dynamical matrix, effective charges
+Works only in conjunction with "gamma_gamma" tricks (see above)
+         
+ + + + + + + + + + + +
ldiagLOGICAL
Default: .false. +
+If .true. forces the diagonalization of the dynamical
+matrix also when only a part of the dynamical matrix
+has been calculated. It is used together with start_irr
+and last_irr. If all modes corresponding to a
+given irreducible representation have been calculated,
+the phonon frequencies of that representation are
+correct. The others are zero or wrong. Use with care.
+         
+ + + + + + + + + + + +
lqdirLOGICAL
Default: .false. +
+If .true. ph.x creates inside outdir a separate subdirectory
+for each q vector. The flag is set to .true. when ldisp=.true.
+and fildvscf /= ' ' or when an electron-phonon
+calculation is performed. The induced potential is saved
+separately for each q inside the subdirectories.
+         
+ + + + + + + + + + + +
search_symLOGICAL
Default: .true. +
+Set it to .false. if you want to disable the mode
+symmetry analysis.
+         
+ + + + + + + + + + + +
+nq1, nq2, nq3INTEGER
Default: 0,0,0 +
+Parameters of the Monkhorst-Pack grid (no offset) used
+when ldisp=.true. Same meaning as for nk1, nk2, nk3
+in the input of pw.x.
+         
+ + + + + + + + + + + +
+nk1, nk2, nk3, k1, k2, k3INTEGER
Default: 0,0,0,0,0,0 +
+When these parameters are specified the phonon program
+runs a pw non-self consistent calculation with a different
+k-point grid thant that used for the charge density.
+This occurs even in the Gamma case.
+nk1,nk2,nk3 are the parameters of the Monkhorst-Pack grid
+with offset determined by k1,k2,k3.
+         
+ +
+

Specification of irreducible representation +

+ + + + + + + + + + + + + + +
start_irrINTEGER
Default: 1 +
See:last_irr
+Perform calculations only from start_irr to last_irr
+irreducible representations.
+
+IMPORTANT:
+   * start_irr must be <= 3*nat
+   * do not specify nat_todo together with
+     start_irr, last_irr
+            
+ + + + + + + + + + + + + + + +
last_irrINTEGER
Default: 3*nat +
See:start_irr
+Perform calculations only from start_irr to last_irr
+irreducible representations.
+
+IMPORTANT:
+   * start_irr must be <= 3*nat
+   * do not specify nat_todo together with
+     start_irr, last_irr
+            
+ + + + + + + + + + + +
nat_todoINTEGER
Default: 0, i.e. displace all atoms +
+Choose the subset of atoms to be used in the linear response
+calculation: nat_todo atoms, specified in input (see below)
+are displaced. Can be used to estimate modes for a molecule
+adsorbed over a surface without performing a full fledged
+calculation. Use with care, at your own risk, and be aware
+that this is an approximation and may not work.
+IMPORTANT:
+   * nat_todo <= nat
+   * if linear-response is calculated for a given atom, it
+     should also be done for all symmetry-equivalent atoms,
+     or else you will get incorrect results
+            
+ + + + + + + + + + + +
modenumINTEGER
Default: 0 +
+For single-mode phonon calculation : modenum is the index of the
+irreducible representation (irrep) into which the reducible
+representation formed by the 3*nat atomic displacements are
+decomposed in order to perform the phonon calculation.
+Note that a single-mode calculation will not give you the
+frequency of a single phonon mode: in general, the selected
+"modenum" is not an eigenvector. What you get on output is
+a column of the dynamical matrix.
+            
+ +
+
+

q-point specification +

+ + + + + + + + + + + + + + +
start_qINTEGER
Default: 1 +
See:last_q
+Used only when ldisp=.true..
+Computes only the q points from start_q to last_q.
+
+IMPORTANT:
+   * start_q must be <= nqs (number of q points found)
+   * do not specify nat_todo together with
+     start_q, last_q
+            
+ + + + + + + + + + + + + + + +
last_qINTEGER
Default: number of q points +
See:start_q
+Used only when ldisp=.true..
+Computes only the q points from start_q to last_q.
+
+IMPORTANT
+   * last_q must be <= nqs (number of q points)
+   * do not specify nat_todo together with
+     start_q, last_q
+            
+ + + + + + + + + + + +
dvscf_starSTRUCTURE
Default: disabled +
+It contains the following components:
+
+dvscf_star%open  (logical, default: .false.)
+dvscf_star%dir   (character, default: outdir//"Rotated_DVSCF" or the
+                  ESPRESSO_FILDVSCF_DIR environment variable)
+dvscf_star%ext   (character, default: "dvscf") the extension to use
+                  for the name of the output files, see below
+dvscf_star%basis (character, default: "cartesian") the basis on which
+                  the rotated dvscf will be saved
+dvscf_star%pat   (logical, default: false) save an optional file with the
+                  displacement patterns and q vector for each dvscf file
+
+IF dvscf_star%open is .true. use symmetry to compute and store the variation
+of the self-consistent potential on every q* in the star of the present q.
+
+The rotated dvscf will then be stored in directory dvscf_star%dir with name
+prefix.dvscf_star%ext.q_name//"1". Where q_name is derived from the coordinates
+of the q-point, expressed as fractions in crystalline coordinates
+(notice that ph.x reads q-points in cartesian coordinates).
+E.g. q_cryst= (0, 0.5, -0.25) -> q_name = "0_1o2_-1o4"
+
+The dvscf can be represented on a basis of cartesian 1-atom displacements
+(dvscf_star%basis='cartesian') or on the basis of the modes at the rotated q-point
+(dvscf_star%basis='modes'). Notice that the el-ph wannier code requires 'cartesian'.
+Each dvscf file comes with a corresponding pattern file with an additional ".pat"
+suffix; this file contains information about the basis and the q-point of the dvscf.
+
+Note: rotating dvscf can require a large amount of RAM memory and can be i/o
+      intensive; in its current implementation all the operations are done
+      on a single processor.
+Note2: this feature is currently untested with image parallelisation.
+            
+ + + + + + + + + + + + + + + +
drho_starSTRUCTURE
Default: disabled +
See:dvscf_star
+It contains the following components:
+
+drho_star%open  (logical, default: .false.)
+drho_star%dir   (character, default: outdir//"Rotated_DRHO" or the
+                 ESPRESSO_FILDRHO_DIR environment variable)
+drho_star%ext   (character, default: "drho") the extension to use
+                 for the name of the output files, see below
+drho_star%basis (character, default: "modes") the basis on which
+                 the rotated drho will be saved
+drho_star%pat   (logical, default: true) save an optional file with the
+                 displacement patterns and q vector for each drho file
+
+Like dvscf_star, but for the perturbation of the charge density.
+Notice that the defaults are different.
+            
+ +
+
+
+IF ldisp != .true. and qplot != .true. :
+ + + +

+ Line of input +

+ + +
+

Syntax:

+
+ xq(1) xq(2) xq(3) +   
+
+

Description of items:

+
+ + + + + + +
xq(1) xq(2) xq(3) + REAL
+The phonon wavevector, in units of 2pi/a0
+(a0 = lattice parameter).
+Not used if ldisp=.true. or qplot=.true.
+               
+ +
+
+
+ELSEIF qplot == .true. :
+

Specification of q points when qplot == .true. +

+ + + +

+ Card: qPointsSpecs

+ + +
+

Syntax:

+
+nqs  
+ + + + + + + + + + + + + + + + + + + +
 xq1(1)  xq2(1)  xq3(1)  nq(1) 
 xq1(2)  xq2(2)  xq3(2)  nq(2) 
 . . .
 xq1(nqs)  xq2(nqs)  xq3(nqs)  nq(nqs) 
+
+
+

Description of items:

+
+ + + + + + +
nqsINTEGER
+Number of q points in the list. Used only if qplot=.true.
+                     
+ + + + + + + +
+xq1, xq2, xq3 +REAL
+q-point coordinates; used only with ldisp=.true. and qplot=.true.
+The phonon wavevector, in units of 2pi/a0 (a0 = lattice parameter).
+The meaning of these q points and their weights nq depend on the
+flags q2d and q_in_band_form. (NB: nq is integer)
+                        
+ + + + + + + +
nqINTEGER
+The weight of the q-point; the meaning of nq depends
+on the flags q2d and q_in_band_form.
+                        
+ +
+
+
+
+
+IF nat_todo was specified :
+ + + +

+ Line of input +

+ + +
+

Syntax:

+
+ atom(1) atom(2) ... atom(nat_todo) +   
+
+

Description of items:

+
+ + + + + + +
atom(1) atom(2) ... atom(nat_todo) + INTEGER
+Contains the list of indices of atoms used in the
+calculation if nat_todo is specified.
+               
+ +
+
+
+
+
+

ADDITIONAL INFORMATION

+
+NB: The program ph.x writes on the tmp_dir/_ph0/{prefix}.phsave directory
+a file for each representation of each q point. This file is called
+dynmat.#iq.#irr.xml where #iq is the number of the q point and #irr
+is the number of the representation. These files contain the
+contribution to the dynamical matrix of the irr representation for the
+iq point.
+
+If recover=.true. ph.x does not recalculate the
+representations already saved in the tmp_dir/_ph0/{prefix}.phsave
+directory.  Moreover ph.x writes on the files patterns.#iq.xml in the
+tmp_dir/_ph0/{prefix}.phsave directory the displacement patterns that it
+is using. If recover=.true. ph.x does not recalculate the
+displacement patterns found in the tmp_dir/_ph0/{prefix}.phsave directory.
+
+This mechanism allows:
+
+  1) To recover part of the ph.x calculation even if the recover file
+     or files are corrupted. You just remove the _ph0/{prefix}.recover
+     files from the tmp_dir directory. You can also remove all the _ph0
+     files and keep only the _ph0/{prefix}.phsave directory.
+
+  2) To split a phonon calculation into several jobs for different
+     machines (or set of nodes). Each machine calculates a subset of
+     the representations and saves its dynmat.#iq.#irr.xml files on
+     its tmp_dir/_ph0/{prefix}.phsave directory. Then you collect all the
+     dynmat.#iq.#irr.xml files in one directory and run ph.x to
+     collect all the dynamical matrices and diagonalize them.
+
+NB: To split the q points in different machines, use the input
+variables start_q and last_q. To split the irreducible
+representations, use the input variables start_irr, last_irr. Please
+note that different machines will use, in general, different
+displacement patterns and it is not possible to recollect partial
+dynamical matrices generated with different displacement patterns.  A
+calculation split into different machines will run as follows: A
+preparatory run of ph.x with start_irr=0, last_irr=0 produces the sets
+of displacement patterns and save them on the patterns.#iq.xml files.
+These files are copied in all the tmp_dir/_ph0/{prefix}.phsave directories
+of the machines where you plan to run ph.x. ph.x is run in different
+machines with complementary sets of start_q, last_q, start_irr and
+last_irr variables.  All the files dynmat.#iq.#irr.xml are
+collected on a single tmp_dir/_ph0/{prefix}.phsave directory (remember to
+collect also dynmat.#iq.0.xml).  A final run of ph.x in this
+machine collects all the data contained in the files and diagonalizes
+the dynamical matrices.  This is done requesting a complete dispersion
+calculation without using start_q, last_q, start_irr, or last_irr.
+See an example in examples/GRID_example.
+
+On parallel machines the q point and the irreps calculations can be split
+automatically using the -nimage flag. See the phonon user guide for further
+information.
+      
+
+
+ + This file has been created by helpdoc utility on Fri Jun 22 17:11:33 CEST 2018. + + + diff --git a/PHonon/Doc/INPUT_PH.txt b/PHonon/Doc/INPUT_PH.txt new file mode 100644 index 0000000000000000000000000000000000000000..e3fc613bb0bea273e3e3f8a9aec4f55459142b32 --- /dev/null +++ b/PHonon/Doc/INPUT_PH.txt @@ -0,0 +1,819 @@ +*** FILE AUTOMATICALLY CREATED: DO NOT EDIT, CHANGES WILL BE LOST *** + +------------------------------------------------------------------------ +INPUT FILE DESCRIPTION + +Program: ph.x / PWscf / Quantum Espresso (version: svn) +------------------------------------------------------------------------ + + +Input data format: { } = optional, [ ] = it depends, # = comment + +Structure of the input data: +=============================================================================== + +title_line + +&INPUTPH + ... +/ + +[ xq(1) xq(2) xq(3) ] # if "ldisp" != .true. and "qplot" != .true. + +[ nqs # if "qplot" == .true. + xq(1,i) xq(2,i) xq(3,1) nq(1) + ... + xq(1,nqs) xq(2,nqs) xq(3,nqs) nq(nqs) ] + +[ atom(1) atom(2) ... atom(nat_todo) ] # if "nat_todo" was specified + + + +======================================================================== +Line of input: + + title_line + + + DESCRIPTION OF ITEMS: + + +-------------------------------------------------------------------- + Variable: title_line + + Type: CHARACTER + Description: Title of the job, i.e., a line that is reprinted on output. + +-------------------------------------------------------------------- + +===End of line-of-input================================================= + + +======================================================================== +NAMELIST: &INPUTPH + + +-------------------------------------------------------------------- + Variable: amass(i), i=1,ntyp + + Type: REAL + Default: 0.0 + Description: Atomic mass [amu] of each atomic type. + If not specified, masses are read from data file. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: outdir + + Type: CHARACTER + Default: value of the ESPRESSO_TMPDIR environment variable if set; + current directory ('./') otherwise + Description: Directory containing input, output, and scratch files; + must be the same as specified in the calculation of + the unperturbed system. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: prefix + + Type: CHARACTER + Default: 'pwscf' + Description: Prepended to input/output filenames; must be the same + used in the calculation of unperturbed system. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: niter_ph + + Type: INTEGER + Default: maxter=100 + Description: Maximum number of iterations in a scf step. If you want + more than 100, edit variable "maxter" in PH/phcom.f90 + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: tr2_ph + + Type: REAL + Default: 1e-12 + Description: Threshold for self-consistency. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: alpha_mix(niter) + + Type: REAL + Default: alpha_mix(1)=0.7 + Description: Mixing factor (for each iteration) for updating + the scf potential: + + vnew(in) = alpha_mix*vold(out) + (1-alpha_mix)*vold(in) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: nmix_ph + + Type: INTEGER + Default: 4 + Description: Number of iterations used in potential mixing. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: verbosity + + Type: CHARACTER + Default: 'default' + Description: + Options are: + + 'debug', 'high', 'medium' : + verbose output + + 'low', 'default', 'minimal' : + short output + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: reduce_io + + Type: LOGICAL + Default: .false. + Description: Reduce I/O to the strict minimum. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: max_seconds + + Type: REAL + Default: 1.d7 + Description: Maximum allowed run time before the job stops smoothly. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: fildyn + + Type: CHARACTER + Default: 'matdyn' + Description: File where the dynamical matrix is written. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: fildrho + + Type: CHARACTER + Default: ' ' + Description: File where the charge density responses are written. Note that the file + will actually be saved as ${outdir}/_ph0/${prefix}.${fildrho}1 + where ${outdir}, ${prefix} and ${fildrho} are the values of the + corresponding input variables + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: fildvscf + + Type: CHARACTER + Default: ' ' + Description: File where the the potential variation is written + (for later use in electron-phonon calculation, see also fildrho). + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: epsil + + Type: LOGICAL + Default: .false. + Description: If .true. in a q=0 calculation for a non metal the + macroscopic dielectric constant of the system is + computed. Do not set "epsil" to .true. if you have a + metallic system or q/=0: the code will complain and stop. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: lrpa + + Type: LOGICAL + Default: .false. + Description: If .true. the dielectric constant is calculated at the + RPA level with DV_xc=0. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: lnoloc + + Type: LOGICAL + Default: .false. + Description: If .true. the dielectric constant is calculated without + local fields, i.e. by setting DV_H=0 and DV_xc=0. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: trans + + Type: LOGICAL + Default: .true. + Description: If .true. the phonons are computed. + If "trans" .and. "epsil" are .true. effective charges are + calculated. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: lraman + + Type: LOGICAL + Default: .false. + Description: If .true. calculate non-resonant Raman coefficients + using second-order response as in: + M. Lazzeri and F. Mauri, PRL 90, 036401 (2003). + +-------------------------------------------------------------------- + + ///--- + OPTIONAL VARIABLES FOR RAMAN: + + +-------------------------------------------------------------------- + Variable: eth_rps + + Type: REAL + Default: 1.0d-9 + Description: Threshold for calculation of Pc R |psi>. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: eth_ns + + Type: REAL + Default: 1.0e-12 + Description: Threshold for non-scf wavefunction calculation. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: dek + + Type: REAL + Default: 1.0e-3 + Description: Delta_xk used for wavefunction derivation wrt k. + +-------------------------------------------------------------------- + + \\\--- + + +-------------------------------------------------------------------- + Variable: recover + + Type: LOGICAL + Default: .false. + Description: If .true. restart from an interrupted run. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: low_directory_check + + Type: LOGICAL + Default: .false. + Description: If .true. search in the phsave directory only the + quantities requested in input. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: only_init + + Type: LOGICAL + Default: .false. + Description: If .true. only the bands and other initialization quantities are calculated. + (used for GRID parallelization) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: qplot + + Type: LOGICAL + Default: .false. + Description: If .true. a list of q points is read from input. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: q2d + + Type: LOGICAL + Default: .false. + Description: If .true. three q points and relative weights are + read from input. The three q points define the rectangle + q(:,1) + l (q(:,2)-q(:,1)) + m (q(:,3)-q(:,1)) where + 0< l,m < 1. The weights are integer and those of points two + and three are the number of points in the two directions. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: q_in_band_form + + Type: LOGICAL + Default: .false. + Description: This flag is used only when qplot is .true. and q2d is + .false.. When .true. each couple of q points q(:,i+1) and + q(:,i) define the line from q(:,i) to q(:,i+1) and nq + points are generated along that line. nq is the weigth of + q(:,i). When .false. only the list of q points given as + input is calculated. The weights are not used. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: electron_phonon + + Type: CHARACTER + Default: ' ' + Description: + Options are: + + 'simple' : + Electron-phonon lambda coefficients are computed + for a given q and a grid of k-points specified by + the variables nk1, nk2, nk3, k1, k2, k3. + + 'interpolated' : + Electron-phonon is calculated by interpolation + over the Brillouin Zone as in M. Wierzbowska, et + al. arXiv:cond-mat/0504077 + + 'lambda_tetra' : + The electron-phonon coefficient \lambda_{q \nu} + is calculated with the optimized tetrahedron method. + + 'gamma_tetra' : + The phonon linewidth \gamma_{q \nu} is calculated + from the electron-phonon interactions + using the optimized tetrahedron method. + + For metals only, requires gaussian smearing. + + If "trans"=.true., the lambdas are calculated in the same + run, using the same k-point grid for phonons and lambdas. + If "trans"=.false., the lambdas are calculated using + previously saved DeltaVscf in "fildvscf", previously saved + dynamical matrix, and the present punch file. This allows + the use of a different (larger) k-point grid. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: lshift_q + + Type: LOGICAL + Default: .false. + Description: Use a wave-vector grid displaced by half a grid step + in each direction - meaningful only when ldisp is .true. + When this option is set, the q2r.x code cannot be used. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: zeu + + Type: LOGICAL + Default: zeu="epsil" + Description: If .true. in a q=0 calculation for a non metal the + effective charges are computed from the dielectric + response. This is the default algorithm. If "epsil"=.true. + and "zeu"=.false. only the dielectric tensor is calculated. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: zue + + Type: LOGICAL + Default: .false. + Description: If .true. in a q=0 calculation for a non metal the + effective charges are computed from the phonon + density responses. This is an alternative algorithm, + different from the default one (if "trans" .and. "epsil" ) + The results should be the same within numerical noise. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: elop + + Type: LOGICAL + Default: .false. + Description: If .true. calculate electro-optic tensor. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: fpol + + Type: LOGICAL + Default: .false. + Description: If .true. calculate dynamic polarizabilities + Requires "epsil"=.true. ( experimental stage: + see example09 for calculation of methane ). + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ldisp + + Type: LOGICAL + Default: .false. + Description: If .true. the run calculates phonons for a grid of + q-points specified by "nq1", "nq2", "nq3" - for direct + calculation of the entire phonon dispersion. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: nogg + + Type: LOGICAL + Default: .false. + Description: If .true. disable the "gamma_gamma" trick used to speed + up calculations at q=0 (phonon wavevector) if the sum over + the Brillouin Zone includes k=0 only. The gamma_gamma + trick exploits symmetry and acoustic sum rule to reduce + the number of linear response calculations to the strict + minimum, as it is done in code phcg.x. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: asr + + Type: LOGICAL + Default: .false. + Description: Apply Acoustic Sum Rule to dynamical matrix, effective charges + Works only in conjunction with "gamma_gamma" tricks (see above) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ldiag + + Type: LOGICAL + Default: .false. + Description: If .true. forces the diagonalization of the dynamical + matrix also when only a part of the dynamical matrix + has been calculated. It is used together with "start_irr" + and "last_irr". If all modes corresponding to a + given irreducible representation have been calculated, + the phonon frequencies of that representation are + correct. The others are zero or wrong. Use with care. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: lqdir + + Type: LOGICAL + Default: .false. + Description: If .true. ph.x creates inside outdir a separate subdirectory + for each q vector. The flag is set to .true. when "ldisp"=.true. + and "fildvscf" /= ' ' or when an electron-phonon + calculation is performed. The induced potential is saved + separately for each q inside the subdirectories. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: search_sym + + Type: LOGICAL + Default: .true. + Description: Set it to .false. if you want to disable the mode + symmetry analysis. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: nq1, nq2, nq3 + + Type: INTEGER + Default: 0,0,0 + Description: Parameters of the Monkhorst-Pack grid (no offset) used + when @ref ldisp=.true. Same meaning as for nk1, nk2, nk3 + in the input of pw.x. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: nk1, nk2, nk3, k1, k2, k3 + + Type: INTEGER + Default: 0,0,0,0,0,0 + Description: When these parameters are specified the phonon program + runs a pw non-self consistent calculation with a different + k-point grid thant that used for the charge density. + This occurs even in the Gamma case. + nk1,nk2,nk3 are the parameters of the Monkhorst-Pack grid + with offset determined by k1,k2,k3. + +-------------------------------------------------------------------- + + ///--- + SPECIFICATION OF IRREDUCIBLE REPRESENTATION + + +-------------------------------------------------------------------- + Variable: start_irr + + Type: INTEGER + Default: 1 + See: last_irr + Description: Perform calculations only from "start_irr" to "last_irr" + irreducible representations. + + IMPORTANT: + * "start_irr" must be <= 3*nat + * do not specify "nat_todo" together with + "start_irr", "last_irr" + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: last_irr + + Type: INTEGER + Default: 3*nat + See: start_irr + Description: Perform calculations only from "start_irr" to "last_irr" + irreducible representations. + + IMPORTANT: + * "start_irr" must be <= 3*nat + * do not specify "nat_todo" together with + "start_irr", "last_irr" + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: nat_todo + + Type: INTEGER + Default: 0, i.e. displace all atoms + Description: Choose the subset of atoms to be used in the linear response + calculation: "nat_todo" atoms, specified in input (see below) + are displaced. Can be used to estimate modes for a molecule + adsorbed over a surface without performing a full fledged + calculation. Use with care, at your own risk, and be aware + that this is an approximation and may not work. + IMPORTANT: + * "nat_todo" <= nat + * if linear-response is calculated for a given atom, it + should also be done for all symmetry-equivalent atoms, + or else you will get incorrect results + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: modenum + + Type: INTEGER + Default: 0 + Description: For single-mode phonon calculation : modenum is the index of the + irreducible representation (irrep) into which the reducible + representation formed by the 3*nat atomic displacements are + decomposed in order to perform the phonon calculation. + Note that a single-mode calculation will not give you the + frequency of a single phonon mode: in general, the selected + "modenum" is not an eigenvector. What you get on output is + a column of the dynamical matrix. + +-------------------------------------------------------------------- + + \\\--- + + ///--- + Q-POINT SPECIFICATION + + +-------------------------------------------------------------------- + Variable: start_q + + Type: INTEGER + Default: 1 + See: last_q + Description: Used only when ldisp=.true.. + Computes only the q points from "start_q" to "last_q". + + IMPORTANT: + * "start_q" must be <= "nqs" (number of q points found) + * do not specify "nat_todo" together with + "start_q", "last_q" + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: last_q + + Type: INTEGER + Default: number of q points + See: start_q + Description: Used only when "ldisp"=.true.. + Computes only the q points from "start_q" to "last_q". + + IMPORTANT + * "last_q" must be <= "nqs" (number of q points) + * do not specify "nat_todo" together with + "start_q", "last_q" + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: dvscf_star + + Type: STRUCTURE + Default: disabled + Description: It contains the following components: + + dvscf_star%open (logical, default: .false.) + dvscf_star%dir (character, default: outdir//"Rotated_DVSCF" or the + ESPRESSO_FILDVSCF_DIR environment variable) + dvscf_star%ext (character, default: "dvscf") the extension to use + for the name of the output files, see below + dvscf_star%basis (character, default: "cartesian") the basis on which + the rotated dvscf will be saved + dvscf_star%pat (logical, default: false) save an optional file with the + displacement patterns and q vector for each dvscf file + + IF dvscf_star%open is .true. use symmetry to compute and store the variation + of the self-consistent potential on every q* in the star of the present q. + + The rotated dvscf will then be stored in directory dvscf_star%dir with name + prefix.dvscf_star%ext.q_name//"1". Where q_name is derived from the coordinates + of the q-point, expressed as fractions in crystalline coordinates + (notice that ph.x reads q-points in cartesian coordinates). + E.g. q_cryst= (0, 0.5, -0.25) -> q_name = "0_1o2_-1o4" + + The dvscf can be represented on a basis of cartesian 1-atom displacements + (dvscf_star%basis='cartesian') or on the basis of the modes at the rotated q-point + (dvscf_star%basis='modes'). Notice that the el-ph wannier code requires 'cartesian'. + Each dvscf file comes with a corresponding pattern file with an additional ".pat" + suffix; this file contains information about the basis and the q-point of the dvscf. + + Note: rotating dvscf can require a large amount of RAM memory and can be i/o + intensive; in its current implementation all the operations are done + on a single processor. + Note2: this feature is currently untested with image parallelisation. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: drho_star + + Type: STRUCTURE + See: dvscf_star + Default: disabled + Description: It contains the following components: + + drho_star%open (logical, default: .false.) + drho_star%dir (character, default: outdir//"Rotated_DRHO" or the + ESPRESSO_FILDRHO_DIR environment variable) + drho_star%ext (character, default: "drho") the extension to use + for the name of the output files, see below + drho_star%basis (character, default: "modes") the basis on which + the rotated drho will be saved + drho_star%pat (logical, default: true) save an optional file with the + displacement patterns and q vector for each drho file + + Like "dvscf_star", but for the perturbation of the charge density. + Notice that the defaults are different. + +-------------------------------------------------------------------- + + \\\--- + +===END OF NAMELIST====================================================== + + +________________________________________________________________________ +* IF ldisp != .true. and qplot != .true. : + + ======================================================================== + Line of input: + + xq(1) xq(2) xq(3) + + + DESCRIPTION OF ITEMS: + + +-------------------------------------------------------------------- + Variables: xq(1) xq(2) xq(3) + + Type: REAL + Description: The phonon wavevector, in units of 2pi/a0 + (a0 = lattice parameter). + Not used if "ldisp"=.true. or "qplot"=.true. + +-------------------------------------------------------------------- + + + ===End of line-of-input================================================= + + + +* ELSE IF qplot == .true. : + + SPECIFICATION OF Q POINTS WHEN "QPLOT" == .TRUE. + + ======================================================================== + CARD: + + ///////////////////////////////////////// + // Syntax: // + ///////////////////////////////////////// + + nqs + xq1(1) xq2(1) xq3(1) nq(1) + xq1(2) xq2(2) xq3(2) nq(2) + . . . + xq1(nqs) xq2(nqs) xq3(nqs) nq(nqs) + + ///////////////////////////////////////// + + DESCRIPTION OF ITEMS: + + +-------------------------------------------------------------------- + Variable: nqs + + Type: INTEGER + Description: Number of q points in the list. Used only if "qplot"=.true. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: xq1, xq2, xq3 + + Type: REAL + Description: q-point coordinates; used only with @ref ldisp=.true. and qplot=.true. + The phonon wavevector, in units of 2pi/a0 (a0 = lattice parameter). + The meaning of these q points and their weights nq depend on the + flags q2d and q_in_band_form. (NB: nq is integer) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: nq + + Type: INTEGER + Description: The weight of the q-point; the meaning of nq depends + on the flags q2d and q_in_band_form. + +-------------------------------------------------------------------- + + ===END OF CARD========================================================== + + + +ENDIF +________________________________________________________________________ + +________________________________________________________________________ +* IF nat_todo was specified : + + ======================================================================== + Line of input: + + atom(1) atom(2) ... atom(nat_todo) + + + DESCRIPTION OF ITEMS: + + +-------------------------------------------------------------------- + Variables: atom(1) atom(2) ... atom(nat_todo) + + Type: INTEGER + Description: Contains the list of indices of atoms used in the + calculation if "nat_todo" is specified. + +-------------------------------------------------------------------- + + + ===End of line-of-input================================================= + + + +ENDIF +________________________________________________________________________ + + +:::: ADDITIONAL INFORMATION + + NB: The program ph.x writes on the tmp_dir/_ph0/{prefix}.phsave directory + a file for each representation of each q point. This file is called + dynmat.#iq.#irr.xml where #iq is the number of the q point and #irr + is the number of the representation. These files contain the + contribution to the dynamical matrix of the irr representation for the + iq point. + + If recover=.true. ph.x does not recalculate the + representations already saved in the tmp_dir/_ph0/{prefix}.phsave + directory. Moreover ph.x writes on the files patterns.#iq.xml in the + tmp_dir/_ph0/{prefix}.phsave directory the displacement patterns that it + is using. If recover=.true. ph.x does not recalculate the + displacement patterns found in the tmp_dir/_ph0/{prefix}.phsave directory. + + This mechanism allows: + + 1) To recover part of the ph.x calculation even if the recover file + or files are corrupted. You just remove the _ph0/{prefix}.recover + files from the tmp_dir directory. You can also remove all the _ph0 + files and keep only the _ph0/{prefix}.phsave directory. + + 2) To split a phonon calculation into several jobs for different + machines (or set of nodes). Each machine calculates a subset of + the representations and saves its dynmat.#iq.#irr.xml files on + its tmp_dir/_ph0/{prefix}.phsave directory. Then you collect all the + dynmat.#iq.#irr.xml files in one directory and run ph.x to + collect all the dynamical matrices and diagonalize them. + + NB: To split the q points in different machines, use the input + variables start_q and last_q. To split the irreducible + representations, use the input variables "start_irr", "last_irr". Please + note that different machines will use, in general, different + displacement patterns and it is not possible to recollect partial + dynamical matrices generated with different displacement patterns. A + calculation split into different machines will run as follows: A + preparatory run of ph.x with "start_irr"=0, "last_irr"=0 produces the sets + of displacement patterns and save them on the patterns.#iq.xml files. + These files are copied in all the tmp_dir/_ph0/{prefix}.phsave directories + of the machines where you plan to run ph.x. ph.x is run in different + machines with complementary sets of start_q, last_q, "start_irr" and + "last_irr" variables. All the files dynmat.#iq.#irr.xml are + collected on a single tmp_dir/_ph0/{prefix}.phsave directory (remember to + collect also dynmat.#iq.0.xml). A final run of ph.x in this + machine collects all the data contained in the files and diagonalizes + the dynamical matrices. This is done requesting a complete dispersion + calculation without using start_q, last_q, "start_irr", or "last_irr". + See an example in examples/GRID_example. + + On parallel machines the q point and the irreps calculations can be split + automatically using the -nimage flag. See the phonon user guide for further + information. + + +This file has been created by helpdoc utility on Fri Jun 22 17:11:33 CEST 2018 diff --git a/PHonon/Doc/developer_man.pdf b/PHonon/Doc/developer_man.pdf new file mode 100644 index 0000000000000000000000000000000000000000..041b091640fab76e94b6524e5a4b405c88a596f2 Binary files /dev/null and b/PHonon/Doc/developer_man.pdf differ diff --git a/PHonon/Doc/dfpt_tetra.pdf b/PHonon/Doc/dfpt_tetra.pdf new file mode 100644 index 0000000000000000000000000000000000000000..fadd83ef0f24ee8ec2155ade1f8b0d208b416406 Binary files /dev/null and b/PHonon/Doc/dfpt_tetra.pdf differ diff --git a/PHonon/Doc/user_guide.pdf b/PHonon/Doc/user_guide.pdf new file mode 100644 index 0000000000000000000000000000000000000000..2c9ef790b2cf6b22d417bf2a8af9fa0329662d81 Binary files /dev/null and b/PHonon/Doc/user_guide.pdf differ diff --git a/PP/Doc/INPUT_BANDS.html b/PP/Doc/INPUT_BANDS.html new file mode 100644 index 0000000000000000000000000000000000000000..8e316e7dee71d29663a54d7552052ee02ad09732 --- /dev/null +++ b/PP/Doc/INPUT_BANDS.html @@ -0,0 +1,285 @@ + + + + + +bands.x: input description + + + + + +
+

Input File Description

+

Program: + bands.x / PWscf / Quantum Espresso (version: svn) +

+
+
+

TABLE OF CONTENTS

+
+ + +

INTRODUCTION

+

&BANDS

+
+prefix | outdir | filband | spin_component | lsigma | lp | filp | lsym | no_overlap | plot_2d | firstk | lastk +
+
+
+
+

INTRODUCTION

+
+Purpose of bands.x:
+   Re-order bands, computes band-related properties. Currently,
+   re-ordering can be done with two different algorithms:
+   (a) by maximising the overlap with bands at previous k-point
+   (b) by computing symmetry properties of each wavefunction
+   Bands-related properties that can be computed are currently
+   (a) The expectation value of the spin operator on each spinor
+       wave-function (noncolinear case only)
+   (b) The expectation value of p
+
+The input data can be read from standard input or from file using
+command-line options "bands.x -i file-name" (same syntax as for pw.x)
+
+Output files:
+- file filband containing the band structure, in a format
+  suitable for plotting code "plotband.x"
+- file "filband".rap (if lsym is .t.)  with symmetry information,
+  to be read by plotting code "plotband.x"
+- if (lsigma(i)): file "filband".i, i=1,2,3, with expectation values
+  of the spin operator in the noncolinear case
+- file "filband".gnu with bands in eV, directly plottable using gnuplot
+- file filp with matrix elements of p
+
+Structure of the input data:
+============================
+
+   &BANDS
+     ...
+   /
+   
+
+ + + +

Namelist: &BANDS +

+ + + + + + + + + + +
prefixCHARACTER
Default: 'pwscf' +
+prefix of files saved by program pw.x
+         
+ + + + + + + + + + + +
outdirCHARACTER
Default: +value of the ESPRESSO_TMPDIR environment variable if set; +current directory ('./') otherwise +
+directory containing the input data, i.e. the same as in pw.x
+         
+ + + + + + + + + + + +
filbandCHARACTER
Default: 'bands.out' +
+file name for band output (to be read by "plotband.x")
+         
+ + + + + + + +
spin_componentINTEGER
+In the lsda case select:
+
+   1 = spin-up
+   2 = spin-down
+         
+ + + + + + + +
lsigma(i), i=1,3LOGICAL
+If true computes expectation values of the spin operator
+on the spinor wave-functions (only in the noncollinear case),
+writes them to a file "filband".i, i=1,2,3
+         
+ + + + + + + + + + + +
lpLOGICAL
Default: .false. +
+If .true. matrix elements of the momentum operator p between
+conduction and valence bands are computed and written to file
+specified in filp
+         
+ + + + + + + + + + + +
filpCHARACTER
Default: 'p_avg.dat' +
+If lp is set to .true., file name for matrix elements of p
+         
+ + + + + + + + + + + +
lsymLOGICAL
Default: .true. +
+If .true. the bands are classified according to the
+irreducible representations of the small group of k.
+A file "filband".rap with the same format of "filband"
+is written, for usage by "plotband.x"
+         
+ + + + + + + + + + + +
no_overlapLOGICAL
Default: .true. +
+If .false., and if lsym is .false., writes the eigenvalues
+in the order that maximises overlap with the neighbor k-points
+         
+ + + + + + + + + + + +
plot_2dLOGICAL
Default: .false. +
+If .true. writes the eigenvalues in the output file
+in a 2D format readable by gnuplot. Band ordering is not
+changed. Each band is written in a different file called
+filband.# with the format:
+
+   xk, yk, energy
+   xk, yk, energy
+   ..  ..  ..
+
+energies are written in eV and xk in units 2\pi/a.
+         
+ + + + + + + +
+firstk, lastkINTEGER
+if lsym=.true. makes the symmetry analysis only for k
+points between firstk to lastk
+         
+ +
+
+ + This file has been created by helpdoc utility on Fri Jun 22 17:11:35 CEST 2018. + + + diff --git a/PP/Doc/INPUT_BANDS.txt b/PP/Doc/INPUT_BANDS.txt new file mode 100644 index 0000000000000000000000000000000000000000..92d7ecaf9b59846051feb82952690202e9f2620b --- /dev/null +++ b/PP/Doc/INPUT_BANDS.txt @@ -0,0 +1,155 @@ +*** FILE AUTOMATICALLY CREATED: DO NOT EDIT, CHANGES WILL BE LOST *** + +------------------------------------------------------------------------ +INPUT FILE DESCRIPTION + +Program: bands.x / PWscf / Quantum Espresso (version: svn) +------------------------------------------------------------------------ + + +Purpose of bands.x: + Re-order bands, computes band-related properties. Currently, + re-ordering can be done with two different algorithms: + (a) by maximising the overlap with bands at previous k-point + (b) by computing symmetry properties of each wavefunction + Bands-related properties that can be computed are currently + (a) The expectation value of the spin operator on each spinor + wave-function (noncolinear case only) + (b) The expectation value of p + +The input data can be read from standard input or from file using +command-line options "bands.x -i file-name" (same syntax as for pw.x) + +Output files: +- file "filband" containing the band structure, in a format + suitable for plotting code "plotband.x" +- file "filband".rap (if "lsym" is .t.) with symmetry information, + to be read by plotting code "plotband.x" +- if ("lsigma"(i)): file "filband".i, i=1,2,3, with expectation values + of the spin operator in the noncolinear case +- file "filband".gnu with bands in eV, directly plottable using gnuplot +- file "filp" with matrix elements of p + +Structure of the input data: +============================ + + &BANDS + ... + / + + + +======================================================================== +NAMELIST: &BANDS + + +-------------------------------------------------------------------- + Variable: prefix + + Type: CHARACTER + Default: 'pwscf' + Description: prefix of files saved by program pw.x + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: outdir + + Type: CHARACTER + Description: directory containing the input data, i.e. the same as in pw.x + Default: value of the ESPRESSO_TMPDIR environment variable if set; + current directory ('./') otherwise + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: filband + + Type: CHARACTER + Default: 'bands.out' + Description: file name for band output (to be read by "plotband.x") + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: spin_component + + Type: INTEGER + Description: In the lsda case select: + + 1 = spin-up + 2 = spin-down + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: lsigma(i), i=1,3 + + Type: LOGICAL + Description: If true computes expectation values of the spin operator + on the spinor wave-functions (only in the noncollinear case), + writes them to a file "filband".i, i=1,2,3 + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: lp + + Type: LOGICAL + Default: .false. + Description: If .true. matrix elements of the momentum operator p between + conduction and valence bands are computed and written to file + specified in "filp" + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: filp + + Type: CHARACTER + Default: 'p_avg.dat' + Description: If "lp" is set to .true., file name for matrix elements of p + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: lsym + + Type: LOGICAL + Default: .true. + Description: If .true. the bands are classified according to the + irreducible representations of the small group of k. + A file "filband".rap with the same format of "filband" + is written, for usage by "plotband.x" + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: no_overlap + + Type: LOGICAL + Default: .true. + Description: If .false., and if "lsym" is .false., writes the eigenvalues + in the order that maximises overlap with the neighbor k-points + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: plot_2d + + Type: LOGICAL + Default: .false. + Description: If .true. writes the eigenvalues in the output file + in a 2D format readable by gnuplot. Band ordering is not + changed. Each band is written in a different file called + filband.# with the format: + + xk, yk, energy + xk, yk, energy + .. .. .. + + energies are written in eV and xk in units 2\pi/a. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: firstk, lastk + + Type: INTEGER + Description: if @ref lsym=.true. makes the symmetry analysis only for k + points between firstk to lastk + +-------------------------------------------------------------------- + +===END OF NAMELIST====================================================== + + +This file has been created by helpdoc utility on Fri Jun 22 17:11:35 CEST 2018 diff --git a/PP/Doc/INPUT_DOS.html b/PP/Doc/INPUT_DOS.html new file mode 100644 index 0000000000000000000000000000000000000000..20331b29c25283d8ab2e67018229743932eae749 --- /dev/null +++ b/PP/Doc/INPUT_DOS.html @@ -0,0 +1,247 @@ + + + + + +dos.x: input description + + + + + +
+

Input File Description

+

Program: + dos.x / PWscf / Quantum Espresso (version: svn) +

+
+
+

TABLE OF CONTENTS

+
+ + +

INTRODUCTION

+

&DOS

+
+prefix | outdir | ngauss | degauss | Emin | Emax | DeltaE | fildos +
+

Notes

+
Output
+
Important !
+
+
+
+

INTRODUCTION

+
+Purpose of dos.x:
+    calculates the Density of States (DOS)
+    (separated into up and down components for DSDA)
+
+
+Structure of the input data:
+============================
+
+   &DOS
+     ...
+   /
+
+IMPORTANT: since v.5 namelist name is &DOS and no longer &INPUTPP
+   
+
+ + + +

Namelist: &DOS +

+ + + + + + + + + + +
prefixCHARACTER
Default: 'pwscf' +
+prefix of input file produced by pw.x
+(wavefunctions are not needed)
+         
+ + + + + + + + + + + +
outdirCHARACTER
Default: +value of the ESPRESSO_TMPDIR environment variable if set; +current directory ('./') otherwise +
+directory containing the input data, i.e. the same as in pw.x
+         
+ + + + + + + + + + + + + + + +
ngaussINTEGER
Default: 0 +
Status: optional +
+Type of gaussian broadening:
+
+    =  0  Simple Gaussian (default)
+
+    =  1  Methfessel-Paxton of order 1
+
+    = -1  Marzari-Vanderbilt "cold smearing"
+
+    =-99  Fermi-Dirac function
+         
+ + + + + + + +
degaussREAL
+gaussian broadening, Ry (not eV!)
+(see below)
+         
+ + + + + + + + + + + +
+Emin, EmaxREAL
Default: band extrema +
+min, max energy (eV) for DOS plot. If unspecified, the
+lower and/or upper band value, plus/minus 3 times the
+value of the gaussian smearing if present, will be used.
+         
+ + + + + + + +
DeltaEREAL
+energy grid step (eV)
+         
+ + + + + + + + + + + +
fildosCHARACTER
Default: 'prefix.dos' +
+output file containing DOS(E)
+         
+ +
+
+

Notes

+
+

Output

+
+The total DOS (states/eV plotted vs E in eV) is written to file fildos
+         
+
+
+

Important !

+
+The tetrahedron method is used if
+
+    - the input data file has been produced by pw.x using the option
+      occupations='tetrahedra', AND
+
+    - a value for degauss is not given as input to namelist &dos
+
+
+Gaussian broadening is used in all other cases:
+
+    - if degauss is set to some value in namelist &DOS, that value
+      (and the optional value for ngauss) is used
+
+    - if degauss is NOT set to any value in namelist &DOS, the
+      value of degauss and of ngauss are read from the input data
+      file (they will be the same used in the pw.x calculations)
+
+    - if degauss is NOT set to any value in namelist &DOS, AND
+      there is no value of degauss and of ngauss in the input data
+      file, degauss=DeltaE (in Ry) and ngauss=0 will be used
+         
+
+
+
+ + This file has been created by helpdoc utility on Fri Jun 22 17:11:35 CEST 2018. + + + diff --git a/PP/Doc/INPUT_DOS.txt b/PP/Doc/INPUT_DOS.txt new file mode 100644 index 0000000000000000000000000000000000000000..31b72328f2bf920511b80b98d901636d2f0772b0 --- /dev/null +++ b/PP/Doc/INPUT_DOS.txt @@ -0,0 +1,135 @@ +*** FILE AUTOMATICALLY CREATED: DO NOT EDIT, CHANGES WILL BE LOST *** + +------------------------------------------------------------------------ +INPUT FILE DESCRIPTION + +Program: dos.x / PWscf / Quantum Espresso (version: svn) +------------------------------------------------------------------------ + + +Purpose of dos.x: + calculates the Density of States (DOS) + (separated into up and down components for DSDA) + + +Structure of the input data: +============================ + + &DOS + ... + / + +IMPORTANT: since v.5 namelist name is &DOS and no longer &INPUTPP + + + +======================================================================== +NAMELIST: &DOS + + +-------------------------------------------------------------------- + Variable: prefix + + Type: CHARACTER + Default: 'pwscf' + Description: prefix of input file produced by pw.x + (wavefunctions are not needed) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: outdir + + Type: CHARACTER + Description: directory containing the input data, i.e. the same as in pw.x + Default: value of the ESPRESSO_TMPDIR environment variable if set; + current directory ('./') otherwise + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ngauss + + Type: INTEGER + Default: 0 + Status: optional + Description: Type of gaussian broadening: + + = 0 Simple Gaussian (default) + + = 1 Methfessel-Paxton of order 1 + + = -1 Marzari-Vanderbilt "cold smearing" + + =-99 Fermi-Dirac function + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: degauss + + Type: REAL + Description: gaussian broadening, Ry (not eV!) + (see below) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: Emin, Emax + + Type: REAL + Default: band extrema + Description: min, max energy (eV) for DOS plot. If unspecified, the + lower and/or upper band value, plus/minus 3 times the + value of the gaussian smearing if present, will be used. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: DeltaE + + Type: REAL + Description: energy grid step (eV) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: fildos + + Type: CHARACTER + Default: '"prefix".dos' + Description: output file containing DOS(E) + +-------------------------------------------------------------------- + +===END OF NAMELIST====================================================== + + + +:::: Notes + + + ::: Output + + The total DOS (states/eV plotted vs E in eV) is written to file "fildos" + + + + ::: Important ! + + The tetrahedron method is used if + + - the input data file has been produced by pw.x using the option + occupations='tetrahedra', AND + + - a value for degauss is not given as input to namelist &dos + + + Gaussian broadening is used in all other cases: + + - if "degauss" is set to some value in namelist &DOS, that value + (and the optional value for "ngauss") is used + + - if "degauss" is NOT set to any value in namelist &DOS, the + value of "degauss" and of "ngauss" are read from the input data + file (they will be the same used in the pw.x calculations) + + - if "degauss" is NOT set to any value in namelist &DOS, AND + there is no value of "degauss" and of "ngauss" in the input data + file, "degauss"="DeltaE" (in Ry) and "ngauss"=0 will be used + + + +This file has been created by helpdoc utility on Fri Jun 22 17:11:35 CEST 2018 diff --git a/PP/Doc/INPUT_IMPORTEXPORT_BINARY.html b/PP/Doc/INPUT_IMPORTEXPORT_BINARY.html new file mode 100644 index 0000000000000000000000000000000000000000..1549246cc170b51803a36fd55c3f5137a59201c2 --- /dev/null +++ b/PP/Doc/INPUT_IMPORTEXPORT_BINARY.html @@ -0,0 +1,205 @@ + + + + + +importexport_binary.x: input description + + + + + +
+

Input File Description

+

Program: + importexport_binary.x / PWscf / Quantum Espresso (version: svn) +

+
+
+

TABLE OF CONTENTS

+
+ + +

INTRODUCTION

+

&INPUTPP

+
+prefix | outdir | direction | newoutdir +
+

Notes

+
Important !
+
+
+
+

INTRODUCTION

+
+Purpose of importexport_binary.x:
+    convert the binary file for the charge density (and
+    for the spin polarization) from the native binary
+    format, that is not machine-independent, to a text-only
+    XML format ("export" phase), and import it back to
+    binary for restarting.
+
+
+Structure of the input data:
+============================
+
+   &INPUTPP
+     prefix = '...'
+     ...
+   /
+   
+
+ + + +

Namelist: &INPUTPP +

+ + + + + + + + + + +
prefixCHARACTER
Default: 'pwscf' +
+prefix of input file produced by pw.x
+(wavefunctions are not needed)
+         
+ + + + + + + + + + + +
outdirCHARACTER
Default: +value of the ESPRESSO_TMPDIR environment variable if set; +current directory ('./') otherwise +
+directory containing the input data, i.e. the same as in pw.x
+         
+ + + + + + + + + + + +
directionCHARACTER
Default: 'export' +
+
+Selects the direction:
+            
+
+
'export' :
+
+for converting the charge density from the
+native binary format to text XML format
+            
+
+
+
'import' :
+
+for converting a previously exported folder
+from text XML format to binary format
+            
+
+
+ + + + + + + + + + + +
newoutdirCHARACTER
Default: +'./import' if the direction is 'import', +
'./export' if the direction is 'export' +
+directory into which the export data is going to be
+generated; after the 'import' phase, it can be then used as
+the outdir to restart for instance a pw.x NSCF calculation
+         
+ +
+
+

Notes

+
+

Important !

+
+The utility will also expect to find, and copy, the
+outdir/data-file.xml and the *.UPF pseudopotential files in the
+prefix.save subdirectory, and will copy them from the outdir
+to the newoutdir. It will then convert the charge density and
+spin polarization files in the correct format. Other files,
+in particular wavefunctions and the band structure (files
+eigenvals.xml in the K????? subfolder) are ignored and not
+copied.
+
+If you need also these files, please copy them by hand (they
+are anyway already in text XML format).
+
+Note that while a NSCF calculation does not need the
+band structure files, many other codes (in particular the
+post-processing ones) may need them.
+         
+
+
+
+ + This file has been created by helpdoc utility on Fri Jun 22 17:11:37 CEST 2018. + + + diff --git a/PP/Doc/INPUT_IMPORTEXPORT_BINARY.txt b/PP/Doc/INPUT_IMPORTEXPORT_BINARY.txt new file mode 100644 index 0000000000000000000000000000000000000000..0714fcdd9853d8cd0897184e53ce6075c5c59b06 --- /dev/null +++ b/PP/Doc/INPUT_IMPORTEXPORT_BINARY.txt @@ -0,0 +1,104 @@ +*** FILE AUTOMATICALLY CREATED: DO NOT EDIT, CHANGES WILL BE LOST *** + +------------------------------------------------------------------------ +INPUT FILE DESCRIPTION + +Program: importexport_binary.x / PWscf / Quantum Espresso (version: svn) +------------------------------------------------------------------------ + + +Purpose of importexport_binary.x: + convert the binary file for the charge density (and + for the spin polarization) from the native binary + format, that is not machine-independent, to a text-only + XML format ("export" phase), and import it back to + binary for restarting. + + +Structure of the input data: +============================ + + &INPUTPP + prefix = '...' + ... + / + + + +======================================================================== +NAMELIST: &INPUTPP + + +-------------------------------------------------------------------- + Variable: prefix + + Type: CHARACTER + Default: 'pwscf' + Description: prefix of input file produced by pw.x + (wavefunctions are not needed) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: outdir + + Type: CHARACTER + Description: directory containing the input data, i.e. the same as in pw.x + Default: value of the ESPRESSO_TMPDIR environment variable if set; + current directory ('./') otherwise + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: direction + + Type: CHARACTER + Description: + Selects the direction: + + 'export' : + for converting the charge density from the + native binary format to text XML format + + 'import' : + for converting a previously exported folder + from text XML format to binary format + Default: 'export' + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: newoutdir + + Type: CHARACTER + Description: directory into which the export data is going to be + generated; after the 'import' phase, it can be then used as + the outdir to restart for instance a pw.x NSCF calculation + Default: './import' if the direction is 'import', + './export' if the direction is 'export' + +-------------------------------------------------------------------- + +===END OF NAMELIST====================================================== + + + +:::: Notes + + + ::: Important ! + + The utility will also expect to find, and copy, the + outdir/data-file.xml and the *.UPF pseudopotential files in the + "prefix".save subdirectory, and will copy them from the outdir + to the newoutdir. It will then convert the charge density and + spin polarization files in the correct format. Other files, + in particular wavefunctions and the band structure (files + eigenvals.xml in the K????? subfolder) are ignored and not + copied. + + If you need also these files, please copy them by hand (they + are anyway already in text XML format). + + Note that while a NSCF calculation does not need the + band structure files, many other codes (in particular the + post-processing ones) may need them. + + + +This file has been created by helpdoc utility on Fri Jun 22 17:11:37 CEST 2018 diff --git a/PP/Doc/INPUT_PP.html b/PP/Doc/INPUT_PP.html new file mode 100644 index 0000000000000000000000000000000000000000..ad64abcc8ef1c2478ccf675325b680cbfdbc831c --- /dev/null +++ b/PP/Doc/INPUT_PP.html @@ -0,0 +1,860 @@ + + + + + +pp.x: input description + + + + + +
+

Input File Description

+

Program: + pp.x / PWscf / Quantum Espresso (version: svn) +

+
+
+

TABLE OF CONTENTS

+
+ + +

INTRODUCTION

+

&INPUTPP

+
+prefix | outdir | filplot | plot_num | spin_component | spin_component | emin | emax | delta_e | degauss_ldos | sample_bias | kpoint | kband | lsign | spin_component | emin | emax | spin_component | spin_component | spin_component +
+

&PLOT

+
+nfile | filepp | weight | iflag | output_format | fileout | interpolation | e1 | x0 | nx | e1 | e2 | x0 | nx | ny | e1 | e2 | e3 | x0 | nx | ny | nz | radius | nx | ny +
+
+
+
+

INTRODUCTION

+
+Purpose of pp.x: data analysis and plotting.
+
+The code performs two steps:
+
+(1) reads the output produced by pw.x, extracts and calculates
+    the desired quantity/quantities (rho, V, ...)
+
+(2) writes the desired quantity to file in a suitable format for
+    various types of plotting and various plotting programs
+
+The input data of this program is read from standard input
+or from file and has the following format:
+
+NAMELIST &INPUTPP
+   containing the variables for step (1), followed by
+
+NAMELIST &PLOT
+   containing the variables for step (2)
+
+The two steps can be performed independently. In order to perform
+only step (2), leave namelist &INPUTPP blank. In order to perform
+only step (1), do not specify namelist &PLOT
+
+Intermediate results from step 1 can be saved to disk (see
+variable filplot in &INPUTPP) and later read in step 2.
+Since the file with intermediate results is formatted, it
+can be safely transferred to a different machine. This
+also allows plotting of a linear combination (for instance,
+charge differences) by saving two intermediate files and
+combining them (see variables weight and filepp in &PLOT)
+
+All output quantities are in ATOMIC (RYDBERG) UNITS unless
+otherwise explicitly specified.
+   
+
+ + + +

Namelist: &INPUTPP +

+ + + + + + +
prefixCHARACTER
+prefix of files saved by program pw.x
+         
+ + + + + + + + + + + +
outdirCHARACTER
Default: +value of the ESPRESSO_TMPDIR environment variable if set; +current directory ('./') otherwise +
+directory containing the input data, i.e. the same as in pw.x
+         
+ + + + + + + +
filplotCHARACTER
+file "filplot" contains the quantity selected by plot_num
+(can be saved for further processing)
+         
+ + + + + + + +
plot_numINTEGER
+Selects what to save in filplot:
+
+   0  = electron (pseudo-)charge density
+
+   1  = total potential V_bare + V_H + V_xc
+
+   2  = local ionic potential V_bare
+
+   3  = local density of states at specific energy or grid of energies
+        (number of states per volume, in bohr^3, per energy unit, in Ry)
+
+   4  = local density of electronic entropy
+
+   5  = STM images
+        Tersoff and Hamann, PRB 31, 805 (1985)
+
+   6  = spin polarization (rho(up)-rho(down))
+
+   7  = contribution of selected wavefunction(s) to the
+        (pseudo-)charge density. For norm-conserving PPs,
+        |psi|^2 (psi=selected wavefunction). Noncollinear case:
+        contribution of the given state to the charge or
+        to the magnetization along the direction indicated
+        by spin_component (0 = charge, 1 = x, 2 = y, 3 = z )
+
+   8  = electron localization function (ELF)
+
+   9  = charge density minus superposition of atomic densities
+
+   10 = integrated local density of states (ILDOS)
+        from emin to emax (emin, emax in eV)
+        if emax is not specified, emax=E_fermi
+
+   11 = the V_bare + V_H potential
+
+   12 = the sawtooth electric field potential (if present)
+
+   13 = the noncollinear magnetization.
+
+   17 = all-electron valence charge density
+        can be performed for PAW calculations only
+        requires a very dense real-space grid!
+
+   18 = The exchange and correlation magnetic field in the noncollinear case
+
+   19 = Reduced density gradient
+        ( J. Chem. Theory Comput. 7, 625 (2011), doi:10.1021/ct100641a )
+        Set the isosurface between 0.3 and 0.6 to plot the
+        non-covalent interactions (see also plot_num = 20)
+
+   20 = Product of the electron density (charge) and the second
+        eigenvalue of the electron-density Hessian matrix;
+        used to colorize the RDG plot (plot_num = 19)
+
+   21 = all-electron charge density (valence+core).
+        For PAW calculations only; requires a very dense real-space grid.
+         
+ +
+IF plot_num=0 :
+

+Options for total charge (plot_num=0): +

+ + + + + + + + + + +
spin_componentINTEGER
Default: 0 +
+0 = total charge (default value),
+1 = spin up charge,
+2 = spin down charge.
+               
+ +
+ELSEIF plot_num=1 :
+

+Options for total potential (plot_num=1): +

+ + + + + + + + + + +
spin_componentINTEGER
Default: 0 +
+0 = spin averaged potential (default value),
+1 = spin up potential,
+2 = spin down potential.
+               
+ +
+ELSEIF plot_num=3 :
+

+Options for LDOS (plot_num=3): +LDOS is plotted on grid [emin, emax] with spacing delta_e. +

+ + + + + + + + + + +
eminREAL
Default: e_fermi +
+lower boundary of energy grid (in eV).
+
+Defaults to Fermi energy.
+               
+ + + + + + + + + + + +
emaxREAL
Status: OPTIONAL +
+upper boundary of energy grid (in eV).
+
+If not specified, LDOS is computed just for energy emin
+               
+ + + + + + + + + + + + + + + +
delta_eREAL
Default: 0.1 +
Status: OPTIONAL +
+spacing of energy grid (in eV).
+               
+ + + + + + + + + + + + + + + +
degauss_ldosREAL
Default: degauss (converted to eV) +
Status: OPTIONAL +
+broadening of energy levels for LDOS (in eV).
+
+Defaults to broadening degauss specified for electronic smearing
+in pw.x calculation.
+               
+ +
+ELSEIF plot_num=5 :
+

+Options for STM images (plot_num=5): +

+ + + + + + +
sample_biasREAL
+the bias of the sample (Ry) in stm images
+               
+ +
+ELSEIF plot_num=7 :
+

+Options for |psi|^2 (plot_num=7): +

+ + + + + + +
kpoint(i), i=1,2INTEGER
+Unpolarized and noncollinear case:
+        k-point(s) to be plotted
+LSDA:
+        k-point(s) and spin polarization to be plotted
+        (spin-up and spin-down correspond to different k-points!)
+
+To plot a single kpoint ikpt, specify kpoint=ikpt or kpoint(1)=ikpt
+To plot a range of kpoints [imin, imax], specify kpoint(1)=imin and kpoint(2)=imax
+               
+ + + + + + + +
kband(i), i=1,2INTEGER
+Band(s) to be plotted.
+
+To plot a single band ibnd, specify kband=ibnd or kband(1)=ibnd
+To plot a range of bands [imin, imax], specify kband(1)=imin and kband(2)=imax
+               
+ + + + + + + +
lsignLOGICAL
+if true and k point is Gamma, plot |psi|^2 sign(psi)
+               
+ + + + + + + + + + + + + + + +
spin_component(i), i=1,2INTEGER
Default: 0 +
Status: OPTIONAL +
+Noncollinear case only:
+plot the contribution of the given state(s) to the charge
+or to the magnetization along the direction(s) indicated
+by spin_component:
+        0 = charge (default),
+        1 = x,
+        2 = y,
+        3 = z.
+
+Ignored in unpolarized or LSDA case
+
+To plot a single component ispin, specify spin_component=ispin or spin_component(1)=ispin
+To plot a range of components [imin, imax], specify spin_component(1)=imin and spin_component(2)=imax
+               
+ +
+ELSEIF plot_num=10 :
+

+Options for ILDOS (plot_num=10): +

+ + + + + + +
eminREAL
+lower energy boundary (in eV)
+               
+ + + + + + + +
emaxREAL
+upper energy boundary (in eV),
+i.e. compute ILDOS from emin to emax
+               
+ + + + + + + + + + + +
spin_componentINTEGER
Default: 0 +
+for LSDA case only: plot the contribution to ILDOS of
+0 = spin-up + spin-down (default)
+1 = spin-up   only
+2 = spin-down only
+               
+ +
+ELSEIF plot_num=13 :
+

+Options for noncollinear magnetization (plot_num=13): +

+ + + + + + + + + + +
spin_componentINTEGER
Default: 0 +
+0 = absolute value (default value)
+1 = x component of the magnetization
+2 = y component of the magnetization
+3 = z component of the magnetization
+               
+ +
+ELSEIF plot_num=17 :
+

+Options for reconstructed charge density (plot_num=17): +

+ + + + + + + + + + +
spin_componentINTEGER
Default: 0 +
+0 = total charge (default value),
+1 = spin up charge,
+2 = spin down charge.
+               
+ +
+
+
+ + + +

Namelist: &PLOT +

+ + + + + + + + + + + + + + +
nfileINTEGER
Default: 1 +
Status: OPTIONAL +
+the number of data files to read
+         
+ +
+ + + + + + + + + + +
filepp(i), i=1,nfileCHARACTER
Default: filepp(1)=filplot +
+nfile = 1 : file containing the quantity to be plotted
+nfile > 1 : see weight
+            
+ + + + + + + + + + + +
weight(i), i=1,nfileREAL
Default: weight(1)=1.0 +
+weighing factors: assuming that rho(i) is the quantity
+read from filepp(i), the quantity that will be plotted is:
+
+weight(1)*rho(1) + weight(2)*rho(2) + weight(3)*rho(3) + ...
+            
+ +

+BEWARE: atomic coordinates are read from the first file;
+        if their number is different for different files,
+        the first file must have the largest number of atoms
+         

+
+ + + + + + +
iflagINTEGER
+0 = 1D plot of the spherical average
+1 = 1D plot
+2 = 2D plot
+3 = 3D plot
+4 = 2D polar plot on a sphere
+         
+ + + + + + + +
output_formatINTEGER
+(ignored on 1D plot)
+
+0  = format suitable for gnuplot   (1D)
+
+1  = format suitable for contour.x (2D)
+
+2  = format suitable for plotrho   (2D)
+
+3  = format suitable for XCRYSDEN  (2D or user-supplied 3D region)
+
+4  = format suitable for gOpenMol  (3D)
+     (formatted: convert to unformatted *.plt)
+
+5  = format suitable for XCRYSDEN  (3D, using entire FFT grid)
+
+6  = format as gaussian cube file  (3D)
+     (can be read by many programs)
+
+7  = format suitable for gnuplot   (2D) x, y, f(x,y)
+         
+ + + + + + + + + + + +
fileoutCHARACTER
Default: standard output +
+name of the file to which the plot is written
+         
+ + + + + + + + + + + +
interpolationCHARACTER
Default: 'fourier' +
+
+Type of interpolation:
+            
+
+
'fourier'
+
+            
+
+
+
'bspline' :
+
 (EXPERIMENTAL)
+            
+
+
+ +
+IF iflag = 0 or 1 :
+

the following variables are REQUIRED: +

+ + + + + + +
e1(i), i=1,3REAL
+3D vector which determines the plotting line (in alat units)
+               
+ + + + + + + +
x0(i), i=1,3REAL
+3D vector, origin of the line (in alat units)
+               
+ + + + + + + +
nxINTEGER
+number of points in the line:
+
+rho(i) = rho( x0 + e1 * (i-1)/(nx-1) ), i=1, nx
+               
+ +
+ELSEIF iflag = 2 :
+

the following variables are REQUIRED: +

+ + + + + + +
+e1(i), + e2(i), + + i=1,3REAL
+3D vectors which determine the plotting plane (in alat units)
+
+BEWARE: e1 and e2 must be orthogonal
+               
+ + + + + + + +
x0(i), i=1,3REAL
+3D vector, origin of the plane (in alat units)
+               
+ + + + + + + +
+nx, nyINTEGER
+Number of points in the plane:
+
+rho(i,j) = rho( x0 + e1 * (i-1)/(nx-1)
+                + e2 * (j-1)/(ny-1) ), i=1,nx ; j=1,ny
+               
+ +
+ELSEIF iflag = 3 :
+

the following variables are OPTIONAL: +

+ + + + + + +
+e1(i), + e2(i), + e3(i), + + i=1,3REAL
+3D vectors which determine the plotting parallelepiped
+(if present, must be orthogonal)
+
+e1, e2, and e3 are in alat units !
+               
+ + + + + + + +
x0(i), i=1,3REAL
+3D vector, origin of the parallelepiped
+
+x0 is in alat units !
+               
+ + + + + + + +
+nx, ny, nzINTEGER
+Number of points in the parallelepiped:
+
+rho(i,j,k) = rho( x0 + e1 * (i-1)/nx
+                  + e2 * (j-1)/ny
+                  + e3 * (k-1)/nz ),
+             i = 1, nx ; j = 1, ny ; k = 1, nz
+
+- If output_format = 3 (XCRYSDEN), the above variables
+  are used to determine the grid to plot.
+
+- If output_format = 5 (XCRYSDEN), the above variables
+  are ignored, the entire FFT grid is written in the
+  XCRYSDEN format - works for any crystal axis (VERY FAST)
+
+- If e1, e2, e3, x0 are present, and e1, e2, e3 are parallel
+  to xyz and parallel to crystal axis, a subset of the
+  FFT grid that approximately covers the parallelepiped
+  defined by e1, e2, e3, x0, is written (presently only
+  if output_format = 4, i.e. gopenmol format) - works only
+  if the crystal axis are parallel to xyz
+
+- Otherwise, the required 3D grid is generated from the
+  Fourier components (may be VERY slow)
+               
+ +
+ELSEIF iflag = 4 :
+

the following variables are REQUIRED: +

+ + + + + + +
radiusREAL
+Radius of the sphere (alat units), centered at (0,0,0)
+               
+ + + + + + + +
+nx, nyINTEGER
+Number of points in the polar plane:
+
+phi(i)   = 2 pi * (i - 1)/(nx-1), i=1, nx
+theta(j) =   pi * (j - 1)/(ny-1), j=1, ny
+               
+ +
+
+
+
+ + This file has been created by helpdoc utility on Fri Jun 22 17:11:34 CEST 2018. + + + diff --git a/PP/Doc/INPUT_PP.txt b/PP/Doc/INPUT_PP.txt new file mode 100644 index 0000000000000000000000000000000000000000..d3bfd62bd829d7647226bfa1d0ac5159b6a4eb37 --- /dev/null +++ b/PP/Doc/INPUT_PP.txt @@ -0,0 +1,587 @@ +*** FILE AUTOMATICALLY CREATED: DO NOT EDIT, CHANGES WILL BE LOST *** + +------------------------------------------------------------------------ +INPUT FILE DESCRIPTION + +Program: pp.x / PWscf / Quantum Espresso (version: svn) +------------------------------------------------------------------------ + + +Purpose of pp.x: data analysis and plotting. + +The code performs two steps: + +(1) reads the output produced by pw.x, extracts and calculates + the desired quantity/quantities (rho, V, ...) + +(2) writes the desired quantity to file in a suitable format for + various types of plotting and various plotting programs + +The input data of this program is read from standard input +or from file and has the following format: + +NAMELIST &INPUTPP + containing the variables for step (1), followed by + +NAMELIST &PLOT + containing the variables for step (2) + +The two steps can be performed independently. In order to perform +only step (2), leave namelist &INPUTPP blank. In order to perform +only step (1), do not specify namelist &PLOT + +Intermediate results from step 1 can be saved to disk (see +variable "filplot" in &INPUTPP) and later read in step 2. +Since the file with intermediate results is formatted, it +can be safely transferred to a different machine. This +also allows plotting of a linear combination (for instance, +charge differences) by saving two intermediate files and +combining them (see variables "weight" and "filepp" in &PLOT) + +All output quantities are in ATOMIC (RYDBERG) UNITS unless +otherwise explicitly specified. + + + +======================================================================== +NAMELIST: &INPUTPP + + +-------------------------------------------------------------------- + Variable: prefix + + Type: CHARACTER + Description: prefix of files saved by program pw.x + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: outdir + + Type: CHARACTER + Description: directory containing the input data, i.e. the same as in pw.x + Default: value of the ESPRESSO_TMPDIR environment variable if set; + current directory ('./') otherwise + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: filplot + + Type: CHARACTER + Description: file "filplot" contains the quantity selected by plot_num + (can be saved for further processing) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: plot_num + + Type: INTEGER + Description: Selects what to save in filplot: + + 0 = electron (pseudo-)charge density + + 1 = total potential V_bare + V_H + V_xc + + 2 = local ionic potential V_bare + + 3 = local density of states at specific energy or grid of energies + (number of states per volume, in bohr^3, per energy unit, in Ry) + + 4 = local density of electronic entropy + + 5 = STM images + Tersoff and Hamann, PRB 31, 805 (1985) + + 6 = spin polarization (rho(up)-rho(down)) + + 7 = contribution of selected wavefunction(s) to the + (pseudo-)charge density. For norm-conserving PPs, + |psi|^2 (psi=selected wavefunction). Noncollinear case: + contribution of the given state to the charge or + to the magnetization along the direction indicated + by spin_component (0 = charge, 1 = x, 2 = y, 3 = z ) + + 8 = electron localization function (ELF) + + 9 = charge density minus superposition of atomic densities + + 10 = integrated local density of states (ILDOS) + from "emin" to "emax" (emin, emax in eV) + if "emax" is not specified, "emax"=E_fermi + + 11 = the V_bare + V_H potential + + 12 = the sawtooth electric field potential (if present) + + 13 = the noncollinear magnetization. + + 17 = all-electron valence charge density + can be performed for PAW calculations only + requires a very dense real-space grid! + + 18 = The exchange and correlation magnetic field in the noncollinear case + + 19 = Reduced density gradient + ( J. Chem. Theory Comput. 7, 625 (2011), doi:10.1021/ct100641a ) + Set the isosurface between 0.3 and 0.6 to plot the + non-covalent interactions (see also plot_num = 20) + + 20 = Product of the electron density (charge) and the second + eigenvalue of the electron-density Hessian matrix; + used to colorize the RDG plot (plot_num = 19) + + 21 = all-electron charge density (valence+core). + For PAW calculations only; requires a very dense real-space grid. + +-------------------------------------------------------------------- + + ________________________________________________________________________ + * IF plot_num=0 : + + OPTIONS FOR TOTAL CHARGE (PLOT_NUM=0): + + +-------------------------------------------------------------------- + Variable: spin_component + + Type: INTEGER + Default: 0 + Description: 0 = total charge (default value), + 1 = spin up charge, + 2 = spin down charge. + +-------------------------------------------------------------------- + + + * ELSE IF plot_num=1 : + + OPTIONS FOR TOTAL POTENTIAL (PLOT_NUM=1): + + +-------------------------------------------------------------------- + Variable: spin_component + + Type: INTEGER + Default: 0 + Description: 0 = spin averaged potential (default value), + 1 = spin up potential, + 2 = spin down potential. + +-------------------------------------------------------------------- + + + * ELSE IF plot_num=3 : + + OPTIONS FOR LDOS (PLOT_NUM=3): + LDOS IS PLOTTED ON GRID [EMIN, EMAX] WITH SPACING DELTA_E. + + +-------------------------------------------------------------------- + Variable: emin + + Type: REAL + Default: e_fermi + Description: lower boundary of energy grid (in eV). + + Defaults to Fermi energy. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: emax + + Type: REAL + Status: OPTIONAL + Description: upper boundary of energy grid (in eV). + + If not specified, LDOS is computed just for energy "emin" + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: delta_e + + Type: REAL + Default: 0.1 + Status: OPTIONAL + Description: spacing of energy grid (in eV). + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: degauss_ldos + + Type: REAL + Default: degauss (converted to eV) + Status: OPTIONAL + Description: broadening of energy levels for LDOS (in eV). + + Defaults to broadening degauss specified for electronic smearing + in pw.x calculation. + +-------------------------------------------------------------------- + + + * ELSE IF plot_num=5 : + + OPTIONS FOR STM IMAGES (PLOT_NUM=5): + + +-------------------------------------------------------------------- + Variable: sample_bias + + Type: REAL + Description: the bias of the sample (Ry) in stm images + +-------------------------------------------------------------------- + + + * ELSE IF plot_num=7 : + + OPTIONS FOR |PSI|^2 (PLOT_NUM=7): + + +-------------------------------------------------------------------- + Variable: kpoint(i), i=1,2 + + Type: INTEGER + Description: Unpolarized and noncollinear case: + k-point(s) to be plotted + LSDA: + k-point(s) and spin polarization to be plotted + (spin-up and spin-down correspond to different k-points!) + + To plot a single kpoint ikpt, specify kpoint=ikpt or kpoint(1)=ikpt + To plot a range of kpoints [imin, imax], specify kpoint(1)=imin and kpoint(2)=imax + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: kband(i), i=1,2 + + Type: INTEGER + Description: Band(s) to be plotted. + + To plot a single band ibnd, specify kband=ibnd or kband(1)=ibnd + To plot a range of bands [imin, imax], specify kband(1)=imin and kband(2)=imax + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: lsign + + Type: LOGICAL + Description: if true and k point is Gamma, plot |psi|^2 sign(psi) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: spin_component(i), i=1,2 + + Type: INTEGER + Default: 0 + Status: OPTIONAL + Description: Noncollinear case only: + plot the contribution of the given state(s) to the charge + or to the magnetization along the direction(s) indicated + by spin_component: + 0 = charge (default), + 1 = x, + 2 = y, + 3 = z. + + Ignored in unpolarized or LSDA case + + To plot a single component ispin, specify spin_component=ispin or spin_component(1)=ispin + To plot a range of components [imin, imax], specify spin_component(1)=imin and spin_component(2)=imax + +-------------------------------------------------------------------- + + + * ELSE IF plot_num=10 : + + OPTIONS FOR ILDOS (PLOT_NUM=10): + + +-------------------------------------------------------------------- + Variable: emin + + Type: REAL + Description: lower energy boundary (in eV) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: emax + + Type: REAL + Description: upper energy boundary (in eV), + i.e. compute ILDOS from "emin" to "emax" + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: spin_component + + Type: INTEGER + Default: 0 + Description: for LSDA case only: plot the contribution to ILDOS of + 0 = spin-up + spin-down (default) + 1 = spin-up only + 2 = spin-down only + +-------------------------------------------------------------------- + + + * ELSE IF plot_num=13 : + + OPTIONS FOR NONCOLLINEAR MAGNETIZATION (PLOT_NUM=13): + + +-------------------------------------------------------------------- + Variable: spin_component + + Type: INTEGER + Default: 0 + Description: 0 = absolute value (default value) + 1 = x component of the magnetization + 2 = y component of the magnetization + 3 = z component of the magnetization + +-------------------------------------------------------------------- + + + * ELSE IF plot_num=17 : + + OPTIONS FOR RECONSTRUCTED CHARGE DENSITY (PLOT_NUM=17): + + +-------------------------------------------------------------------- + Variable: spin_component + + Type: INTEGER + Default: 0 + Description: 0 = total charge (default value), + 1 = spin up charge, + 2 = spin down charge. + +-------------------------------------------------------------------- + + + ENDIF + ________________________________________________________________________ + +===END OF NAMELIST====================================================== + + +======================================================================== +NAMELIST: &PLOT + + +-------------------------------------------------------------------- + Variable: nfile + + Type: INTEGER + Default: 1 + Status: OPTIONAL + Description: the number of data files to read + +-------------------------------------------------------------------- + + ///--- + +-------------------------------------------------------------------- + Variable: filepp(i), i=1,nfile + + Type: CHARACTER + Default: filepp(1)=filplot + Description: nfile = 1 : file containing the quantity to be plotted + nfile > 1 : see "weight" + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: weight(i), i=1,nfile + + Type: REAL + Default: weight(1)=1.0 + Description: weighing factors: assuming that rho(i) is the quantity + read from filepp(i), the quantity that will be plotted is: + + weight(1)*rho(1) + weight(2)*rho(2) + weight(3)*rho(3) + ... + +-------------------------------------------------------------------- + + BEWARE: atomic coordinates are read from the first file; + if their number is different for different files, + the first file must have the largest number of atoms + + \\\--- + + +-------------------------------------------------------------------- + Variable: iflag + + Type: INTEGER + Description: 0 = 1D plot of the spherical average + 1 = 1D plot + 2 = 2D plot + 3 = 3D plot + 4 = 2D polar plot on a sphere + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: output_format + + Type: INTEGER + Description: (ignored on 1D plot) + + 0 = format suitable for gnuplot (1D) + + 1 = format suitable for contour.x (2D) + + 2 = format suitable for plotrho (2D) + + 3 = format suitable for XCRYSDEN (2D or user-supplied 3D region) + + 4 = format suitable for gOpenMol (3D) + (formatted: convert to unformatted *.plt) + + 5 = format suitable for XCRYSDEN (3D, using entire FFT grid) + + 6 = format as gaussian cube file (3D) + (can be read by many programs) + + 7 = format suitable for gnuplot (2D) x, y, f(x,y) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: fileout + + Type: CHARACTER + Default: standard output + Description: name of the file to which the plot is written + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: interpolation + + Type: CHARACTER + Default: 'fourier' + Description: + Type of interpolation: + 'fourier' + + 'bspline' : + (EXPERIMENTAL) + +-------------------------------------------------------------------- + + ________________________________________________________________________ + * IF iflag = 0 or 1 : + + THE FOLLOWING VARIABLES ARE REQUIRED: + + +-------------------------------------------------------------------- + Variable: e1(i), i=1,3 + + Type: REAL + Description: 3D vector which determines the plotting line (in alat units) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: x0(i), i=1,3 + + Type: REAL + Description: 3D vector, origin of the line (in alat units) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: nx + + Type: INTEGER + Description: number of points in the line: + + rho(i) = rho( x0 + e1 * (i-1)/(nx-1) ), i=1, nx + +-------------------------------------------------------------------- + + + * ELSE IF iflag = 2 : + + THE FOLLOWING VARIABLES ARE REQUIRED: + + +-------------------------------------------------------------------- + Variables: e1(i), e2(i), i=1,3 + + Type: REAL + Description: 3D vectors which determine the plotting plane (in alat units) + + BEWARE: @b e1 and @b e2 must be orthogonal + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: x0(i), i=1,3 + + Type: REAL + Description: 3D vector, origin of the plane (in alat units) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: nx, ny + + Type: INTEGER + Description: Number of points in the plane: + + rho(i,j) = rho( x0 + e1 * (i-1)/(nx-1) + + e2 * (j-1)/(ny-1) ), i=1,nx ; j=1,ny + +-------------------------------------------------------------------- + + + * ELSE IF iflag = 3 : + + THE FOLLOWING VARIABLES ARE OPTIONAL: + + +-------------------------------------------------------------------- + Variables: e1(i), e2(i), e3(i), i=1,3 + + Type: REAL + Description: 3D vectors which determine the plotting parallelepiped + (if present, must be orthogonal) + + @ref e1, @ref e2, and @ref e3 are in alat units ! + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: x0(i), i=1,3 + + Type: REAL + Description: 3D vector, origin of the parallelepiped + + "x0" is in alat units ! + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: nx, ny, nz + + Type: INTEGER + Description: Number of points in the parallelepiped: + + rho(i,j,k) = rho( x0 + e1 * (i-1)/nx + + e2 * (j-1)/ny + + e3 * (k-1)/nz ), + i = 1, nx ; j = 1, ny ; k = 1, nz + + - If @ref output_format = 3 (XCRYSDEN), the above variables + are used to determine the grid to plot. + + - If @ref output_format = 5 (XCRYSDEN), the above variables + are ignored, the entire FFT grid is written in the + XCRYSDEN format - works for any crystal axis (VERY FAST) + + - If @ref e1, @ref e2, @ref e3, @ref x0 are present, and @ref e1, @ref e2, @ref e3 are parallel + to xyz and parallel to crystal axis, a subset of the + FFT grid that approximately covers the parallelepiped + defined by @ref e1, @ref e2, @ref e3, @ref x0, is written (presently only + if @ref output_format = 4, i.e. gopenmol format) - works only + if the crystal axis are parallel to xyz + + - Otherwise, the required 3D grid is generated from the + Fourier components (may be VERY slow) + +-------------------------------------------------------------------- + + + * ELSE IF iflag = 4 : + + THE FOLLOWING VARIABLES ARE REQUIRED: + + +-------------------------------------------------------------------- + Variable: radius + + Type: REAL + Description: Radius of the sphere (alat units), centered at (0,0,0) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: nx, ny + + Type: INTEGER + Description: Number of points in the polar plane: + + phi(i) = 2 pi * (i - 1)/(nx-1), i=1, nx + theta(j) = pi * (j - 1)/(ny-1), j=1, ny + +-------------------------------------------------------------------- + + + ENDIF + ________________________________________________________________________ + +===END OF NAMELIST====================================================== + + +This file has been created by helpdoc utility on Fri Jun 22 17:11:34 CEST 2018 diff --git a/PP/Doc/INPUT_PROJWFC.html b/PP/Doc/INPUT_PROJWFC.html new file mode 100644 index 0000000000000000000000000000000000000000..ef43c7a6d062d132fe64266df4b90904a5f7866c --- /dev/null +++ b/PP/Doc/INPUT_PROJWFC.html @@ -0,0 +1,513 @@ + + + + + +projwfc.x: input description + + + + + +
+

Input File Description

+

Program: + projwfc.x / PWscf / Quantum Espresso (version: svn) +

+
+
+

TABLE OF CONTENTS

+
+ + +

INTRODUCTION

+

&PROJWFC

+
+prefix | outdir | ngauss | degauss | Emin | Emax | DeltaE | lsym | pawproj | filpdos | filproj | lwrite_overlaps | lbinary_data | kresolveddos | tdosinboxes | n_proj_boxes | irmin(3,n_proj_boxes) | irmax(3,n_proj_boxes) | plotboxes +
+

Notes

+
Format of output files
+
Orbital Order
+
Defining boxes for the Local DOS(E)
+
Important notices
+
+
+
+

INTRODUCTION

+
+Purpose of projwfc.x:
+    projects wavefunctions onto orthogonalized atomic wavefunctions,
+    calculates Lowdin charges, spilling parameter, projected DOS
+    (separated into up and down components for lSDA)
+    alternatively, computes the local DOS(E), integrated in volumes
+    given in input
+
+Structure of the input data:
+============================
+
+   &PROJWFC
+     ...
+   /
+   
+
+ + + +

Namelist: &PROJWFC +

+ + + + + + + + + + +
prefixCHARACTER
Default: 'pwscf' +
+prefix of input file produced by pw.x (wavefunctions are needed)
+         
+ + + + + + + + + + + +
outdirCHARACTER
Default: +value of the ESPRESSO_TMPDIR environment variable if set; +current directory ('./') otherwise +
+directory containing the input data, i.e. the same as in pw.x
+         
+ + + + + + + + + + + +
ngaussINTEGER
Default: 0 +
+Type of gaussian broadening:
+    0 ... Simple Gaussian (default)
+    1 ... Methfessel-Paxton of order 1
+   -1 ... Marzari-Vanderbilt "cold smearing"
+  -99 ... Fermi-Dirac function
+         
+ + + + + + + + + + + +
degaussREAL
Default: 0.0 +
 gaussian broadening, Ry (not eV!)
+         
+ + + + + + + + + + + +
+Emin, EmaxREAL
Default: (band extrema) +
 min & max energy (eV) for DOS plot
+         
+ + + + + + + +
DeltaEREAL
 energy grid step (eV)
+         
+ + + + + + + + + + + +
lsymLOGICAL
Default: .true. +
+if .true.  the projections are symmetrized,
+           the partial density of states are computed
+if .false. the projections are not symmetrized, the partial
+           DOS can be computed only in the k-resolved case
+         
+ + + + + + + + + + + +
pawprojLOGICAL
Default: .false. +
+if .true. use PAW projectors and all-electron PAW basis
+functions to calculate weight factors for the partial
+densities of states. Following Bloechl, PRB 50, 17953 (1994),
+Eq. (4 & 6), the weight factors thus approximate the real
+charge within the augmentation sphere of each atom.
+Only for PAW, not implemented in the noncolinear case.
+         
+ + + + + + + + + + + +
filpdosCHARACTER
Default: (value of prefix variable) +
 prefix for output files containing PDOS(E)
+         
+ + + + + + + + + + + +
filprojCHARACTER
Default: (standard output) +
+file containing the projections
+         
+ + + + + + + + + + + +
lwrite_overlapsLOGICAL
Default: .false. +
+if .true., the overlap matrix of the atomic orbitals
+prior to orthogonalization is written to the atomic_proj datafile.
+         
+ + + + + + + + + + + +
lbinary_dataLOGICAL
Default: .false. +
+if .true., the atomic_proj datafile is written in binary fmt.
+         
+ + + + + + + + + + + +
kresolveddosLOGICAL
Default: .false. +
+if .true. the k-resolved DOS is computed: not summed over
+all k-points but written as a function of the k-point index.
+In this case all k-point weights are set to unity
+         
+ + + + + + + + + + + +
tdosinboxesLOGICAL
Default: .false. +
+if .true. compute the local DOS integrated in volumes
+
+Volumes are defined as boxes with edges parallel to the unit cell,
+containing the points of the (charge density) FFT grid included within
+irmin and irmax, in the three dimensions:
+
+from irmin(j,n) to irmax(j,n) for j=1,2,3 (n=1,n_proj_boxes).
+         
+ + + + + + + + + + + +
n_proj_boxesINTEGER
Default: 1 +
+number of boxes where the local DOS is computed
+         
+ + + + + + + + + + + +
irmin(3,n_proj_boxes)INTEGER
Default: 1 for each box +
+first point of the given box
+
+BEWARE: irmin is a 2D array of the form: irmin(3,n_proj_boxes)
+         
+ + + + + + + + + + + +
irmax(3,n_proj_boxes)INTEGER
Default: 0 for each box +
+last point of the given box;
+( 0 stands for the last point in the FFT grid )
+
+BEWARE: irmax is a 2D array of the form: irmax(3,n_proj_boxes)
+         
+ + + + + + + + + + + +
plotboxesLOGICAL
Default: .false. +
+if .true., the boxes are written in output as xsf files with
+3D datagrids, valued 1.0 inside the box volume and 0 outside
+(visualize them as isosurfaces with isovalue 0.5)
+         
+ +
+
+

Notes

+
+

Format of output files

+
+Projections are written to standard output, and also to file
+filproj if given as input.
+
+The total DOS and the sum of projected DOS are written to file
+"filpdos".pdos_tot.
+
+* The format for the collinear, spin-unpolarized case and the
+  non-collinear, spin-orbit case is:
+      E DOS(E) PDOS(E)
+      ...
+
+* The format for the collinear, spin-polarized case is:
+      E DOSup(E) DOSdw(E)  PDOSup(E) PDOSdw(E)
+      ...
+
+* The format for the non-collinear, non spin-orbit case is:
+      E DOS(E) PDOSup(E) PDOSdw(E)
+      ...
+
+In the collinear case and the non-collinear, non spin-orbit case
+projected DOS are written to file "filpdos".pdos_atm#N(X)_wfc#M(l),
+where N = atom number , X = atom symbol, M = wfc number, l=s,p,d,f
+(one file per atomic wavefunction found in the pseudopotential file)
+
+* The format for the collinear, spin-unpolarized case is:
+      E LDOS(E) PDOS_1(E) ... PDOS_2l+1(E)
+      ...
+  where LDOS = \sum m=1,2l+1 PDOS_m(E)
+  and PDOS_m(E) = projected DOS on atomic wfc with component m
+
+* The format for the collinear, spin-polarized case and the
+  non-collinear, non spin-orbit case is as above with
+  two components for both  LDOS(E) and PDOS_m(E)
+
+In the non-collinear, spin-orbit case (i.e. if there is at least one
+fully relativistic pseudopotential) wavefunctions are projected
+onto eigenstates of the total angular-momentum.
+Projected DOS are written to file "filpdos".pdos_atm#N(X)_wfc#M(l_j),
+where N = atom number , X = atom symbol, M = wfc number, l=s,p,d,f
+and j is the value of the total angular momentum.
+In this case the format is:
+    E LDOS(E) PDOS_1(E) ... PDOS_2j+1(E)
+    ...
+
+If kresolveddos=.true., the k-point index is prepended
+to the formats above, e.g. (collinear, spin-unpolarized case)
+    ik E DOS(E) PDOS(E)
+
+All DOS(E) are in states/eV plotted vs E in eV
+         
+
+
+

Orbital Order

+
+Order of m-components for each l in the output:
+
+    1, cos(phi), sin(phi), cos(2*phi), sin(2*phi), .., cos(l*phi), sin(l*phi)
+
+where phi is the polar angle:x=r cos(theta)cos(phi), y=r cos(theta)sin(phi)
+This is determined in file Modules/ylmr2.f90 that calculates spherical harmonics.
+
+for l=1:
+  1 pz     (m=0)
+  2 px     (real combination of m=+/-1 with cosine)
+  3 py     (real combination of m=+/-1 with sine)
+
+for l=2:
+  1 dz2    (m=0)
+  2 dzx    (real combination of m=+/-1 with cosine)
+  3 dzy    (real combination of m=+/-1 with sine)
+  4 dx2-y2 (real combination of m=+/-2 with cosine)
+  5 dxy    (real combination of m=+/-2 with sine)
+         
+
+
+

Defining boxes for the Local DOS(E)

+
+Boxes are specified using the variables irmin and irmax:
+
+FFT grid points are included from irmin(j,n) to irmax(j,n)
+for j=1,2,3 and n=1,...,n_proj_boxes
+
+irmin and irmax range from 1 to nr1 or nr2 or nr3
+
+Values larger than nr1/2/3 or smaller than 1 are folded
+to the unit cell.
+
+If irmax<irmin FFT grid points are included from 1 to irmax
+and from irmin to nr1/2/3.
+         
+
+
+

Important notices

+
+* The tetrahedron method is presently not implemented.
+
+* Gaussian broadening is used in all cases:
+
+    - if degauss is set to some value in namelist &PROJWFC, that value
+      (and the optional value for ngauss) is used
+
+    - if degauss is NOT set to any value in namelist &PROJWFC, the
+      value of degauss and of ngauss are read from the input data
+      file (they will be the same used in the pw.x calculations)
+
+    - if degauss is NOT set to any value in namelist &PROJWFC, AND
+      there is no value of degauss and of ngauss in the input data
+      file, degauss=DeltaE (in Ry) and ngauss=0 will be used
+
+
+Obsolete variables, ignored:
+    io_choice
+    smoothing
+         
+
+
+
+ + This file has been created by helpdoc utility on Fri Jun 22 17:11:35 CEST 2018. + + + diff --git a/PP/Doc/INPUT_PROJWFC.txt b/PP/Doc/INPUT_PROJWFC.txt new file mode 100644 index 0000000000000000000000000000000000000000..67ffa555b35d535314b0a4d437e432d4bd63f8af --- /dev/null +++ b/PP/Doc/INPUT_PROJWFC.txt @@ -0,0 +1,326 @@ +*** FILE AUTOMATICALLY CREATED: DO NOT EDIT, CHANGES WILL BE LOST *** + +------------------------------------------------------------------------ +INPUT FILE DESCRIPTION + +Program: projwfc.x / PWscf / Quantum Espresso (version: svn) +------------------------------------------------------------------------ + + +Purpose of projwfc.x: + projects wavefunctions onto orthogonalized atomic wavefunctions, + calculates Lowdin charges, spilling parameter, projected DOS + (separated into up and down components for lSDA) + alternatively, computes the local DOS(E), integrated in volumes + given in input + +Structure of the input data: +============================ + + &PROJWFC + ... + / + + + +======================================================================== +NAMELIST: &PROJWFC + + +-------------------------------------------------------------------- + Variable: prefix + + Type: CHARACTER + Description: prefix of input file produced by pw.x (wavefunctions are needed) + Default: 'pwscf' + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: outdir + + Type: CHARACTER + Description: directory containing the input data, i.e. the same as in pw.x + Default: value of the ESPRESSO_TMPDIR environment variable if set; + current directory ('./') otherwise + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ngauss + + Type: INTEGER + Default: 0 + Description: Type of gaussian broadening: + 0 ... Simple Gaussian (default) + 1 ... Methfessel-Paxton of order 1 + -1 ... Marzari-Vanderbilt "cold smearing" + -99 ... Fermi-Dirac function + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: degauss + + Type: REAL + Default: 0.0 + Description: gaussian broadening, Ry (not eV!) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: Emin, Emax + + Type: REAL + Default: (band extrema) + Description: min & max energy (eV) for DOS plot + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: DeltaE + + Type: REAL + Description: energy grid step (eV) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: lsym + + Type: LOGICAL + Default: .true. + Description: if .true. the projections are symmetrized, + the partial density of states are computed + if .false. the projections are not symmetrized, the partial + DOS can be computed only in the k-resolved case + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: pawproj + + Type: LOGICAL + Default: .false. + Description: if .true. use PAW projectors and all-electron PAW basis + functions to calculate weight factors for the partial + densities of states. Following Bloechl, PRB 50, 17953 (1994), + Eq. (4 & 6), the weight factors thus approximate the real + charge within the augmentation sphere of each atom. + Only for PAW, not implemented in the noncolinear case. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: filpdos + + Type: CHARACTER + Description: prefix for output files containing PDOS(E) + Default: (value of "prefix" variable) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: filproj + + Type: CHARACTER + Default: (standard output) + Description: file containing the projections + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: lwrite_overlaps + + Type: LOGICAL + Default: .false. + Description: if .true., the overlap matrix of the atomic orbitals + prior to orthogonalization is written to the atomic_proj datafile. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: lbinary_data + + Type: LOGICAL + Default: .false. + Description: if .true., the atomic_proj datafile is written in binary fmt. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: kresolveddos + + Type: LOGICAL + Default: .false. + Description: if .true. the k-resolved DOS is computed: not summed over + all k-points but written as a function of the k-point index. + In this case all k-point weights are set to unity + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: tdosinboxes + + Type: LOGICAL + Default: .false. + Description: if .true. compute the local DOS integrated in volumes + + Volumes are defined as boxes with edges parallel to the unit cell, + containing the points of the (charge density) FFT grid included within + "irmin" and "irmax", in the three dimensions: + + from "irmin"(j,n) to "irmax"(j,n) for j=1,2,3 (n=1,"n_proj_boxes"). + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: n_proj_boxes + + Type: INTEGER + Default: 1 + Description: number of boxes where the local DOS is computed + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: irmin(3,n_proj_boxes) + + Type: INTEGER + Default: 1 for each box + Description: first point of the given box + + BEWARE: "irmin" is a 2D array of the form: "irmin"(3,"n_proj_boxes") + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: irmax(3,n_proj_boxes) + + Type: INTEGER + Default: 0 for each box + Description: last point of the given box; + ( 0 stands for the last point in the FFT grid ) + + BEWARE: "irmax" is a 2D array of the form: "irmax"(3,"n_proj_boxes") + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: plotboxes + + Type: LOGICAL + Default: .false. + Description: if .true., the boxes are written in output as xsf files with + 3D datagrids, valued 1.0 inside the box volume and 0 outside + (visualize them as isosurfaces with isovalue 0.5) + +-------------------------------------------------------------------- + +===END OF NAMELIST====================================================== + + + +:::: Notes + + + ::: Format of output files + + Projections are written to standard output, and also to file + "filproj" if given as input. + + The total DOS and the sum of projected DOS are written to file + "filpdos".pdos_tot. + + * The format for the collinear, spin-unpolarized case and the + non-collinear, spin-orbit case is: + E DOS(E) PDOS(E) + ... + + * The format for the collinear, spin-polarized case is: + E DOSup(E) DOSdw(E) PDOSup(E) PDOSdw(E) + ... + + * The format for the non-collinear, non spin-orbit case is: + E DOS(E) PDOSup(E) PDOSdw(E) + ... + + In the collinear case and the non-collinear, non spin-orbit case + projected DOS are written to file "filpdos".pdos_atm#N(X)_wfc#M(l), + where N = atom number , X = atom symbol, M = wfc number, l=s,p,d,f + (one file per atomic wavefunction found in the pseudopotential file) + + * The format for the collinear, spin-unpolarized case is: + E LDOS(E) PDOS_1(E) ... PDOS_2l+1(E) + ... + where LDOS = \sum m=1,2l+1 PDOS_m(E) + and PDOS_m(E) = projected DOS on atomic wfc with component m + + * The format for the collinear, spin-polarized case and the + non-collinear, non spin-orbit case is as above with + two components for both LDOS(E) and PDOS_m(E) + + In the non-collinear, spin-orbit case (i.e. if there is at least one + fully relativistic pseudopotential) wavefunctions are projected + onto eigenstates of the total angular-momentum. + Projected DOS are written to file "filpdos".pdos_atm#N(X)_wfc#M(l_j), + where N = atom number , X = atom symbol, M = wfc number, l=s,p,d,f + and j is the value of the total angular momentum. + In this case the format is: + E LDOS(E) PDOS_1(E) ... PDOS_2j+1(E) + ... + + If "kresolveddos"=.true., the k-point index is prepended + to the formats above, e.g. (collinear, spin-unpolarized case) + ik E DOS(E) PDOS(E) + + All DOS(E) are in states/eV plotted vs E in eV + + + + ::: Orbital Order + + Order of m-components for each l in the output: + + 1, cos(phi), sin(phi), cos(2*phi), sin(2*phi), .., cos(l*phi), sin(l*phi) + + where phi is the polar angle:x=r cos(theta)cos(phi), y=r cos(theta)sin(phi) + This is determined in file Modules/ylmr2.f90 that calculates spherical harmonics. + + for l=1: + 1 pz (m=0) + 2 px (real combination of m=+/-1 with cosine) + 3 py (real combination of m=+/-1 with sine) + + for l=2: + 1 dz2 (m=0) + 2 dzx (real combination of m=+/-1 with cosine) + 3 dzy (real combination of m=+/-1 with sine) + 4 dx2-y2 (real combination of m=+/-2 with cosine) + 5 dxy (real combination of m=+/-2 with sine) + + + + ::: Defining boxes for the Local DOS(E) + + Boxes are specified using the variables "irmin" and "irmax": + + FFT grid points are included from irmin(j,n) to irmax(j,n) + for j=1,2,3 and n=1,...,"n_proj_boxes" + + "irmin" and "irmax" range from 1 to nr1 or nr2 or nr3 + + Values larger than nr1/2/3 or smaller than 1 are folded + to the unit cell. + + If "irmax"<"irmin" FFT grid points are included from 1 to irmax + and from irmin to nr1/2/3. + + + + ::: Important notices + + * The tetrahedron method is presently not implemented. + + * Gaussian broadening is used in all cases: + + - if "degauss" is set to some value in namelist &PROJWFC, that value + (and the optional value for ngauss) is used + + - if "degauss" is NOT set to any value in namelist &PROJWFC, the + value of "degauss" and of "ngauss" are read from the input data + file (they will be the same used in the pw.x calculations) + + - if "degauss" is NOT set to any value in namelist &PROJWFC, AND + there is no value of "degauss" and of "ngauss" in the input data + file, "degauss"="DeltaE" (in Ry) and "ngauss"=0 will be used + + + Obsolete variables, ignored: + io_choice + smoothing + + + +This file has been created by helpdoc utility on Fri Jun 22 17:11:35 CEST 2018 diff --git a/PP/Doc/INPUT_bgw2pw.html b/PP/Doc/INPUT_bgw2pw.html new file mode 100644 index 0000000000000000000000000000000000000000..0748b4967e62f0ccd7aef26b05a4ff680854773d --- /dev/null +++ b/PP/Doc/INPUT_bgw2pw.html @@ -0,0 +1,228 @@ + + + + + +bgw2pw.x: input description + + + + + +
+

Input File Description

+

Program: + bgw2pw.x / PWscf / Quantum Espresso (version: svn) +

+
+
+

TABLE OF CONTENTS

+
+ + +

INTRODUCTION

+

&INPUT_BGW2PW

+
+prefix | outdir | real_or_complex | wfng_flag | wfng_file | wfng_nband | rhog_flag | rhog_file +
+
+
+
+

INTRODUCTION

+
+Purpose of bgw2pw.x:
+   Converts BerkeleyGW WFN and RHO files to the format of pw.x.
+   This can be useful, for example, if you generate the plane waves
+   on top of the valence bands and want to diagonalize them in pw.x.
+   Look at the documentation for SAPO code in BerkeleyGW for more information.
+
+bgw2pw.x reads common parameters from file prefix.save/data-file.xml and
+writes files prefix.save/charge-density.dat (charge density in R-space),
+prefix.save/gvectors.dat (G-vectors for charge density and potential),
+prefix.save/K$n/eigenval.xml (eigenvalues and occupations for nth k-point),
+prefix.save/K$n/evc.dat (wavefunctions in G-space for nth k-point), and
+prefix.save/K$n/gkvectors.dat (G-vectors for nth k-point).
+
+bgw2pw.x doesn't modify file prefix.save/data-file.xml so make changes to this
+file manually (for example, you will need to change the number of bands if you
+are using bgw2pw.x in conjunction with SAPO code in BerkeleyGW).
+
+Structure of the input data:
+============================
+
+   &INPUT_BGW2PW
+     ...
+   /
+   
+
+ + + +

Namelist: &INPUT_BGW2PW +

+ + + + + + + + + + +
prefixSTRING
Status: MANDATORY +
+prefix of files saved by program pw.x
+         
+ + + + + + + + + + + +
outdirSTRING
Default: './' +
+the scratch directory where the massive data-files are written
+         
+ + + + + + + + + + + +
real_or_complexINTEGER
Default: 2 +
+1 | 2
+1 for real flavor of BerkeleyGW (for systems with inversion symmetry and
+time-reversal symmetry) or 2 for complex flavor of BerkeleyGW (for systems
+without inversion symmetry and time-reversal symmetry)
+         
+ + + + + + + + + + + +
wfng_flagLOGICAL
Default: .FALSE. +
+read wavefunctions in G-space from BerkeleyGW WFN file
+         
+ + + + + + + + + + + +
wfng_fileSTRING
Default: 'WFN' +
+name of BerkeleyGW WFN input file. Not used if wfng_flag = .FALSE.
+         
+ + + + + + + + + + + +
wfng_nbandINTEGER
Default: 0 +
+number of bands to write (0 = all). Not used if wfng_flag = .FALSE.
+         
+ + + + + + + + + + + +
rhog_flagLOGICAL
Default: .FALSE. +
+read charge density in G-space from BerkeleyGW RHO file
+         
+ + + + + + + + + + + +
rhog_fileSTRING
Default: 'RHO' +
+name of BerkeleyGW RHO input file. Not used if rhog_flag = .FALSE.
+         
+ +
+
+ + This file has been created by helpdoc utility on Fri Jun 22 17:11:36 CEST 2018. + + + diff --git a/PP/Doc/INPUT_bgw2pw.txt b/PP/Doc/INPUT_bgw2pw.txt new file mode 100644 index 0000000000000000000000000000000000000000..c78356e9970c02a4eab2d9b5561edb7442fdf7e5 --- /dev/null +++ b/PP/Doc/INPUT_bgw2pw.txt @@ -0,0 +1,109 @@ +*** FILE AUTOMATICALLY CREATED: DO NOT EDIT, CHANGES WILL BE LOST *** + +------------------------------------------------------------------------ +INPUT FILE DESCRIPTION + +Program: bgw2pw.x / PWscf / Quantum Espresso (version: svn) +------------------------------------------------------------------------ + + +Purpose of bgw2pw.x: + Converts BerkeleyGW WFN and RHO files to the format of pw.x. + This can be useful, for example, if you generate the plane waves + on top of the valence bands and want to diagonalize them in pw.x. + Look at the documentation for SAPO code in BerkeleyGW for more information. + +bgw2pw.x reads common parameters from file "prefix".save/data-file.xml and +writes files "prefix".save/charge-density.dat (charge density in R-space), +"prefix".save/gvectors.dat (G-vectors for charge density and potential), +"prefix".save/K$n/eigenval.xml (eigenvalues and occupations for nth k-point), +"prefix".save/K$n/evc.dat (wavefunctions in G-space for nth k-point), and +"prefix".save/K$n/gkvectors.dat (G-vectors for nth k-point). + +bgw2pw.x doesn't modify file "prefix".save/data-file.xml so make changes to this +file manually (for example, you will need to change the number of bands if you +are using bgw2pw.x in conjunction with SAPO code in BerkeleyGW). + +Structure of the input data: +============================ + + &INPUT_BGW2PW + ... + / + + + +======================================================================== +NAMELIST: &INPUT_BGW2PW + + +-------------------------------------------------------------------- + Variable: prefix + + Type: STRING + Status: MANDATORY + Description: prefix of files saved by program pw.x + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: outdir + + Type: STRING + Default: './' + Description: the scratch directory where the massive data-files are written + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: real_or_complex + + Type: INTEGER + Default: 2 + Description: 1 | 2 + 1 for real flavor of BerkeleyGW (for systems with inversion symmetry and + time-reversal symmetry) or 2 for complex flavor of BerkeleyGW (for systems + without inversion symmetry and time-reversal symmetry) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: wfng_flag + + Type: LOGICAL + Default: .FALSE. + Description: read wavefunctions in G-space from BerkeleyGW WFN file + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: wfng_file + + Type: STRING + Default: 'WFN' + Description: name of BerkeleyGW WFN input file. Not used if "wfng_flag" = .FALSE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: wfng_nband + + Type: INTEGER + Default: 0 + Description: number of bands to write (0 = all). Not used if "wfng_flag" = .FALSE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: rhog_flag + + Type: LOGICAL + Default: .FALSE. + Description: read charge density in G-space from BerkeleyGW RHO file + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: rhog_file + + Type: STRING + Default: 'RHO' + Description: name of BerkeleyGW RHO input file. Not used if "rhog_flag" = .FALSE. + +-------------------------------------------------------------------- + +===END OF NAMELIST====================================================== + + +This file has been created by helpdoc utility on Fri Jun 22 17:11:36 CEST 2018 diff --git a/PP/Doc/INPUT_molecularpdos.html b/PP/Doc/INPUT_molecularpdos.html new file mode 100644 index 0000000000000000000000000000000000000000..ea614c4470b572440991431d750a6cffc6b4d15f --- /dev/null +++ b/PP/Doc/INPUT_molecularpdos.html @@ -0,0 +1,390 @@ + + + + + +molecularpdos.x: input description + + + + + +
+

Input File Description

+

Program: + molecularpdos.x / PWscf / Quantum Espresso (version: svn) +

+
+
+

TABLE OF CONTENTS

+
+ + +

INTRODUCTION

+

&INPUTMOPDOS

+
+xmlfile_full | xmlfile_part | i_atmwfc_beg_full | i_atmwfc_end_full | i_atmwfc_beg_part | i_atmwfc_end_part | i_bnd_beg_full | i_bnd_end_full | i_bnd_beg_part | i_bnd_end_part | fileout | ngauss | degauss | Emin | Emax | DeltaE | kresolveddos +
+

Notes

+
Format of output files
+
Important notices
+
+
+
+

INTRODUCTION

+
+Purpose of molecularpdos.x:
+    Takes the projections onto orthogonalized atomic wavefunctions
+    as computed by projwfc.x (see outdir/prefix.save/atomic_proj.xml)
+    to build an LCAO-like representation of the eigenvalues of a system
+    "full" and "part" of it (each should provide its own atomic_proj.xml file).
+    Then the eigenvectors of the full system are projected onto the ones
+    of the part. For example, to decompose the PDOS of an adsorbed molecule
+    into its molecular orbital, as determined by a gas-phase calculation.
+
+Reference:
+    An explanation of the keywords and the implementation
+    is provided in Scientific Reports | 6:24603 (2016)
+    DOI: 10.1038/srep24603 (Supp. Info).
+
+
+Structure of the input data:
+============================
+
+   &INPUTMOPDOS
+     ...
+   /
+   
+
+ + + +

Namelist: &INPUTMOPDOS +

+ + + + + + +
+xmlfile_full, xmlfile_partCHARACTER
+xml files with atomic projections (produced by projwfc.x)
+for the full system and its molecular part
+         
+ + + + + + + + + + + +
i_atmwfc_beg_fullINTEGER
Default: 1 +
+first atomic wavefunction of the full system
+considered for the projection
+         
+ + + + + + + + + + + +
i_atmwfc_end_fullINTEGER
Default: 0, i.e., all atomic wavefunctions +
+last atomic wavefunction of the full system
+considered for the projection
+         
+ + + + + + + + + + + +
i_atmwfc_beg_partINTEGER
Default: 1 +
+first atomic wavefunction of the molecular part
+considered for the projection
+         
+ + + + + + + + + + + +
i_atmwfc_end_partINTEGER
Default: 0, i.e., all atomic wavefunctions +
+first atomic wavefunction of the molecular part
+considered for the projection
+         
+ + + + + + + + + + + +
i_bnd_beg_fullINTEGER
Default: 1 +
+first eigenstate of the full system to be taken
+into account for the projection
+         
+ + + + + + + + + + + +
i_bnd_end_fullINTEGER
Default: 0, i.e., all eigenstates +
+last eigenstate of the full system to be taken
+into account for the projection
+         
+ + + + + + + + + + + +
i_bnd_beg_partINTEGER
Default: 1 +
+first eigenstate of the molecular part to be taken
+into account for the projection
+         
+ + + + + + + + + + + +
i_bnd_end_partINTEGER
Default: 0, i.e., all eigenstates +
+last eigenstate of the molecular part to be taken
+into account for the projection
+         
+ + + + + + + + + + + +
fileoutCHARACTER
Default: 'molecularpdos' +
 prefix for output files containing molecular PDOS(E)
+         
+ + + + + + + + + + + +
ngaussINTEGER
Default: 0 +
+Type of gaussian broadening:
+    0 ... Simple Gaussian (default)
+    1 ... Methfessel-Paxton of order 1
+   -1 ... Marzari-Vanderbilt "cold smearing"
+  -99 ... Fermi-Dirac function
+         
+ + + + + + + + + + + +
degaussREAL
Default: 0.0 +
 gaussian broadening, Ry (not eV!)
+         
+ + + + + + + + + + + +
+Emin, EmaxREAL
Default: (band extrema) +
 min & max energy (eV) for DOS plot
+         
+ + + + + + + + + + + +
DeltaEREAL
Default: 0.01 +
 energy grid step (eV)
+         
+ + + + + + + + + + + +
kresolveddosLOGICAL
Default: .false. +
+if .true. the k-resolved DOS is computed: not summed over
+all k-points but written as a function of the k-point index.
+In this case all k-point weights are set to unity
+         
+ +
+
+

Notes

+
+

Format of output files

+
+Projections are written to standard output.
+
+The molecular projected DOS is written to the file "fileout".mopdos.
+
+* The format for the spin-unpolarized case is:
+      index_of_molecular_orbital E MOPDOS(E)
+      ...
+
+* The format for the collinear, spin-polarized case is:
+      index_of_molecular_orbital E MOPDOSup(E) MOPDOSdw(E)
+      ...
+
+The file "fileout".mopdos_tot contains the sum
+over the molecular orbitals.
+
+* The format for the spin-unpolarized case is:
+      E MOPDOS(E)
+      ...
+
+* The format for the collinear, spin-polarized case is:
+      E MOPDOSup(E) MOPDOSdw(E)
+      ...
+
+All DOS(E) are in states/eV plotted vs E in eV
+         
+
+
+

Important notices

+
+* The atomic wavefunctions identified by the ranges
+  i_atmwfc_beg_full:i_atmwfc_end_full (full system) and
+  i_atmwfc_beg_part:i_atmwfc_end_part (molecular part)
+  should correspond to the same atomic states. See the
+  header of the output of projwfc.x for more information.
+
+* If using k-points, the same unit cell and the same
+  k-points should be used in computing the molecular part,
+  unless you really know what you are doing.
+
+* The tetrahedron method is presently not implemented.
+
+* Gaussian broadening is used in all cases
+  (with ngauss and degauss values from input).
+         
+
+
+
+ + This file has been created by helpdoc utility on Fri Jun 22 17:11:37 CEST 2018. + + + diff --git a/PP/Doc/INPUT_molecularpdos.txt b/PP/Doc/INPUT_molecularpdos.txt new file mode 100644 index 0000000000000000000000000000000000000000..1c8102ccfb15c51ac86e2d7a480e8190c715c599 --- /dev/null +++ b/PP/Doc/INPUT_molecularpdos.txt @@ -0,0 +1,226 @@ +*** FILE AUTOMATICALLY CREATED: DO NOT EDIT, CHANGES WILL BE LOST *** + +------------------------------------------------------------------------ +INPUT FILE DESCRIPTION + +Program: molecularpdos.x / PWscf / Quantum Espresso (version: svn) +------------------------------------------------------------------------ + + +Purpose of molecularpdos.x: + Takes the projections onto orthogonalized atomic wavefunctions + as computed by projwfc.x (see outdir/prefix.save/atomic_proj.xml) + to build an LCAO-like representation of the eigenvalues of a system + "full" and "part" of it (each should provide its own atomic_proj.xml file). + Then the eigenvectors of the full system are projected onto the ones + of the part. For example, to decompose the PDOS of an adsorbed molecule + into its molecular orbital, as determined by a gas-phase calculation. + +Reference: + An explanation of the keywords and the implementation + is provided in Scientific Reports | 6:24603 (2016) + DOI: 10.1038/srep24603 (Supp. Info). + + +Structure of the input data: +============================ + + &INPUTMOPDOS + ... + / + + + +======================================================================== +NAMELIST: &INPUTMOPDOS + + +-------------------------------------------------------------------- + Variables: xmlfile_full, xmlfile_part + + Type: CHARACTER + Description: xml files with atomic projections (produced by projwfc.x) + for the full system and its molecular part + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: i_atmwfc_beg_full + + Type: INTEGER + Default: 1 + Description: first atomic wavefunction of the full system + considered for the projection + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: i_atmwfc_end_full + + Type: INTEGER + Default: 0, i.e., all atomic wavefunctions + Description: last atomic wavefunction of the full system + considered for the projection + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: i_atmwfc_beg_part + + Type: INTEGER + Default: 1 + Description: first atomic wavefunction of the molecular part + considered for the projection + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: i_atmwfc_end_part + + Type: INTEGER + Default: 0, i.e., all atomic wavefunctions + Description: first atomic wavefunction of the molecular part + considered for the projection + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: i_bnd_beg_full + + Type: INTEGER + Default: 1 + Description: first eigenstate of the full system to be taken + into account for the projection + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: i_bnd_end_full + + Type: INTEGER + Default: 0, i.e., all eigenstates + Description: last eigenstate of the full system to be taken + into account for the projection + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: i_bnd_beg_part + + Type: INTEGER + Default: 1 + Description: first eigenstate of the molecular part to be taken + into account for the projection + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: i_bnd_end_part + + Type: INTEGER + Default: 0, i.e., all eigenstates + Description: last eigenstate of the molecular part to be taken + into account for the projection + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: fileout + + Type: CHARACTER + Description: prefix for output files containing molecular PDOS(E) + Default: 'molecularpdos' + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ngauss + + Type: INTEGER + Default: 0 + Description: Type of gaussian broadening: + 0 ... Simple Gaussian (default) + 1 ... Methfessel-Paxton of order 1 + -1 ... Marzari-Vanderbilt "cold smearing" + -99 ... Fermi-Dirac function + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: degauss + + Type: REAL + Default: 0.0 + Description: gaussian broadening, Ry (not eV!) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variables: Emin, Emax + + Type: REAL + Default: (band extrema) + Description: min & max energy (eV) for DOS plot + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: DeltaE + + Type: REAL + Default: 0.01 + Description: energy grid step (eV) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: kresolveddos + + Type: LOGICAL + Default: .false. + Description: if .true. the k-resolved DOS is computed: not summed over + all k-points but written as a function of the k-point index. + In this case all k-point weights are set to unity + +-------------------------------------------------------------------- + +===END OF NAMELIST====================================================== + + + +:::: Notes + + + ::: Format of output files + + Projections are written to standard output. + + The molecular projected DOS is written to the file "fileout".mopdos. + + * The format for the spin-unpolarized case is: + index_of_molecular_orbital E MOPDOS(E) + ... + + * The format for the collinear, spin-polarized case is: + index_of_molecular_orbital E MOPDOSup(E) MOPDOSdw(E) + ... + + The file "fileout".mopdos_tot contains the sum + over the molecular orbitals. + + * The format for the spin-unpolarized case is: + E MOPDOS(E) + ... + + * The format for the collinear, spin-polarized case is: + E MOPDOSup(E) MOPDOSdw(E) + ... + + All DOS(E) are in states/eV plotted vs E in eV + + + + ::: Important notices + + * The atomic wavefunctions identified by the ranges + i_atmwfc_beg_full:i_atmwfc_end_full (full system) and + i_atmwfc_beg_part:i_atmwfc_end_part (molecular part) + should correspond to the same atomic states. See the + header of the output of projwfc.x for more information. + + * If using k-points, the same unit cell and the same + k-points should be used in computing the molecular part, + unless you really know what you are doing. + + * The tetrahedron method is presently not implemented. + + * Gaussian broadening is used in all cases + (with ngauss and degauss values from input). + + + +This file has been created by helpdoc utility on Fri Jun 22 17:11:37 CEST 2018 diff --git a/PP/Doc/INPUT_pw2bgw.html b/PP/Doc/INPUT_pw2bgw.html new file mode 100644 index 0000000000000000000000000000000000000000..702fd3ab5f7196a04725e70a3ce1f7ae37b3bb40 --- /dev/null +++ b/PP/Doc/INPUT_pw2bgw.html @@ -0,0 +1,711 @@ + + + + + +pw2bgw.x: input description + + + + + +
+

Input File Description

+

Program: + pw2bgw.x / PWscf / Quantum Espresso (version: svn) +

+
+
+

TABLE OF CONTENTS

+
+ + +

INTRODUCTION

+

&INPUT_PW2BGW

+
+prefix | outdir | real_or_complex | symm_type | wfng_flag | wfng_file | wfng_kgrid | wfng_nk1 | wfng_nk2 | wfng_nk3 | wfng_dk1 | wfng_dk2 | wfng_dk3 | wfng_occupation | wfng_nvmin | wfng_nvmax | rhog_flag | rhog_file | rhog_nvmin | rhog_nvmax | vxcg_flag | vxcg_file | vxc0_flag | vxc0_file | vxc_flag | vxc_file | vxc_integral | vxc_diag_nmin | vxc_diag_nmax | vxc_offdiag_nmin | vxc_offdiag_nmax | vxc_zero_rho_core | vscg_flag | vscg_file | vkbg_flag | vkbg_file +
+
+
+
+

INTRODUCTION

+
+Purpose of pw2bgw.x:
+   Converts the output files produced by pw.x to the input files for BerkeleyGW.
+
+You cannot use USPP, PAW, or spinors in a pw.x run for BerkeleyGW.
+
+You cannot use "K_POINTS gamma" in a pw.x run for BerkeleyGW.
+Use "K_POINTS { tpiba | automatic | crystal }" even for the
+Gamma-point calculation.
+
+It is recommended to run a pw.x "bands" calculation with "K_POINTS crystal"
+and a list of k-points produced by kgrid.x, which is a part of BerkeleyGW
+package (see BerkeleyGW documentation for details).
+
+You can also run a pw.x "nscf" calculation instead of "bands", but in this
+case pw.x may generate more k-points than provided in the input file of pw.x.
+If this is the case for your calculation you will get errors in BerkeleyGW.
+
+Examples showing how to run BerkeleyGW on top of Quantum ESPRESSO including
+the input files for pw.x and pw2bgw.x are distributed together with the
+BerkeleyGW package.
+
+Structure of the input data:
+============================
+
+   &INPUT_PW2BGW
+     ...
+   /
+   
+
+ + + +

Namelist: &INPUT_PW2BGW +

+ + + + + + + + + + +
prefixSTRING
Status: MANDATORY +
+prefix of files saved by program pw.x
+         
+ + + + + + + + + + + +
outdirSTRING
Default: './' +
+the scratch directory where the massive data-files are written
+         
+ + + + + + + + + + + +
real_or_complexINTEGER
Default: 2 +
+1 | 2
+1 for real flavor of BerkeleyGW (for systems with inversion symmetry and
+time-reversal symmetry) or 2 for complex flavor of BerkeleyGW (for systems
+without inversion symmetry and time-reversal symmetry)
+         
+ + + + + + + + + + + +
symm_typeSTRING
Default: 'cubic' +
+
+Options are:
+            
+
+
'cubic'
+
+            
+
+
+
'hexagonal'
+
+            
+
+
+type of crystal system, 'cubic' for space groups 1 ... 142 and 195 ... 230
+and 'hexagonal' for space groups 143 ... 194. Only used if ibrav = 0 in a
+pw.x run. Written to BerkeleyGW WFN, RHO, VXC and VKB files but no longer
+used (except in SAPO code in BerkeleyGW). You can use the default value for
+all systems. Don't set to different values in different files for the same
+system or you will get errors in BerkeleyGW.
+            
+
+ + + + + + + + + + + +
wfng_flagLOGICAL
Default: .FALSE. +
+write wavefunctions in G-space to BerkeleyGW WFN file
+         
+ + + + + + + + + + + +
wfng_fileSTRING
Default: 'WFN' +
+name of BerkeleyGW WFN output file. Not used if wfng_flag = .FALSE.
+         
+ + + + + + + + + + + +
wfng_kgridLOGICAL
Default: .FALSE. +
+overwrite k-grid parameters in BerkeleyGW WFN file.
+If pw.x input file contains an explicit list of k-points,
+the k-grid parameters in the output of pw.x will be set to zero.
+Since sigma and absorption in BerkeleyGW both need to know the
+k-grid dimensions, we patch these parameters into BerkeleyGW WFN file
+         
+ + + + + + + + + + + +
wfng_nk1INTEGER
Default: 0 +
+number of k-points along b_1 reciprocal lattice vector.
+Not used if wfng_kgrid = .FALSE.
+         
+ + + + + + + + + + + +
wfng_nk2INTEGER
Default: 0 +
+number of k-points along b_2 reciprocal lattice vector.
+Not used if wfng_kgrid = .FALSE.
+         
+ + + + + + + + + + + +
wfng_nk3INTEGER
Default: 0 +
+number of k-points along b_3 reciprocal lattice vector.
+Not used if wfng_kgrid = .FALSE.
+         
+ + + + + + + + + + + +
wfng_dk1REAL
Default: 0.0 +
+k-grid offset (0.0 unshifted, 0.5 shifted by half a grid step)
+along b_1 reciprocal lattice vector. Not used if wfng_kgrid = .FALSE.
+         
+ + + + + + + + + + + +
wfng_dk2REAL
Default: 0.0 +
+k-grid offset (0.0 unshifted, 0.5 shifted by half a grid step)
+along b_2 reciprocal lattice vector. Not used if wfng_kgrid = .FALSE.
+         
+ + + + + + + + + + + +
wfng_dk3REAL
Default: 0.0 +
+k-grid offset (0.0 unshifted, 0.5 shifted by half a grid step)
+along b_3 reciprocal lattice vector. Not used if wfng_kgrid = .FALSE.
+         
+ + + + + + + + + + + +
wfng_occupationLOGICAL
Default: .FALSE. +
+overwrite occupations in BerkeleyGW WFN file
+         
+ + + + + + + + + + + +
wfng_nvminINTEGER
Default: 0 +
+index of the lowest occupied band (normally = 1).
+Not used if wfng_occupation = .FALSE.
+         
+ + + + + + + + + + + +
wfng_nvmaxINTEGER
Default: 0 +
+index of the highest occupied band (normally = number of occupied bands).
+Not used if wfng_occupation = .FALSE.
+         
+ + + + + + + + + + + +
rhog_flagLOGICAL
Default: .FALSE. +
+write charge density in G-space to BerkeleyGW RHO file.
+Only used for the GPP model in sigma code in BerkeleyGW
+         
+ + + + + + + + + + + +
rhog_fileSTRING
Default: 'RHO' +
+name of BerkeleyGW RHO output file. Only used for the GPP model in sigma
+code in BerkeleyGW. Not used if rhog_flag = .FALSE.
+         
+ + + + + + + + + + + +
rhog_nvminINTEGER
Default: 0 +
+index of the lowest band used for calculation of charge density. This is
+needed if one wants to exclude semicore states from charge density used
+for the GPP model in sigma code in BerkeleyGW. Make sure to include the
+same k-points as in scf calculation. Self-consistent charge density is
+used if rhog_nvmin = 0 and rhog_nvmax = 0. Not used if rhog_flag = .FALSE.
+BEWARE: this feature is highly experimental and may not work at all in
+parallel, with pools, with spins, etc.
+         
+ + + + + + + + + + + +
rhog_nvmaxINTEGER
Default: 0 +
+index of the highest band used for calculation of charge density. See
+description of rhog_nvmin for more details
+         
+ + + + + + + + + + + +
vxcg_flagLOGICAL
Default: .FALSE. +
+write local part of exchange-correlation potential in G-space to
+BerkeleyGW VXC file. Only used in sigma code in BerkeleyGW, it is
+recommended to use vxc_flag instead
+         
+ + + + + + + + + + + +
vxcg_fileSTRING
Default: 'VXC' +
+name of BerkeleyGW VXC output file. Only used in sigma code in BerkeleyGW,
+it is recommended to use vxc_flag instead. Not used if vxcg_flag = .FALSE.
+         
+ + + + + + + + + + + +
vxc0_flagLOGICAL
Default: .FALSE. +
+write Vxc(G = 0) to text file. Only for testing, not required for BerkeleyGW
+         
+ + + + + + + + + + + +
vxc0_fileSTRING
Default: 'vxc0.dat' +
+name of output text file for Vxc(G = 0). Only for testing, not required for
+BerkeleyGW. Not used if vxc0_flag = .FALSE.
+         
+ + + + + + + + + + + +
vxc_flagLOGICAL
Default: .FALSE. +
+write matrix elements of exchange-correlation potential to text file.
+Only used in sigma code in BerkeleyGW
+         
+ + + + + + + + + + + +
vxc_fileSTRING
Default: 'vxc.dat' +
+name of output text file for Vxc matrix elements. Only used in sigma code
+in BerkeleyGW. Not used if vxc_flag = .FALSE.
+         
+ + + + + + + + + + + +
vxc_integralSTRING
Default: 'g' +
+'g' | 'r'
+'g' to compute matrix elements of exchange-correlation potential in G-space.
+'r' to compute matrix elements of the local part of exchange-correlation
+potential in R-space. It is recommended to use 'g'. Not used if vxc_flag = .FALSE.
+         
+ + + + + + + + + + + +
vxc_diag_nminINTEGER
Default: 0 +
+minimum band index for diagonal Vxc matrix elements. Not used if vxc_flag = .FALSE.
+         
+ + + + + + + + + + + +
vxc_diag_nmaxINTEGER
Default: 0 +
+maximum band index for diagonal Vxc matrix elements. Not used if vxc_flag = .FALSE.
+         
+ + + + + + + + + + + +
vxc_offdiag_nminINTEGER
Default: 0 +
+minimum band index for off-diagonal Vxc matrix elements. Not used if vxc_flag = .FALSE.
+         
+ + + + + + + + + + + +
vxc_offdiag_nmaxINTEGER
Default: 0 +
+maximum band index for off-diagonal Vxc matrix elements. Not used if vxc_flag = .FALSE.
+         
+ + + + + + + + + + + +
vxc_zero_rho_coreLOGICAL
Default: .TRUE. +
+set to .TRUE. to zero out NLCC or to .FALSE. to keep NLCC when computing
+exchange-correlation potential. This flag has no effect for pseudopotentials
+without NLCC.
+BEWARE: setting vxc_zero_rho_core to .FALSE. will produce
+incorrect results. This functionality is only included for testing purposes
+and is not meant to be used in a production environment
+         
+ + + + + + + + + + + +
vscg_flagLOGICAL
Default: .FALSE. +
+write local part of self-consistent potential in G-space to
+BerkeleyGW VSC file. Only used in SAPO code in BerkeleyGW
+         
+ + + + + + + + + + + +
vscg_fileSTRING
Default: 'VSC' +
+name of BerkeleyGW VSC output file. Only used in SAPO code in BerkeleyGW.
+Not used if vscg_flag = .FALSE.
+         
+ + + + + + + + + + + +
vkbg_flagLOGICAL
Default: .FALSE. +
+write Kleinman-Bylander projectors in G-space to BerkeleyGW VKB file.
+Only used in SAPO code in BerkeleyGW
+         
+ + + + + + + + + + + +
vkbg_fileSTRING
Default: 'VKB' +
+name of BerkeleyGW VKB output file. Only used in SAPO code in BerkeleyGW.
+Not used if vkbg_flag = .FALSE.
+         
+ +
+
+ + This file has been created by helpdoc utility on Fri Jun 22 17:11:36 CEST 2018. + + + diff --git a/PP/Doc/INPUT_pw2bgw.txt b/PP/Doc/INPUT_pw2bgw.txt new file mode 100644 index 0000000000000000000000000000000000000000..8bf8eff5210425bcbb2f6978942fb6316e307857 --- /dev/null +++ b/PP/Doc/INPUT_pw2bgw.txt @@ -0,0 +1,386 @@ +*** FILE AUTOMATICALLY CREATED: DO NOT EDIT, CHANGES WILL BE LOST *** + +------------------------------------------------------------------------ +INPUT FILE DESCRIPTION + +Program: pw2bgw.x / PWscf / Quantum Espresso (version: svn) +------------------------------------------------------------------------ + + +Purpose of pw2bgw.x: + Converts the output files produced by pw.x to the input files for BerkeleyGW. + +You cannot use USPP, PAW, or spinors in a pw.x run for BerkeleyGW. + +You cannot use "K_POINTS gamma" in a pw.x run for BerkeleyGW. +Use "K_POINTS { tpiba | automatic | crystal }" even for the +Gamma-point calculation. + +It is recommended to run a pw.x "bands" calculation with "K_POINTS crystal" +and a list of k-points produced by kgrid.x, which is a part of BerkeleyGW +package (see BerkeleyGW documentation for details). + +You can also run a pw.x "nscf" calculation instead of "bands", but in this +case pw.x may generate more k-points than provided in the input file of pw.x. +If this is the case for your calculation you will get errors in BerkeleyGW. + +Examples showing how to run BerkeleyGW on top of Quantum ESPRESSO including +the input files for pw.x and pw2bgw.x are distributed together with the +BerkeleyGW package. + +Structure of the input data: +============================ + + &INPUT_PW2BGW + ... + / + + + +======================================================================== +NAMELIST: &INPUT_PW2BGW + + +-------------------------------------------------------------------- + Variable: prefix + + Type: STRING + Status: MANDATORY + Description: prefix of files saved by program pw.x + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: outdir + + Type: STRING + Default: './' + Description: the scratch directory where the massive data-files are written + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: real_or_complex + + Type: INTEGER + Default: 2 + Description: 1 | 2 + 1 for real flavor of BerkeleyGW (for systems with inversion symmetry and + time-reversal symmetry) or 2 for complex flavor of BerkeleyGW (for systems + without inversion symmetry and time-reversal symmetry) + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: symm_type + + Type: STRING + Default: 'cubic' + Description: + Options are: + 'cubic' + 'hexagonal' + + type of crystal system, 'cubic' for space groups 1 ... 142 and 195 ... 230 + and 'hexagonal' for space groups 143 ... 194. Only used if ibrav = 0 in a + pw.x run. Written to BerkeleyGW WFN, RHO, VXC and VKB files but no longer + used (except in SAPO code in BerkeleyGW). You can use the default value for + all systems. Don't set to different values in different files for the same + system or you will get errors in BerkeleyGW. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: wfng_flag + + Type: LOGICAL + Default: .FALSE. + Description: write wavefunctions in G-space to BerkeleyGW WFN file + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: wfng_file + + Type: STRING + Default: 'WFN' + Description: name of BerkeleyGW WFN output file. Not used if "wfng_flag" = .FALSE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: wfng_kgrid + + Type: LOGICAL + Default: .FALSE. + Description: overwrite k-grid parameters in BerkeleyGW WFN file. + If pw.x input file contains an explicit list of k-points, + the k-grid parameters in the output of pw.x will be set to zero. + Since sigma and absorption in BerkeleyGW both need to know the + k-grid dimensions, we patch these parameters into BerkeleyGW WFN file + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: wfng_nk1 + + Type: INTEGER + Default: 0 + Description: number of k-points along b_1 reciprocal lattice vector. + Not used if "wfng_kgrid" = .FALSE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: wfng_nk2 + + Type: INTEGER + Default: 0 + Description: number of k-points along b_2 reciprocal lattice vector. + Not used if "wfng_kgrid" = .FALSE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: wfng_nk3 + + Type: INTEGER + Default: 0 + Description: number of k-points along b_3 reciprocal lattice vector. + Not used if "wfng_kgrid" = .FALSE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: wfng_dk1 + + Type: REAL + Default: 0.0 + Description: k-grid offset (0.0 unshifted, 0.5 shifted by half a grid step) + along b_1 reciprocal lattice vector. Not used if "wfng_kgrid" = .FALSE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: wfng_dk2 + + Type: REAL + Default: 0.0 + Description: k-grid offset (0.0 unshifted, 0.5 shifted by half a grid step) + along b_2 reciprocal lattice vector. Not used if "wfng_kgrid" = .FALSE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: wfng_dk3 + + Type: REAL + Default: 0.0 + Description: k-grid offset (0.0 unshifted, 0.5 shifted by half a grid step) + along b_3 reciprocal lattice vector. Not used if "wfng_kgrid" = .FALSE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: wfng_occupation + + Type: LOGICAL + Default: .FALSE. + Description: overwrite occupations in BerkeleyGW WFN file + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: wfng_nvmin + + Type: INTEGER + Default: 0 + Description: index of the lowest occupied band (normally = 1). + Not used if "wfng_occupation" = .FALSE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: wfng_nvmax + + Type: INTEGER + Default: 0 + Description: index of the highest occupied band (normally = number of occupied bands). + Not used if "wfng_occupation" = .FALSE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: rhog_flag + + Type: LOGICAL + Default: .FALSE. + Description: write charge density in G-space to BerkeleyGW RHO file. + Only used for the GPP model in sigma code in BerkeleyGW + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: rhog_file + + Type: STRING + Default: 'RHO' + Description: name of BerkeleyGW RHO output file. Only used for the GPP model in sigma + code in BerkeleyGW. Not used if "rhog_flag" = .FALSE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: rhog_nvmin + + Type: INTEGER + Default: 0 + Description: index of the lowest band used for calculation of charge density. This is + needed if one wants to exclude semicore states from charge density used + for the GPP model in sigma code in BerkeleyGW. Make sure to include the + same k-points as in scf calculation. Self-consistent charge density is + used if rhog_nvmin = 0 and rhog_nvmax = 0. Not used if "rhog_flag" = .FALSE. + BEWARE: this feature is highly experimental and may not work at all in + parallel, with pools, with spins, etc. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: rhog_nvmax + + Type: INTEGER + Default: 0 + Description: index of the highest band used for calculation of charge density. See + description of rhog_nvmin for more details + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: vxcg_flag + + Type: LOGICAL + Default: .FALSE. + Description: write local part of exchange-correlation potential in G-space to + BerkeleyGW VXC file. Only used in sigma code in BerkeleyGW, it is + recommended to use "vxc_flag" instead + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: vxcg_file + + Type: STRING + Default: 'VXC' + Description: name of BerkeleyGW VXC output file. Only used in sigma code in BerkeleyGW, + it is recommended to use "vxc_flag" instead. Not used if "vxcg_flag" = .FALSE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: vxc0_flag + + Type: LOGICAL + Default: .FALSE. + Description: write Vxc(G = 0) to text file. Only for testing, not required for BerkeleyGW + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: vxc0_file + + Type: STRING + Default: 'vxc0.dat' + Description: name of output text file for Vxc(G = 0). Only for testing, not required for + BerkeleyGW. Not used if "vxc0_flag" = .FALSE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: vxc_flag + + Type: LOGICAL + Default: .FALSE. + Description: write matrix elements of exchange-correlation potential to text file. + Only used in sigma code in BerkeleyGW + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: vxc_file + + Type: STRING + Default: 'vxc.dat' + Description: name of output text file for Vxc matrix elements. Only used in sigma code + in BerkeleyGW. Not used if "vxc_flag" = .FALSE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: vxc_integral + + Type: STRING + Default: 'g' + Description: 'g' | 'r' + 'g' to compute matrix elements of exchange-correlation potential in G-space. + 'r' to compute matrix elements of the local part of exchange-correlation + potential in R-space. It is recommended to use 'g'. Not used if "vxc_flag" = .FALSE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: vxc_diag_nmin + + Type: INTEGER + Default: 0 + Description: minimum band index for diagonal Vxc matrix elements. Not used if "vxc_flag" = .FALSE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: vxc_diag_nmax + + Type: INTEGER + Default: 0 + Description: maximum band index for diagonal Vxc matrix elements. Not used if "vxc_flag" = .FALSE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: vxc_offdiag_nmin + + Type: INTEGER + Default: 0 + Description: minimum band index for off-diagonal Vxc matrix elements. Not used if "vxc_flag" = .FALSE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: vxc_offdiag_nmax + + Type: INTEGER + Default: 0 + Description: maximum band index for off-diagonal Vxc matrix elements. Not used if "vxc_flag" = .FALSE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: vxc_zero_rho_core + + Type: LOGICAL + Default: .TRUE. + Description: set to .TRUE. to zero out NLCC or to .FALSE. to keep NLCC when computing + exchange-correlation potential. This flag has no effect for pseudopotentials + without NLCC. + BEWARE: setting "vxc_zero_rho_core" to .FALSE. will produce + incorrect results. This functionality is only included for testing purposes + and is not meant to be used in a production environment + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: vscg_flag + + Type: LOGICAL + Default: .FALSE. + Description: write local part of self-consistent potential in G-space to + BerkeleyGW VSC file. Only used in SAPO code in BerkeleyGW + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: vscg_file + + Type: STRING + Default: 'VSC' + Description: name of BerkeleyGW VSC output file. Only used in SAPO code in BerkeleyGW. + Not used if "vscg_flag" = .FALSE. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: vkbg_flag + + Type: LOGICAL + Default: .FALSE. + Description: write Kleinman-Bylander projectors in G-space to BerkeleyGW VKB file. + Only used in SAPO code in BerkeleyGW + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: vkbg_file + + Type: STRING + Default: 'VKB' + Description: name of BerkeleyGW VKB output file. Only used in SAPO code in BerkeleyGW. + Not used if "vkbg_flag" = .FALSE. + +-------------------------------------------------------------------- + +===END OF NAMELIST====================================================== + + +This file has been created by helpdoc utility on Fri Jun 22 17:11:36 CEST 2018 diff --git a/PP/Doc/INPUT_pw_export.html b/PP/Doc/INPUT_pw_export.html new file mode 100644 index 0000000000000000000000000000000000000000..2fe6b94351fef8d946e2eb3f5863f556aaad7f61 --- /dev/null +++ b/PP/Doc/INPUT_pw_export.html @@ -0,0 +1,222 @@ + + + + + +pw_export.x: input description + + + + + +
+

Input File Description

+

Program: + pw_export.x / PWscf / Quantum Espresso (version: svn) +

+
+
+

TABLE OF CONTENTS

+
+ + +

INTRODUCTION

+

&INPUTPP

+
+prefix | outdir | pseudo_dir | psfile | single_file | ascii | pp_file | uspp_spsi +
+
+
+
+

INTRODUCTION

+
+Purpose of pw_export.x:
+   Writes PWSCF data for postprocessing purposes in XML format using IOTK lib.
+   Wave-functions are collected and written using IO_BASE module.
+
+Structure of the input data:
+============================
+
+   &INPUTPP
+     ...
+   /
+   
+
+ + + +

Namelist: &INPUTPP +

+ + + + + + + + + + +
prefixSTRING
Status: MANDATORY +
+the first part of the name of all the file written by the code
+should be equal to the value given in the main calculations.
+         
+ + + + + + + + + + + +
outdirSTRING
Default: "./" +
+the scratch directory where the massive data-files are written
+         
+ + + + + + + + + + + +
pseudo_dirSTRING
Default: "./" +
+directory containing pseudopotential (PP) files
+         
+ + + + + + + + + + + +
psfile(i), i=1,ntypSTRING
Default: (empty string) +
+files containing i-th pseudopotential, where i=1, ntyp.
+PP numbering must follow the ordering defined in the input of pw.x
+         
+ + + + + + + + + + + +
single_fileLOGICAL
Default: .FALSE. +
+if .TRUE. one-file output is produced
+         
+ + + + + + + + + + + +
asciiLOGICAL
Default: .FALSE. +
+if .TRUE. output files are textual, otherwise they are partly binary.
+         
+ + + + + + + + + + + +
pp_fileSTRING
Default: "prefix.export/" +
+Output file.
+
+If it is omitted, a directory "prefix.export/" is created
+in outdir and some output files are put there. Anyway all the data
+are accessible through the "prefix.export/index.xml" file which
+contains implicit pointers to all the other files in the
+export directory. If reading is done by the IOTK library
+all data appear to be in index.xml even if physically it is not.
+         
+ + + + + + + + + + + +
uspp_spsiLOGICAL
Default: .FALSE. +
+when using USPP,  if set .TRUE. the code writes S | psi >
+and | psi > vectors separately in the output file.
+         
+ +
+
+ + This file has been created by helpdoc utility on Fri Jun 22 17:11:35 CEST 2018. + + + diff --git a/PP/Doc/INPUT_pw_export.txt b/PP/Doc/INPUT_pw_export.txt new file mode 100644 index 0000000000000000000000000000000000000000..7947bfa18aba30293338e5c68b5be9b1f259dfaf --- /dev/null +++ b/PP/Doc/INPUT_pw_export.txt @@ -0,0 +1,103 @@ +*** FILE AUTOMATICALLY CREATED: DO NOT EDIT, CHANGES WILL BE LOST *** + +------------------------------------------------------------------------ +INPUT FILE DESCRIPTION + +Program: pw_export.x / PWscf / Quantum Espresso (version: svn) +------------------------------------------------------------------------ + + +Purpose of pw_export.x: + Writes PWSCF data for postprocessing purposes in XML format using IOTK lib. + Wave-functions are collected and written using IO_BASE module. + +Structure of the input data: +============================ + + &INPUTPP + ... + / + + + +======================================================================== +NAMELIST: &INPUTPP + + +-------------------------------------------------------------------- + Variable: prefix + + Type: STRING + Status: MANDATORY + Description: the first part of the name of all the file written by the code + should be equal to the value given in the main calculations. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: outdir + + Type: STRING + Default: "./" + Description: the scratch directory where the massive data-files are written + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: pseudo_dir + + Type: STRING + Default: "./" + Description: directory containing pseudopotential (PP) files + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: psfile(i), i=1,ntyp + + Type: STRING + Default: (empty string) + Description: files containing i-th pseudopotential, where i=1, ntyp. + PP numbering must follow the ordering defined in the input of pw.x + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: single_file + + Type: LOGICAL + Default: .FALSE. + Description: if .TRUE. one-file output is produced + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: ascii + + Type: LOGICAL + Default: .FALSE. + Description: if .TRUE. output files are textual, otherwise they are partly binary. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: pp_file + + Type: STRING + Default: ""prefix".export/" + Description: Output file. + + If it is omitted, a directory ""prefix".export/" is created + in outdir and some output files are put there. Anyway all the data + are accessible through the ""prefix".export/index.xml" file which + contains implicit pointers to all the other files in the + export directory. If reading is done by the IOTK library + all data appear to be in index.xml even if physically it is not. + +-------------------------------------------------------------------- + + +-------------------------------------------------------------------- + Variable: uspp_spsi + + Type: LOGICAL + Default: .FALSE. + Description: when using USPP, if set .TRUE. the code writes S | psi > + and | psi > vectors separately in the output file. + +-------------------------------------------------------------------- + +===END OF NAMELIST====================================================== + + +This file has been created by helpdoc utility on Fri Jun 22 17:11:35 CEST 2018 diff --git a/PP/Doc/eps_man.pdf b/PP/Doc/eps_man.pdf new file mode 100644 index 0000000000000000000000000000000000000000..1ac9f7c65a8ae7a5ba0673d4aa62706f7714f4e7 Binary files /dev/null and b/PP/Doc/eps_man.pdf differ diff --git a/PP/Doc/user_guide.pdf b/PP/Doc/user_guide.pdf new file mode 100644 index 0000000000000000000000000000000000000000..5d42bcbed49d9da1d09185b0a19be606d5741bd7 Binary files /dev/null and b/PP/Doc/user_guide.pdf differ diff --git a/PW/Doc/INPUT_PW.html b/PW/Doc/INPUT_PW.html new file mode 100644 index 0000000000000000000000000000000000000000..321cf2540e1de263baed848faf0ccd39ff369437 --- /dev/null +++ b/PW/Doc/INPUT_PW.html @@ -0,0 +1,5186 @@ + + + + + +pw.x: input description + + + + +
+

Input File Description

+

Program: + pw.x / PWscf / Quantum Espresso (version: svn) +

+
+
+

TABLE OF CONTENTS

+
+ + +

INTRODUCTION

+

&CONTROL

+
+calculation | title | verbosity | restart_mode | wf_collect | nstep | iprint | tstress | tprnfor | dt | outdir | wfcdir | prefix | lkpoint_dir | max_seconds | etot_conv_thr | forc_conv_thr | disk_io | pseudo_dir | tefield | dipfield | lelfield | nberrycyc | lorbm | lberry | gdir | nppstr | lfcpopt | gate +
+

&SYSTEM

+
+ibrav | celldm | A | B | C | cosAB | cosAC | cosBC | nat | ntyp | nbnd | tot_charge | starting_charge | tot_magnetization | starting_magnetization | ecutwfc | ecutrho | ecutfock | nr1 | nr2 | nr3 | nr1s | nr2s | nr3s | nosym | nosym_evc | noinv | no_t_rev | force_symmorphic | use_all_frac | occupations | one_atom_occupations | starting_spin_angle | degauss | smearing | nspin | noncolin | ecfixed | qcutz | q2sigma | input_dft | exx_fraction | screening_parameter | exxdiv_treatment | x_gamma_extrapolation | ecutvcut | nqx1 | nqx2 | nqx3 | lda_plus_u | lda_plus_u_kind | Hubbard_U | Hubbard_J0 | Hubbard_alpha | Hubbard_beta | Hubbard_J(i,ityp) | starting_ns_eigenvalue(m,ispin,I) | U_projection_type | edir | emaxpos | eopreg | eamp | angle1 | angle2 | lforcet | constrained_magnetization | fixed_magnetization | lambda | report | lspinorb | assume_isolated | esm_bc | esm_w | esm_efield | esm_nfit | fcp_mu | vdw_corr | london | london_s6 | london_c6 | london_rvdw | london_rcut | dftd3_version | dftd3_threebody | ts_vdw_econv_thr | ts_vdw_isolated | xdm | xdm_a1 | xdm_a2 | space_group | uniqueb | origin_choice | rhombohedral | zgate | relaxz | block | block_1 | block_2 | block_height +
+

&ELECTRONS

+
+electron_maxstep | scf_must_converge | conv_thr | adaptive_thr | conv_thr_init | conv_thr_multi | mixing_mode | mixing_beta | mixing_ndim | mixing_fixed_ns | diagonalization | ortho_para | diago_thr_init | diago_cg_maxiter | diago_david_ndim | diago_full_acc | efield | efield_cart | efield_phase | startingpot | startingwfc | tqr +
+

&IONS

+
+ion_dynamics | ion_positions | pot_extrapolation | wfc_extrapolation | remove_rigid_rot | ion_temperature | tempw | tolp | delta_t | nraise | refold_pos | upscale | bfgs_ndim | trust_radius_max | trust_radius_min | trust_radius_ini | w_1 | w_2 +
+

&CELL

+
+cell_dynamics | press | wmass | cell_factor | press_conv_thr | cell_dofree +
+

ATOMIC_SPECIES

+
+X | Mass_X | PseudoPot_X +
+

ATOMIC_POSITIONS

+
+X | x | y | z | if_pos(1) | if_pos(2) | if_pos(3) +
+

K_POINTS

+
+nks | xk_x | xk_y | xk_z | wk | nk1 | nk2 | nk3 | sk1 | sk2 | sk3 +
+

CELL_PARAMETERS

+
+v1 | v2 | v3 +
+

CONSTRAINTS

+
+nconstr | constr_tol | constr_type | constr(1) | constr(2) | constr(3) | constr(4) | constr_target +
+

OCCUPATIONS

+
+f_inp1 | f_inp2 +
+

ATOMIC_FORCES

+
+X | fx | fy | fz +
+
+
+
+

INTRODUCTION

+
+Input data format: { } = optional, [ ] = it depends, | = or
+
+All quantities whose dimensions are not explicitly specified are in
+RYDBERG ATOMIC UNITS. Charge is "number" charge (i.e. not multiplied
+by e); potentials are in energy units (i.e. they are multiplied by e).
+
+BEWARE: TABS, DOS <CR><LF> CHARACTERS ARE POTENTIAL SOURCES OF TROUBLE
+
+Namelists must appear in the order given below.
+Comment lines in namelists can be introduced by a "!", exactly as in
+fortran code. Comments lines in cards can be introduced by
+either a "!" or a "#" character in the first position of a line.
+Do not start any line in cards with a "/" character.
+Leave a space between card names and card options, e.g.
+ATOMIC_POSITIONS (bohr), not ATOMIC_POSITIONS(bohr)
+Do not start any line in cards with a "/" character.
+
+
+Structure of the input data:
+===============================================================================
+
+&CONTROL
+  ...
+/
+
+&SYSTEM
+  ...
+/
+
+&ELECTRONS
+  ...
+/
+
+[ &IONS
+  ...
+ / ]
+
+[ &CELL
+  ...
+ / ]
+
+ATOMIC_SPECIES
+ X  Mass_X  PseudoPot_X
+ Y  Mass_Y  PseudoPot_Y
+ Z  Mass_Z  PseudoPot_Z
+
+ATOMIC_POSITIONS { alat | bohr | crystal | angstrom | crystal_sg }
+  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 | tpiba_b | crystal_b | tpiba_c | crystal_c }
+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 { alat | bohr | angstrom }
+   v1(1) v1(2) v1(3)
+   v2(1) v2(2) v2(3)
+   v3(1) v3(2) v3(3) ]
+
+[ OCCUPATIONS
+   f_inp1(1)  f_inp1(2)  f_inp1(3) ... f_inp1(10)
+   f_inp1(11) f_inp1(12) ... f_inp1(nbnd)
+ [ f_inp2(1)  f_inp2(2)  f_inp2(3) ... f_inp2(10)
+   f_inp2(11) f_inp2(12) ... f_inp2(nbnd) ] ]
+
+[ CONSTRAINTS
+   nconstr  { constr_tol }
+   constr_type(.)   constr(1,.)   constr(2,.) [ constr(3,.)   constr(4,.) ] { constr_target(.) } ]
+
+[ ATOMIC_FORCES
+   label_1 Fx(1) Fy(1) Fz(1)
+   .....
+   label_n Fx(n) Fy(n) Fz(n) ]
+   
+
+ + + +

Namelist: &CONTROL +

+ + + + + + + + + + +
calculationCHARACTER
Default: 'scf' +
+
+A string describing the task to be performed. Options are:
+            
+
+
'scf'
+
+            
+
+
+
'nscf'
+
+            
+
+
+
'bands'
+
+            
+
+
+
'relax'
+
+            
+
+
+
'md'
+
+            
+
+
+
'vc-relax'
+
+            
+
+
+
'vc-md'
+
+            
+
+
+(vc = variable-cell).
+            
+
+ + + + + + + + + + + +
titleCHARACTER
Default: ' ' +
+reprinted on output.
+         
+ + + + + + + + + + + +
verbosityCHARACTER
Default: 'low' +
+
+Currently two verbosity levels are implemented:
+            
+
+
'high'
+
+            
+
+
+
'low'
+
+            
+
+
+'debug' and 'medium' have the same effect as 'high';
+'default' and 'minimal' as 'low'
+            
+
+ + + + + + + + + + + +
restart_modeCHARACTER
Default: 'from_scratch' +
+
 Available options are:
+            
+
+
'from_scratch' :
+
+From scratch. This is the normal way to perform a PWscf calculation
+            
+
+
+
'restart' :
+
+From previous interrupted run. Use this switch only if you want to
+continue an interrupted calculation, not to start a new one, or to
+perform non-scf calculations.  Works only if the calculation was
+cleanly stopped using variable max_seconds, or by user request
+with an "exit file" (i.e.: create a file "prefix".EXIT, in directory
+"outdir"; see variables prefix, outdir).  Overrides startingwfc
+and startingpot.
+            
+
+
+ + + + + + + + + + + +
wf_collectLOGICAL
Default: .TRUE. +
+This flag controls the way wavefunctions are stored to disk :
+
+.TRUE.  collect wavefunctions from all processors, store them
+        into the output data directory "outdir"/"prefix".save
+        The resulting format is portable to a different number
+        of processor, or different kind of parallelization
+
+.FALSE. do not collect wavefunctions, leave them in temporary
+        local files (one per processor). The resulting format
+        is readable only on the same number of processors and
+        with the same kind of parallelization used to write it.
+
+Note that this flag has no effect on reading, only on writing.
+         
+ + + + + + + + + + + +
nstepINTEGER
Default: +1 if calculation == 'scf', 'nscf', 'bands'; +50 for the other cases +
+number of molecular-dynamics or structural optimization steps
+performed in this run
+         
+ + + + + + + + + + + +
iprintINTEGER
Default: write only at convergence +
+band energies are written every iprint iterations
+         
+ + + + + + + + + + + +
tstressLOGICAL
Default: .false. +
+calculate stress. It is set to .TRUE. automatically if
+calculation == 'vc-md' or 'vc-relax'
+         
+ + + + + + + +
tprnforLOGICAL
+calculate forces. It is set to .TRUE. automatically if
+calculation == 'relax','md','vc-md'
+         
+ + + + + + + + + + + +
dtREAL
Default: 20.D0 +
+time step for molecular dynamics, in Rydberg atomic units
+(1 a.u.=4.8378 * 10^-17 s : beware, the CP code uses
+ Hartree atomic units, half that much!!!)
+         
+ + + + + + + + + + + +
outdirCHARACTER
Default: +value of the ESPRESSO_TMPDIR environment variable if set; +current directory ('./') otherwise +
+input, temporary, output files are found in this directory,
+see also wfcdir
+         
+ + + + + + + + + + + +
wfcdirCHARACTER
Default: same as outdir +
+This directory specifies where to store files generated by
+each processor (*.wfc{N}, *.igk{N}, etc.). Useful for
+machines without a parallel file system: set wfcdir to
+a local file system, while outdir should be a parallel
+or network file system, visible to all processors. Beware:
+in order to restart from interrupted runs, or to perform
+further calculations using the produced data files, you
+may need to copy files to outdir. Works only for pw.x.
+         
+ + + + + + + + + + + +
prefixCHARACTER
Default: 'pwscf' +
+prepended to input/output filenames:
+prefix.wfc, prefix.rho, etc.
+         
+ + + + + + + + + + + +
lkpoint_dirLOGICAL
Default: .true. +
+If .false. a subdirectory for each k_point is not opened
+in the "prefix".save directory; Kohn-Sham eigenvalues are
+stored instead in a single file for all k-points. Currently
+doesn't work together with wf_collect
+         
+ + + + + + + + + + + +
max_secondsREAL
Default: 1.D+7, or 150 days, i.e. no time limit +
+Jobs stops after max_seconds CPU time. Use this option
+in conjunction with option restart_mode if you need to
+split a job too long to complete into shorter jobs that
+fit into your batch queues.
+         
+ + + + + + + + + + + +
etot_conv_thrREAL
Default: 1.0D-4 +
+Convergence threshold on total energy (a.u) for ionic
+minimization: the convergence criterion is satisfied
+when the total energy changes less than etot_conv_thr
+between two consecutive scf steps. Note that etot_conv_thr
+is extensive, like the total energy.
+See also forc_conv_thr - both criteria must be satisfied
+         
+ + + + + + + + + + + +
forc_conv_thrREAL
Default: 1.0D-3 +
+Convergence threshold on forces (a.u) for ionic minimization:
+the convergence criterion is satisfied when all components of
+all forces are smaller than forc_conv_thr.
+See also etot_conv_thr - both criteria must be satisfied
+         
+ + + + + + + + + + + +
disk_ioCHARACTER
Default: see below +
+
+Specifies the amount of disk I/O activity:
+            
+
+
'high' :
+
+save all data to disk at each SCF step
+            
+
+
+
'medium' :
+
+save wavefunctions at each SCF step unless
+there is a single k-point per process (in which
+case the behavior is the same as 'low')
+            
+
+
+
'low' :
+
+store wfc in memory, save only at the end
+            
+
+
+
'none' :
+
+do not save anything, not even at the end
+('scf', 'nscf', 'bands' calculations; some data
+may be written anyway for other calculations)
+            
+
+
+Default is 'low' for the scf case, 'medium' otherwise.
+Note that the needed RAM increases as disk I/O decreases!
+It is no longer needed to specify 'high' in order to be able
+to restart from an interrupted calculation (see restart_mode)
+but you cannot restart in disk_io=='none'
+            
+
+ + + + + + + + + + + +
pseudo_dirCHARACTER
Default: +value of the $ESPRESSO_PSEUDO environment variable if set; +'$HOME/espresso/pseudo/' otherwise +
+directory containing pseudopotential files
+         
+ + + + + + + + + + + +
tefieldLOGICAL
Default: .FALSE. +
+If .TRUE. a saw-like potential simulating an electric field
+is added to the bare ionic potential. See variables edir,
+eamp, emaxpos, eopreg for the form and size of
+the added potential.
+         
+ + + + + + + + + + + +
dipfieldLOGICAL
Default: .FALSE. +
+If .TRUE. and tefield==.TRUE. a dipole correction is also
+added to the bare ionic potential - implements the recipe
+of L. Bengtsson, PRB 59, 12301 (1999). See variables edir,
+emaxpos, eopreg for the form of the correction. Must
+be used ONLY in a slab geometry, for surface calculations,
+with the discontinuity FALLING IN THE EMPTY SPACE.
+         
+ + + + + + + + + + + +
lelfieldLOGICAL
Default: .FALSE. +
+If .TRUE. a homogeneous finite electric field described
+through the modern theory of the polarization is applied.
+This is different from tefield == .true. !
+         
+ + + + + + + + + + + +
nberrycycINTEGER
Default: 1 +
+In the case of a finite electric field  ( lelfield == .TRUE. )
+it defines the number of iterations for converging the
+wavefunctions in the electric field Hamiltonian, for each
+external iteration on the charge density
+         
+ + + + + + + + + + + +
lorbmLOGICAL
Default: .FALSE. +
+If .TRUE. perform orbital magnetization calculation.
+If finite electric field is applied (lelfield==.true.) only Kubo terms are computed
+[for details see New J. Phys. 12, 053032 (2010), doi:10.1088/1367-2630/12/5/053032].
+
+The type of calculation is 'nscf' and should be performed on an automatically
+generated uniform grid of k points.
+
+Works ONLY with norm-conserving pseudopotentials.
+         
+ + + + + + + + + + + +
lberryLOGICAL
Default: .FALSE. +
+If .TRUE. perform a Berry phase calculation.
+See the header of PW/src/bp_c_phase.f90 for documentation.
+         
+ + + + + + + +
gdirINTEGER
+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
+For calculations with finite electric fields
+(lelfield==.true.) "gdir" is the direction of the field.
+         
+ + + + + + + +
nppstrINTEGER
+For Berry phase calculation: number of k-points to be
+calculated along each symmetry-reduced string.
+The same for calculation with finite electric fields
+(lelfield==.true.).
+         
+ + + + + + + + + + + + + + + +
lfcpoptLOGICAL
Default: .FALSE. +
See:fcp_mu
+If .TRUE. perform a constant bias potential (constant-mu) calculation
+for a static system with ESM method. See the header of PW/src/fcp.f90
+for documentation.
+
+NB:
+- The total energy displayed in 'prefix.out' includes the potentiostat
+  contribution (-mu*N).
+- calculation must be 'relax'.
+- assume_isolated = 'esm' and esm_bc = 'bc2' or 'bc3' must be set
+  in SYSTEM namelist.
+         
+ + + + + + + + + + + + + + + +
gateLOGICAL
Default: .FALSE. +
See: +zgate, relaxz, block, block_1, block_2, block_height +
+In the case of charged cells (tot_charge .ne. 0) setting gate = .TRUE.
+represents the counter charge (i.e. -tot_charge) not by a homogeneous
+background charge but with a charged plate, which is placed at zgate
+(see below). Details of the gate potential can be found in
+T. Brumme, M. Calandra, F. Mauri; PRB 89, 245406 (2014).
+Note, that in systems which are not symmetric with respect to the plate,
+one needs to enable the dipole correction! (dipfield=.true.).
+Currently, symmetry can be used with gate=.true. but carefully check
+that no symmetry is included which maps z to -z even if in principle one
+could still use them for symmetric systems (i.e. no dipole correction).
+For nosym=.false. verbosity is set to 'high'.
+Note: this option was called "monopole" in v6.0 and 6.1 of pw.x
+         
+ +
+ + +

Namelist: &SYSTEM +

+ + + + + + + + + + +
ibravINTEGER
Status: REQUIRED +
+  Bravais-lattice index. Optional only if space_group is set.
+  If ibrav /= 0, specify EITHER [ celldm(1)-celldm(6) ]
+  OR [ A, B, C, cosAB, cosAC, cosBC ]
+  but NOT both. The lattice parameter "alat" is set to
+  alat = celldm(1) (in a.u.) or alat = A (in Angstrom);
+  see below for the other parameters.
+  For ibrav=0 specify the lattice vectors in CELL_PARAMETERS,
+  optionally the lattice parameter alat = celldm(1) (in a.u.)
+  or = A (in Angstrom), or else it is taken from CELL_PARAMETERS
+
+ibrav      structure                   celldm(2)-celldm(6)
+                                     or: b,c,cosbc,cosac,cosab
+  0          free
+      crystal axis provided in input: see card CELL_PARAMETERS
+
+  1          cubic P (sc)
+      v1 = a(1,0,0),  v2 = a(0,1,0),  v3 = a(0,0,1)
+
+  2          cubic F (fcc)
+      v1 = (a/2)(-1,0,1),  v2 = (a/2)(0,1,1), v3 = (a/2)(-1,1,0)
+
+  3          cubic I (bcc)
+      v1 = (a/2)(1,1,1),  v2 = (a/2)(-1,1,1),  v3 = (a/2)(-1,-1,1)
+ -3          cubic I (bcc), more symmetric axis:
+      v1 = (a/2)(-1,1,1), v2 = (a/2)(1,-1,1),  v3 = (a/2)(1,1,-1)
+
+  4          Hexagonal and Trigonal P        celldm(3)=c/a
+      v1 = a(1,0,0),  v2 = a(-1/2,sqrt(3)/2,0),  v3 = a(0,0,c/a)
+
+  5          Trigonal R, 3fold axis c        celldm(4)=cos(gamma)
+      The crystallographic vectors form a three-fold star around
+      the z-axis, the primitive cell is a simple rhombohedron:
+      v1 = a(tx,-ty,tz),   v2 = a(0,2ty,tz),   v3 = a(-tx,-ty,tz)
+      where c=cos(gamma) is the cosine of the angle gamma between
+      any pair of crystallographic vectors, tx, ty, tz are:
+        tx=sqrt((1-c)/2), ty=sqrt((1-c)/6), tz=sqrt((1+2c)/3)
+ -5          Trigonal R, 3fold axis <111>    celldm(4)=cos(gamma)
+      The crystallographic vectors form a three-fold star around
+      <111>. Defining a' = a/sqrt(3) :
+      v1 = a' (u,v,v),   v2 = a' (v,u,v),   v3 = a' (v,v,u)
+      where u and v are defined as
+        u = tz - 2*sqrt(2)*ty,  v = tz + sqrt(2)*ty
+      and tx, ty, tz as for case ibrav=5
+      Note: if you prefer x,y,z as axis in the cubic limit,
+            set  u = tz + 2*sqrt(2)*ty,  v = tz - sqrt(2)*ty
+            See also the note in Modules/latgen.f90
+
+  6          Tetragonal P (st)               celldm(3)=c/a
+      v1 = a(1,0,0),  v2 = a(0,1,0),  v3 = a(0,0,c/a)
+
+  7          Tetragonal I (bct)              celldm(3)=c/a
+      v1=(a/2)(1,-1,c/a),  v2=(a/2)(1,1,c/a),  v3=(a/2)(-1,-1,c/a)
+
+  8          Orthorhombic P                  celldm(2)=b/a
+                                             celldm(3)=c/a
+      v1 = (a,0,0),  v2 = (0,b,0), v3 = (0,0,c)
+
+  9          Orthorhombic base-centered(bco) celldm(2)=b/a
+                                             celldm(3)=c/a
+      v1 = (a/2, b/2,0),  v2 = (-a/2,b/2,0),  v3 = (0,0,c)
+ -9          as 9, alternate description
+      v1 = (a/2,-b/2,0),  v2 = (a/2, b/2,0),  v3 = (0,0,c)
+ 91          Orthorhombic one-face base-centered A-type
+                                             celldm(2)=b/a
+                                             celldm(3)=c/a
+      v1 = (a, 0, 0),  v2 = (0,b/2,-c/2),  v3 = (0,b/2,c/2)
+
+ 10          Orthorhombic face-centered      celldm(2)=b/a
+                                             celldm(3)=c/a
+      v1 = (a/2,0,c/2),  v2 = (a/2,b/2,0),  v3 = (0,b/2,c/2)
+
+ 11          Orthorhombic body-centered      celldm(2)=b/a
+                                             celldm(3)=c/a
+      v1=(a/2,b/2,c/2),  v2=(-a/2,b/2,c/2),  v3=(-a/2,-b/2,c/2)
+
+ 12          Monoclinic P, unique axis c     celldm(2)=b/a
+                                             celldm(3)=c/a,
+                                             celldm(4)=cos(ab)
+      v1=(a,0,0), v2=(b*cos(gamma),b*sin(gamma),0),  v3 = (0,0,c)
+      where gamma is the angle between axis a and b.
+-12          Monoclinic P, unique axis b     celldm(2)=b/a
+                                             celldm(3)=c/a,
+                                             celldm(5)=cos(ac)
+      v1 = (a,0,0), v2 = (0,b,0), v3 = (c*cos(beta),0,c*sin(beta))
+      where beta is the angle between axis a and c
+
+ 13          Monoclinic base-centered        celldm(2)=b/a
+             (unique axis c)                 celldm(3)=c/a,
+                                             celldm(4)=cos(gamma)
+      v1 = (  a/2,         0,          -c/2),
+      v2 = (b*cos(gamma), b*sin(gamma), 0  ),
+      v3 = (  a/2,         0,           c/2),
+      where gamma=angle between axis a and b projected on xy plane
+
+-13          Monoclinic base-centered        celldm(2)=b/a
+             (unique axis b)                 celldm(3)=c/a,
+                                             celldm(5)=cos(beta)
+      v1 = (  a/2,      -b/2,             0),
+      v2 = (  a/2,       b/2,             0),
+      v3 = (c*cos(beta),   0,   c*sin(beta)),
+      where beta=angle between axis a and c projected on xz plane
+
+ 14          Triclinic                       celldm(2)= b/a,
+                                             celldm(3)= c/a,
+                                             celldm(4)= cos(bc),
+                                             celldm(5)= cos(ac),
+                                             celldm(6)= cos(ab)
+      v1 = (a, 0, 0),
+      v2 = (b*cos(gamma), b*sin(gamma), 0)
+      v3 = (c*cos(beta),  c*(cos(alpha)-cos(beta)cos(gamma))/sin(gamma),
+           c*sqrt( 1 + 2*cos(alpha)cos(beta)cos(gamma)
+                     - cos(alpha)^2-cos(beta)^2-cos(gamma)^2 )/sin(gamma) )
+      where alpha is the angle between axis b and c
+             beta is the angle between axis a and c
+            gamma is the angle between axis a and b
+         
+ +
+

Either: +

+ + + + + + + + + + +
celldm(i), i=1,6REAL
See:ibrav
+Crystallographic constants - see the ibrav variable.
+Specify either these OR A,B,C,cosAB,cosBC,cosAC NOT both.
+Only needed values (depending on "ibrav") must be specified
+alat = celldm(1) is the lattice parameter "a" (in BOHR)
+If ibrav==0, only celldm(1) is used if present;
+cell vectors are read from card CELL_PARAMETERS
+            
+ +

Or: +

+ + + + + + + + + + +
+A, B, C, cosAB, cosAC, cosBCREAL
See:ibrav
+Traditional crystallographic constants:
+
+  a,b,c in ANGSTROM
+  cosAB = cosine of the angle between axis a and b (gamma)
+  cosAC = cosine of the angle between axis a and c (beta)
+  cosBC = cosine of the angle between axis b and c (alpha)
+
+The axis are chosen according to the value of ibrav.
+Specify either these OR celldm but NOT both.
+Only needed values (depending on ibrav) must be specified.
+
+The lattice parameter alat = A (in ANGSTROM ).
+
+If ibrav == 0, only A is used if present, and
+cell vectors are read from card CELL_PARAMETERS.
+            
+ +
+ + + + + + + + + + +
natINTEGER
Status: REQUIRED +
+number of atoms in the unit cell (ALL atoms, except if
+space_group is set, in which case, INEQUIVALENT atoms)
+         
+ + + + + + + + + + + +
ntypINTEGER
Status: REQUIRED +
+number of types of atoms in the unit cell
+         
+ + + + + + + + + + + +
nbndINTEGER
Default: +for an insulator, nbnd = number of valence bands +(nbnd = # of electrons /2); +
for a metal, 20% more (minimum 4 more) +
+Number of electronic states (bands) to be calculated.
+Note that in spin-polarized calculations the number of
+k-point, not the number of bands per k-point, is doubled
+         
+ + + + + + + + + + + +
tot_chargeREAL
Default: 0.0 +
+Total charge of the system. Useful for simulations with charged cells.
+By default the unit cell is assumed to be neutral (tot_charge=0).
+tot_charge=+1 means one electron missing from the system,
+tot_charge=-1 means one additional electron, and so on.
+
+In a periodic calculation a compensating jellium background is
+inserted to remove divergences if the cell is not neutral.
+         
+ + + + + + + + + + + +
starting_charge(i), i=1,ntypREAL
Default: 0.0 +
+starting charge on atomic type 'i',
+to create starting potential with startingpot = 'atomic'.
+         
+ + + + + + + + + + + +
tot_magnetizationREAL
Default: -1 [unspecified] +
+Total majority spin charge - minority spin charge.
+Used to impose a specific total electronic magnetization.
+If unspecified then tot_magnetization variable is ignored and
+the amount of electronic magnetization is determined during
+the self-consistent cycle.
+         
+ + + + + + + +
starting_magnetization(i), i=1,ntypREAL
+Starting spin polarization on atomic type 'i' in a spin
+polarized calculation. Values range between -1 (all spins
+down for the valence electrons of atom type 'i') to 1
+(all spins up). 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, unless you constrain the magnetization
+(see tot_magnetization and constrained_magnetization).
+Note that if you start from zero initial magnetization, you
+will invariably end up in a nonmagnetic (zero magnetization)
+state. If you want to start from an antiferromagnetic state,
+you may need to define two different atomic species
+corresponding to sublattices of the same atomic type.
+starting_magnetization is ignored if you are performing a
+non-scf calculation, if you are restarting from a previous
+run, or restarting from an interrupted run.
+If you fix the magnetization with tot_magnetization,
+you should not specify starting_magnetization.
+In the spin-orbit case starting with zero
+starting_magnetization on all atoms imposes time reversal
+symmetry. The magnetization is never calculated and
+kept zero (the internal variable domag is .FALSE.).
+         
+ + + + + + + + + + + +
ecutwfcREAL
Status: REQUIRED +
+kinetic energy cutoff (Ry) for wavefunctions
+         
+ + + + + + + + + + + +
ecutrhoREAL
Default: 4 * ecutwfc +
+Kinetic energy cutoff (Ry) for charge density and potential
+For norm-conserving pseudopotential you should stick to the
+default value, you can reduce it by a little but it will
+introduce noise especially on forces and stress.
+If there are ultrasoft PP, a larger value than the default is
+often desirable (ecutrho = 8 to 12 times ecutwfc, typically).
+PAW datasets can often be used at 4*ecutwfc, but it depends
+on the shape of augmentation charge: testing is mandatory.
+The use of gradient-corrected functional, especially in cells
+with vacuum, or for pseudopotential without non-linear core
+correction, usually requires an higher values of ecutrho
+to be accurately converged.
+         
+ + + + + + + + + + + +
ecutfockREAL
Default: ecutrho +
+Kinetic energy cutoff (Ry) for the exact exchange operator in
+EXX type calculations. By default this is the same as ecutrho
+but in some EXX calculations significant speed-up can be found
+by reducing ecutfock, at the expense of some loss in accuracy.
+Must be .gt. ecutwfc. Not implemented for stress calculation.
+Use with care, especially in metals where it may give raise
+to instabilities.
+         
+ + + + + + + +
+nr1, nr2, nr3INTEGER
+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)
+Note: you must specify all three dimensions for this setting to
+be used.
+         
+ + + + + + + +
+nr1s, nr2s, nr3sINTEGER
+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 )
+Note: you must specify all three dimensions for this setting to
+be used.
+         
+ + + + + + + + + + + +
nosymLOGICAL
Default: .FALSE. +
+if (.TRUE.) symmetry is not used. Consequences:
+
+- if a list of k points is provided in input, it is used
+  "as is": symmetry-inequivalent k-points are not generated,
+  and the charge density is not symmetrized;
+
+- if a uniform (Monkhorst-Pack) k-point grid is provided in
+  input, it is expanded to cover the entire Brillouin Zone,
+  irrespective of the crystal symmetry.
+  Time reversal symmetry is assumed so k and -k are considered
+  as equivalent unless noinv=.true. is specified.
+
+Do not use this option unless you know exactly what you want
+and what you get. May be useful in the following cases:
+- in low-symmetry large cells, if you cannot afford a k-point
+  grid with the correct symmetry
+- in MD simulations
+- in calculations for isolated atoms
+         
+ + + + + + + + + + + +
nosym_evcLOGICAL
Default: .FALSE. +
+if (.TRUE.) symmetry is not used, and k points are
+forced to have the symmetry of the Bravais lattice;
+an automatically generated Monkhorst-Pack grid will contain
+all points of the grid over the entire Brillouin Zone,
+plus the points rotated by the symmetries of the Bravais
+lattice which were not in the original grid. The same
+applies if a k-point list is provided in input instead
+of a Monkhorst-Pack grid. Time reversal symmetry is assumed
+so k and -k are equivalent unless noinv=.true. is specified.
+This option differs from nosym because it forces k-points
+in all cases to have the full symmetry of the Bravais lattice
+(not all uniform grids have such property!)
+         
+ + + + + + + + + + + +
noinvLOGICAL
Default: .FALSE. +
+if (.TRUE.) disable the usage of k => -k symmetry
+(time reversal) in k-point generation
+         
+ + + + + + + + + + + +
no_t_revLOGICAL
Default: .FALSE. +
+if (.TRUE.) disable the usage of magnetic symmetry operations
+that consist in a rotation + time reversal.
+         
+ + + + + + + + + + + +
force_symmorphicLOGICAL
Default: .FALSE. +
+if (.TRUE.) force the symmetry group to be symmorphic by disabling
+symmetry operations having an associated fractionary translation
+         
+ + + + + + + + + + + +
use_all_fracLOGICAL
Default: .FALSE. +
+if (.TRUE.) do not discard symmetry operations with an
+associated fractionary translation that does not send the
+real-space FFT grid into itself. These operations are
+incompatible with real-space symmetrization but not with the
+new G-space symmetrization. BEWARE: do not use for phonons
+and for hybrid functionals! Both still use symmetrization
+in real space.
+         
+ + + + + + + +
occupationsCHARACTER
+
 Available options are:
+            
+
+
'smearing' :
+
+gaussian smearing for metals;
+see variables smearing and degauss
+            
+
+
+
'tetrahedra' :
+
+Tetrahedron method, Bloechl's version:
+P.E. Bloechl, PRB 49, 16223 (1994)
+Requires uniform grid of k-points, to be
+automatically generated (see card K_POINTS).
+Well suited for calculation of DOS,
+less so (because not variational) for
+force/optimization/dynamics calculations.
+            
+
+
+
'tetrahedra_lin' :
+
+Original linear tetrahedron method.
+To be used only as a reference;
+the optimized tetrahedron method is more efficient.
+            
+
+
+
'tetrahedra_opt' :
+
+Optimized tetrahedron method:
+see M. Kawamura, PRB 89, 094515 (2014).
+Can be used for phonon calculations as well.
+            
+
+
+
'fixed' :
+
+for insulators with a gap
+            
+
+
+
'from_input' :
+
+The occupation are read from input file,
+card OCCUPATIONS. Option valid only for a
+single k-point, requires nbnd to be set
+in input. Occupations should be consistent
+with the value of tot_charge.
+            
+
+
+ + + + + + + + + + + +
one_atom_occupationsLOGICAL
Default: .FALSE. +
+This flag is used for isolated atoms (nat=1) together with
+occupations='from_input'. If it is .TRUE., the wavefunctions
+are ordered as the atomic starting wavefunctions, independently
+from their eigenvalue. The occupations indicate which atomic
+states are filled.
+
+The order of the states is written inside the UPF pseudopotential file.
+In the scalar relativistic case:
+S -> l=0, m=0
+P -> l=1, z, x, y
+D -> l=2, r^2-3z^2, xz, yz, xy, x^2-y^2
+
+In the noncollinear magnetic case (with or without spin-orbit),
+each group of states is doubled. For instance:
+P -> l=1, z, x, y for spin up, l=1, z, x, y for spin down.
+Up and down is relative to the direction of the starting
+magnetization.
+
+In the case with spin-orbit and time-reversal
+(starting_magnetization=0.0) the atomic wavefunctions are
+radial functions multiplied by spin-angle functions.
+For instance:
+P -> l=1, j=1/2, m_j=-1/2,1/2. l=1, j=3/2,
+     m_j=-3/2, -1/2, 1/2, 3/2.
+
+In the magnetic case with spin-orbit the atomic wavefunctions
+can be forced to be spin-angle functions by setting
+starting_spin_angle to .TRUE..
+         
+ + + + + + + + + + + +
starting_spin_angleLOGICAL
Default: .FALSE. +
+In the spin-orbit case when domag=.TRUE., by default,
+the starting wavefunctions are initialized as in scalar
+relativistic noncollinear case without spin-orbit.
+
+By setting starting_spin_angle=.TRUE. this behaviour can
+be changed and the initial wavefunctions are radial
+functions multiplied by spin-angle functions.
+
+When domag=.FALSE. the initial wavefunctions are always
+radial functions multiplied by spin-angle functions
+independently from this flag.
+
+When lspinorb is .FALSE. this flag is not used.
+         
+ + + + + + + + + + + +
degaussREAL
Default: 0.D0 Ry +
+value of the gaussian spreading (Ry) for brillouin-zone
+integration in metals.
+         
+ + + + + + + + + + + +
smearingCHARACTER
Default: 'gaussian' +
+
+Available options are:
+            
+
+
'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
+            
+
+
+ + + + + + + + + + + +
nspinINTEGER
Default: 1 +
+nspin = 1 :  non-polarized calculation (default)
+
+nspin = 2 :  spin-polarized calculation, LSDA
+             (magnetization along z axis)
+
+nspin = 4 :  spin-polarized calculation, noncollinear
+             (magnetization in generic direction)
+             DO NOT specify nspin in this case;
+             specify noncolin=.TRUE. instead
+         
+ + + + + + + + + + + +
noncolinLOGICAL
Default: .false. +
+if .true. the program will perform a noncollinear calculation.
+         
+ + + + + + + + + + + + + + +
ecfixedREAL
Default: 0.0 +
See:q2sigma
+ + + + + + + + + + + + + + +
qcutzREAL
Default: 0.0 +
See:q2sigma
+ + + + + + + + + + + +
q2sigmaREAL
Default: 0.1 +
+ecfixed, qcutz, q2sigma:  parameters for modified functional to be
+used in variable-cell molecular dynamics (or in stress calculation).
+"ecfixed" is the value (in Rydberg) of the constant-cutoff;
+"qcutz" and "q2sigma" are the height and the width (in Rydberg)
+of the energy step for reciprocal vectors whose square modulus
+is greater than "ecfixed". In the kinetic energy, G^2 is
+replaced by G^2 + qcutz * (1 + erf ( (G^2 - ecfixed)/q2sigma) )
+See: M. Bernasconi et al, J. Phys. Chem. Solids 56, 501 (1995),
+doi:10.1016/0022-3697(94)00228-2
+         
+ + + + + + + + + + + +
input_dftCHARACTER
Default: read from pseudopotential files +
+Exchange-correlation functional: eg 'PBE', 'BLYP' etc
+See Modules/funct.f90 for allowed values.
+Overrides the value read from pseudopotential files.
+Use with care and if you know what you are doing!
+         
+ + + + + + + + + + + +
exx_fractionREAL
Default: it depends on the specified functional +
+Fraction of EXX for hybrid functional calculations. In the case of
+input_dft='PBE0', the default value is 0.25, while for input_dft='B3LYP'
+the exx_fraction default value is 0.20.
+         
+ + + + + + + + + + + +
screening_parameterREAL
Default: 0.106 +
+screening_parameter for HSE like hybrid functionals.
+For more information, see:
+J. Chem. Phys. 118, 8207 (2003), doi:10.1063/1.1564060
+J. Chem. Phys. 124, 219906 (2006), doi:10.1063/1.2204597
+         
+ + + + + + + + + + + +
exxdiv_treatmentCHARACTER
Default: 'gygi-baldereschi' +
+
+Specific for EXX. It selects the kind of approach to be used
+for treating the Coulomb potential divergencies at small q vectors.
+            
+
+
'gygi-baldereschi' :
+
 appropriate for cubic and quasi-cubic supercells
+            
+
+
+
'vcut_spherical' :
+
 appropriate for cubic and quasi-cubic supercells
+            
+
+
+
'vcut_ws' :
+
 appropriate for strongly anisotropic supercells, see also ecutvcut.
+            
+
+
+
'none' :
+
 sets Coulomb potential at G,q=0 to 0.0 (required for GAU-PBE)
+            
+
+
+ + + + + + + + + + + +
x_gamma_extrapolationLOGICAL
Default: .true. +
+Specific for EXX. If .true., extrapolate the G=0 term of the
+potential (see README in examples/EXX_example for more)
+Set this to .false. for GAU-PBE.
+         
+ + + + + + + + + + + + + + + +
ecutvcutREAL
Default: 0.0 Ry +
See:exxdiv_treatment
+Reciprocal space cutoff for correcting Coulomb potential
+divergencies at small q vectors.
+         
+ + + + + + + +
+nqx1, nqx2, nqx3INTEGER
+Three-dimensional mesh for q (k1-k2) sampling of
+the Fock operator (EXX). Can be smaller than
+the number of k-points.
+
+Currently this defaults to the size of the k-point mesh used.
+In QE =< 5.0.2 it defaulted to nqx1=nqx2=nqx3=1.
+         
+ + + + + + + + + + + + + + + +
lda_plus_uLOGICAL
Default: .FALSE. +
Status: +DFT+U (formerly known as LDA+U) currently works only for +a few selected elements. Modify Modules/set_hubbard_l.f90 and +PW/src/tabd.f90 if you plan to use DFT+U with an element that +is not configured there. +
+Specify lda_plus_u = .TRUE. to enable DFT+U calculations
+See: Anisimov, Zaanen, and Andersen, PRB 44, 943 (1991);
+     Anisimov et al., PRB 48, 16929 (1993);
+     Liechtenstein, Anisimov, and Zaanen, PRB 52, R5467 (1994).
+You must specify, for each species with a U term, the value of
+U and (optionally) alpha, J of the Hubbard model (all in eV):
+see lda_plus_u_kind, Hubbard_U, Hubbard_alpha, Hubbard_J
+         
+ + + + + + + + + + + +
lda_plus_u_kindINTEGER
Default: 0 +
+Specifies the type of DFT+U calculation:
+
+   0   simplified version of Cococcioni and de Gironcoli,
+       PRB 71, 035105 (2005), using Hubbard_U
+
+   1   rotationally invariant scheme of Liechtenstein et al.,
+       using Hubbard_U and Hubbard_J
+         
+ + + + + + + + + + + +
Hubbard_U(i), i=1,ntypREAL
Default: 0.D0 for all species +
+Hubbard_U(i): U parameter (eV) for species i, DFT+U calculation
+         
+ + + + + + + + + + + +
Hubbard_J0(i), i=1,ntypeREAL
Default: 0.D0 for all species +
+Hubbard_J0(i): J0 parameter (eV) for species i, DFT+U+J calculation,
+see PRB 84, 115108 (2011) for details.
+         
+ + + + + + + + + + + +
Hubbard_alpha(i), i=1,ntypREAL
Default: 0.D0 for all species +
+Hubbard_alpha(i) is the perturbation (on atom i, in eV)
+used to compute U with the linear-response method of
+Cococcioni and de Gironcoli, PRB 71, 035105 (2005)
+(only for lda_plus_u_kind=0)
+         
+ + + + + + + + + + + +
Hubbard_beta(i), i=1,ntypREAL
Default: 0.D0 for all species +
+Hubbard_beta(i) is the perturbation (on atom i, in eV)
+used to compute J0 with the linear-response method of
+Cococcioni and de Gironcoli, PRB 71, 035105 (2005)
+(only for lda_plus_u_kind=0). See also
+PRB 84, 115108 (2011).
+         
+ + + + + + + + + + + +
Hubbard_J(i,ityp)
Default: 0.D0 for all species +
+Hubbard_J(i,ityp): J parameters (eV) for species ityp,
+used in DFT+U calculations (only for lda_plus_u_kind=1)
+For p orbitals:  J = Hubbard_J(1,ityp);
+For d orbitals:  J = Hubbard_J(1,ityp), B = Hubbard_J(2,ityp);
+For f orbitals:  J = Hubbard_J(1,ityp), E2 = Hubbard_J(2,ityp),
+                 E3= Hubbard_J(3,ityp).
+If B or E2 or E3 are not specified or set to 0 they will be
+calculated from J using atomic ratios.
+         
+ + + + + + + + + + + +
starting_ns_eigenvalue(m,ispin,I)REAL
Default: -1.d0 that means NOT SET +
+In the first iteration of an DFT+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_projection_typeCHARACTER
Default: 'atomic' +
+
+Only active when lda_plus_U is .true., specifies the type
+of projector on localized orbital to be used in the DFT+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
+            
+
+
+
'norm-atomic' :
+
+Lowdin normalization of atomic wfc. Keep in mind:
+atomic wfc are not orthogonalized in this case.
+This is a "quick and dirty" trick to be used when
+atomic wfc from the pseudopotential are not
+normalized (and thus produce occupation whose
+value exceeds unity). If orthogonalized wfc are
+not needed always try 'atomic' first.
+            
+
+
+
'file' :
+
+use the information from file "prefix".atwfc that must
+have been generated previously, for instance by pmw.x
+(see PP/src/poormanwannier.f90 for details).
+            
+
+
+
'pseudo' :
+
+use the pseudopotential projectors. The charge density
+outside the atomic core radii is excluded.
+N.B.: for atoms with +U, a pseudopotential with the
+all-electron atomic wavefunctions is required (i.e.,
+as generated by ld1.x with lsave_wfc flag).
+            
+
+
+NB: forces and stress currently implemented only for the
+'atomic' and 'pseudo' choice.
+            
+
+ + + + + + + +
edirINTEGER
+The direction of the electric field or dipole correction is
+parallel to the bg(:,edir) reciprocal lattice vector, so the
+potential is constant in planes defined by FFT grid points;
+edir = 1, 2 or 3. Used only if tefield is .TRUE.
+         
+ + + + + + + + + + + +
emaxposREAL
Default: 0.5D0 +
+Position of the maximum of the saw-like potential along crystal
+axis edir, within the  unit cell (see below), 0 < emaxpos < 1
+Used only if tefield is .TRUE.
+         
+ + + + + + + + + + + +
eopregREAL
Default: 0.1D0 +
+Zone in the unit cell where the saw-like potential decreases.
+( see below, 0 < eopreg < 1 ). Used only if tefield is .TRUE.
+         
+ + + + + + + + + + + +
eampREAL
Default: 0.001 a.u. +
+Amplitude of the electric field, in ***Hartree*** a.u.;
+1 a.u. = 51.4220632*10^10 V/m. Used only if tefield==.TRUE.
+The saw-like potential increases with slope eamp in the
+region from (emaxpos+eopreg-1) to (emaxpos), then decreases
+to 0 until (emaxpos+eopreg), in units of the crystal
+vector edir. Important: the change of slope of this
+potential must be located in the empty region, or else
+unphysical forces will result.
+         
+ + + + + + + +
angle1(i), i=1,ntypREAL
+The angle expressed in degrees between the initial
+magnetization and the z-axis. For noncollinear calculations
+only; index i runs over the atom types.
+         
+ + + + + + + +
angle2(i), i=1,ntypREAL
+The angle expressed in degrees between the projection
+of the initial magnetization on x-y plane and the x-axis.
+For noncollinear calculations only.
+         
+ + + + + + + +
lforcetLOGICAL
+When starting a non collinear calculation using an existing density
+                      file from a collinear lsda calculation assumes previous density points in
+                      z direction and rotates is in the direction described by angle1 and
+                      angle2 variables for atomic type 1
+         
+ + + + + + + + + + + + + + + +
constrained_magnetizationCHARACTER
Default: 'none' +
See: +lambda, fixed_magnetization +
+
+Used to perform constrained calculations in magnetic systems.
+Currently available choices:
+            
+
+
'none' :
+
+no constraint
+            
+
+
+
'total' :
+
+total magnetization is constrained by
+adding a penalty functional to the total energy:
+
+LAMBDA * SUM_{i} ( magnetization(i) - fixed_magnetization(i) )**2
+
+where the sum over i runs over the three components of
+the magnetization. Lambda is a real number (see below).
+Noncolinear case only. Use tot_magnetization for LSDA
+            
+
+
+
'atomic' :
+
+atomic magnetization are constrained to the defined
+starting magnetization adding a penalty:
+
+LAMBDA * SUM_{i,itype} ( magnetic_moment(i,itype) - mcons(i,itype) )**2
+
+where i runs over the cartesian components (or just z
+in the collinear case) and itype over the types (1-ntype).
+mcons(:,:) array is defined from starting_magnetization,
+(and angle1, angle2 in the non-collinear case). lambda is
+a real number
+            
+
+
+
'total direction' :
+
+the angle theta of the total magnetization
+with the z axis (theta = fixed_magnetization(3))
+is constrained:
+
+LAMBDA * ( arccos(magnetization(3)/mag_tot) - theta )**2
+
+where mag_tot is the modulus of the total magnetization.
+            
+
+
+
'atomic direction' :
+
+not all the components of the atomic
+magnetic moment are constrained but only the cosine
+of angle1, and the penalty functional is:
+
+LAMBDA * SUM_{itype} ( mag_mom(3,itype)/mag_mom_tot - cos(angle1(ityp)) )**2
+            
+
+
+N.B.: symmetrization may prevent to reach the desired orientation
+of the magnetization. Try not to start with very highly symmetric
+configurations or use the nosym flag (only as a last remedy)
+            
+
+ + + + + + + + + + + + + + + +
fixed_magnetization(i), i=1,3REAL
Default: 0.d0 +
See:constrained_magnetization
+total magnetization vector (x,y,z components) to be kept
+fixed when constrained_magnetization=='total'
+         
+ + + + + + + + + + + + + + + +
lambdaREAL
Default: 1.d0 +
See:constrained_magnetization
+parameter used for constrained_magnetization calculations
+N.B.: if the scf calculation does not converge, try to reduce lambda
+      to obtain convergence, then restart the run with a larger lambda
+         
+ + + + + + + + + + + +
reportINTEGER
Default: 100 +
+Number of iterations after which the program
+writes all the atomic magnetic moments.
+         
+ + + + + + + +
lspinorbLOGICAL
+if .TRUE. the noncollinear code can use a pseudopotential with
+spin-orbit.
+         
+ + + + + + + + + + + +
assume_isolatedCHARACTER
Default: 'none' +
+
+Used to perform calculation assuming the system to be
+isolated (a molecule or a cluster in a 3D supercell).
+
+Currently available choices:
+            
+
+
'none' :
+
+(default): regular periodic calculation w/o any correction.
+            
+
+
+
'makov-payne', 'm-p', 'mp' :
+
+the Makov-Payne correction to the
+total energy is computed. An estimate of the vacuum
+level is also calculated so that eigenvalues can be
+properly aligned. ONLY FOR CUBIC SYSTEMS (ibrav=1,2,3).
+Theory: G.Makov, and M.C.Payne,
+     "Periodic boundary conditions in ab initio
+     calculations" , PRB 51, 4014 (1995).
+            
+
+
+
'martyna-tuckerman', 'm-t', 'mt' :
+
+Martyna-Tuckerman correction
+to both total energy and scf potential. Adapted from:
+G.J. Martyna, and M.E. Tuckerman,
+"A reciprocal space based method for treating long
+range interactions in ab-initio and force-field-based
+calculation in clusters", J. Chem. Phys. 110, 2810 (1999),
+doi:10.1063/1.477923.
+            
+
+
+
'esm' :
+
+Effective Screening Medium Method.
+For polarized or charged slab calculation, embeds
+the simulation cell within an effective semi-
+infinite medium in the perpendicular direction
+(along z). Embedding regions can be vacuum or
+semi-infinite metal electrodes (use esm_bc to
+choose boundary conditions). If between two
+electrodes, an optional electric field
+('esm_efield') may be applied. Method described in
+M. Otani and O. Sugino, "First-principles calculations
+of charged surfaces and interfaces: A plane-wave
+nonrepeated slab approach", PRB 73, 115407 (2006).
+
+NB:
+   - Two dimensional (xy plane) average charge density
+     and electrostatic potentials are printed out to
+     'prefix.esm1'.
+
+   - Requires cell with a_3 lattice vector along z,
+     normal to the xy plane, with the slab centered
+     around z=0. Also requires symmetry checking to be
+     disabled along z, either by setting nosym = .TRUE.
+     or by very slight displacement (i.e., 5e-4 a.u.)
+     of the slab along z.
+
+   - Components of the total stress; sigma_xy, sigma_yz,
+     sigma_zz, sigma_zy, and sigma_zx are meaningless
+     because ESM stress routines calculate only
+     components of stress; sigma_xx, sigma_xy, sigma_yx,
+     and sigma_yy.
+
+   - In case of calculation='vc-relax', use
+     cell_dofree='2Dxy' or other parameters so that
+     c-vector along z-axis should not be moved.
+
+See esm_bc, esm_efield, esm_w, esm_nfit.
+            
+
+
+
'2D' :
+
+        Truncation of the Coulomb interaction in the z direction
+        for structures periodic in the x-y plane. Total energy,
+        forces and stresses are computed in a two-dimensional framework.
+        Linear-response calculations () done on top of a self-consistent
+        calculation with this flag will automatically be performed in
+        the 2D framework as well. Please refer to:
+        Sohier, T., Calandra, M., & Mauri, F. (2017), Density functional
+        perturbation theory for gated two-dimensional heterostructures:
+        Theoretical developments and application to flexural phonons in graphene.
+        Physical Review B, 96(7), 75448. https://doi.org/10.1103/PhysRevB.96.075448
+NB:
+           - The length of the unit-cell along the z direction should
+             be larger than twice the thickness of the 2D material
+             (including electrons). A reasonable estimate for a
+             layer's thickness could be the interlayer distance in the
+             corresponding layered bulk material. Otherwise,
+             the atomic thickness + 10 bohr should be a safe estimate.
+             There is also a lower limit of 20 bohr imposed by the cutoff
+             radius used to read pseudopotentials (see read_pseudo.f90 in Modules).
+
+           - As for ESM above, only in-plane stresses make sense and one
+             should use cell_dofree='2Dxy' in a vc-relax calculation.
+            
+
+
+ + + + + + + + + + + + + + + +
esm_bcCHARACTER
Default: 'pbc' +
See:assume_isolated
+
+If assume_isolated = 'esm', determines the boundary
+conditions used for either side of the slab.
+
+Currently available choices:
+            
+
+
'pbc' :
+
 (default): regular periodic calculation (no ESM).
+            
+
+
+
'bc1' :
+
 Vacuum-slab-vacuum (open boundary conditions).
+            
+
+
+
'bc2' :
+
+Metal-slab-metal (dual electrode configuration).
+See also esm_efield.
+            
+
+
+
'bc3' :
+
 Vacuum-slab-metal
+            
+
+
+ + + + + + + + + + + + + + + +
esm_wREAL
Default: 0.d0 +
See:assume_isolated
+If assume_isolated = 'esm', determines the position offset
+[in a.u.] of the start of the effective screening region,
+measured relative to the cell edge. (ESM region begins at
+z = +/- [L_z/2 + esm_w] ).
+         
+ + + + + + + + + + + + + + + +
esm_efieldREAL
Default: 0.d0 +
See:assume_isolated
+If assume_isolated = 'esm' and esm_bc = 'bc2', gives the
+magnitude of the electric field [Ry/a.u.] to be applied
+between semi-infinite ESM electrodes.
+         
+ + + + + + + + + + + + + + + +
esm_nfitINTEGER
Default: 4 +
See:assume_isolated
+If assume_isolated = 'esm', gives the number of z-grid points
+for the polynomial fit along the cell edge.
+         
+ + + + + + + + + + + + + + + +
fcp_muREAL
Default: 0.d0 +
See:lfcpopt
+If lfcpopt = .TRUE., gives the target Fermi energy [Ry]. One can start
+with appropriate total charge of the system by giving 'tot_charge'.
+         
+ + + + + + + + + + + + + + + +
vdw_corrCHARACTER
Default: 'none' +
See: +london_s6, london_rcut, london_c6, london_rvdw, dftd3_version, dftd3_threebody, ts_vdw_econv_thr, ts_vdw_isolated, xdm_a1, xdm_a2 +
+
+Type of Van der Waals correction. Allowed values:
+            
+
+
'grimme-d2', 'Grimme-D2', 'DFT-D', 'dft-d', 'grimme-d3', 'Grimme-D3', 'DFT-D3', 'dft-d3' :
+
+Semiempirical Grimme's DFT-D2 and DFT-D3.
+Optional variables for D2: london_s6, london_rcut, london_c6, london_rvdw,
+S. Grimme, J. Comp. Chem. 27, 1787 (2006), doi:10.1002/jcc.20495
+V. Barone et al., J. Comp. Chem. 30, 934 (2009), doi:10.1002/jcc.21112
+Optional variables for D3: dftd3_version, dftd3_threebody,
+S. Grimme et al, J. Chem. Phys 132, 154104 (2010)
+            
+
+
+
'TS', 'ts', 'ts-vdw', 'ts-vdW', 'tkatchenko-scheffler' :
+
+Tkatchenko-Scheffler dispersion corrections with first-principle derived
+C6 coefficients.
+Optional variables: ts_vdw_econv_thr, ts_vdw_isolated
+See A. Tkatchenko and M. Scheffler, PRL 102, 073005 (2009).
+            
+
+
+
'XDM', 'xdm' :
+
+Exchange-hole dipole-moment model. Optional variables: xdm_a1, xdm_a2
+A. D. Becke et al., J. Chem. Phys. 127, 154108 (2007), doi:10.1063/1.2795701
+A. Otero de la Roza et al., J. Chem. Phys. 136, 174109 (2012),
+doi:10.1063/1.4705760
+            
+
+
 Note that non-local functionals (eg vdw-DF) are NOT specified here but in input_dft
+            
+
+ + + + + + + + + + + + + + +
londonLOGICAL
Default: .FALSE. +
Status: +OBSOLESCENT, same as vdw_corr='DFT-D' +
+ + + + + + + + + + + +
london_s6REAL
Default: 0.75 +
+global scaling parameter for DFT-D. Default is good for PBE.
+         
+ + + + + + + + + + +
london_c6(i), i=1,ntypREAL
Default: standard Grimme-D2 values +
+atomic C6 coefficient of each atom type
+
+( if not specified default values from S. Grimme, J. Comp. Chem. 27, 1787 (2006),
+  doi:10.1002/jcc.20