ABINIT, developper input variables:

List and description.


This document lists and provides the description of the name (keywords) of the input variables "for developpers" to be used in the main input file of the abinit code.

The new user is advised to read first the new user's guide, before reading the present file. It will be easier to discover the present file with the help of the tutorial.

When the user is sufficiently familiarized with ABINIT, the reading of the ~abinit/doc/users/tuning file might be useful. For response-function calculations using abinit, please read the response function help file

Copyright (C) 1998-2014 ABINIT group (DCA, XG, RC)
This file is distributed under the terms of the GNU General Public License, see ~abinit/COPYING or http://www.gnu.org/copyleft/gpl.txt .
For the initials of contributors, see ~abinit/doc/developers/contributors.txt .

Content of the file : alphabetical list of developper variables.


A. accesswff  
B. builtintest  
C. cgtyphf  
D. densty   dmft_dc   dmft_iter   dmft_mxsf   dmft_nwli   dmft_nwlo   dmft_read_occnd   dmft_rslf   dmft_solv   dmft_tollc   dmftbandf   dmftbandi   dmftcheck   dmftctqmc_check   dmftctqmc_correl   dmftctqmc_grnns   dmftctqmc_meas   dmftctqmc_mrka   dmftctqmc_mov   dmftctqmc_order   dmftctqmc_gmove   dmftqmc_l   dmftqmc_n   dmftqmc_seed   dmftqmc_therm  
E.
effmass   eshift   exchmix   exchn2n3d  
F. fermie_nest   fftalg   fftcache   fft_opt_lob   freqsusin   freqsuslo  
G. getgam_eig2nkq   getwfkfine  
H.
I. idyson   ikhxc   intexact   intxc   iprcch   iprcfc   irandom   irdvdw   irdwfkfine   isecur   istatr   istatshft   istwfk  
J.
K.
L. ldgapp   lotf_classic   lotf_nitex   lotf_nneigx   lotf_version  
M. macro_uj   maxnsym   mem_test   mqgrid  
N. nbandsus   nbdblock   nctime   ndyson   nloalg   nnsclo   nnsclohf   normpawu   noseft   noseinert   npulayit   nscforder  
O. optforces   optfreqsus   optnlxccc   ortalg  
P. papiopt   pawprt_b   pawprt_k   pawujat   pawujrad   pawujv   prepscphon   prtbltztrp   prtcif   prtdipole   prtnest   prtposcar   prtvdw  
Q.
R. recefermi   recgratio   recnpath   recnrec   recptrott   recrcut   rectesteg   rectolden  
S. suskxcrs   symmorphi  
T. tfkinfunc   tolrde  
U. use_nonscf_gkk   useria, userib, useric, userid, userie   userra, userrb, userrc, userrd, userre   useylm  
V. vdw_nfrag   vdw_tol   vdw_typfrag   vdw_df_acutmin   vdw_df_aratio   vdw_df_damax   vdw_df_damin   vdw_df_dcut   vdw_df_dratio   vdw_df_dsoft   vdw_df_gcut   vdw_df_ndpts   vdw_df_ngpts   vdw_df_nqpts   vdw_df_nrpts   vdw_df_nsmooth   vdw_df_phisoft   vdw_df_qcut   vdw_df_qratio   vdw_df_rcut   vdw_df_rsoft   vdw_df_tolerance   vdw_df_tweaks   vdw_df_zab   vdw_supercell   vdw_xc  
W. wfoptalg  
X. xc_tb09_c  
Y.
Z.





accesswff
Mnemonics: ACCESS to WaveFunction Files
Characteristic: DEVELOP
Variable type: integer parameter
Default is 0. However, if mpi_io is available, accesswff will be set to 1 for the datasets for which paral_kgb=1, while an explicit mention of accesswff in the input file will override this intermediate default.

Governs the method of access to the internal wavefunction files. Relevant only for the wavefunctions files for which the corresponding "mkmem"-type variable is zero, that is, for the wavefunctions that are not kept in core memory.


In case accesswff=1, note the following. MPI/IO routines might be much more efficient than usual Fortran IO routines in the case of a large number of processors, with a pool of disks attached globally to the processors, but not one disk attached to each processor. For a cluster of workstations, where each processor has his own temporaries, the use of accesswff=0 might be perfectly allright. This option is useful only if one is using the band-FFT parallelism. MPI/IO routines are available in the MPI-2 library, but usually not in the MPI-1 library. So, perhaps you cannot use accesswff=1.
In case accesswff=3, note that not only the wavefunctions will be written using the ETSF_IO routines, but also, the same input variable governs the writing of the density and potential, that can also be written using ETSF_IO routines. In order to use accesswff=3, you need to have the plug-in library ETSF_IO working (see the documentation of the build system). References :




Go to the top | Complete list of input variables

builtintest

Mnemonics: BUIT-IN TEST number
Characteristic: DEVELOP
Variable type: integer
Default is 0

When builtintest is non-zero, the input file is a special one, that runs very quickly, and that is accompanied by a specific analysis by ABINIT, at the end of the run, against a hard-coded value of total energy (and possibly stresses, forces ...). The echo of the analysis is done in the STATUS file. In particular, such built-in tests can be used to check quickly whether ABINIT fallbacks have been connected or not (bigdft, etsf_io, libxc, wannier90). At present, builtintest=1 ... 7 are allowed. See more information in tests/built-in/README .



Go to the top | Complete list of input variables



cgtyphf
Mnemonics: Type of Conjugate Gradient used for Fock exact exchange
Characteristic: DEVELOP
Variable type: integer parameter
Default is 0 if usefock <=0, and 2 usefock <=1.

Gives how is calculated Fock exact exchange contribution in the conjugate gradient, in the SCF case.
The Default value is 0 when usefock <=0. Default value is 2 when usefock <=1 and corresponds to calculate the Fock exact exchange contribution each time in the conjugate gradient. The value 1 corresponds to calculate the Fock exact exchange contribution only for the initial guess (not for the gradient direction) in the conjugate gradient




Go to the top | Complete list of input variables



densty

Mnemonics: initial DENSity for each TYpe of atom
Characteristic: DEVELOP
Variable type: real array densty(ntypat)
Default is 0.0d0.

Gives a rough description of the initial GS density, for each type of atom. This value is only used to create the first exchange and correlation potential, and is not used anymore afterwards. For the time being, it corresponds to an average radius (a.u.) of the density, and is used to generate a gaussian density. If set to 0.0d0, an optimized value is used.
No meaning for RF calculations.




Go to the top | Complete list of input variables



dmft_dc
Mnemonics: Dynamical Mean Fied Theory: Double Counting
Characteristic: DEVELOP
Variable type: integer
Default is 1


Value of double counting used for DMFT. Only value 1 is activated for the moment and is the FLL double counting.




Go to the top | Complete list of input variables



dmft_iter
Mnemonics: Dynamical Mean Fied Theory: number of ITERation
Characteristic: DEVELOP
Variable type: integer
Default is 0


Number of iterations for the DMFT inner loop.




Go to the top | Complete list of input variables



dmft_mxsf
Mnemonics: Dynamical Mean Fied Theory: MiXing parameter for the SelF energy
Characteristic: DEVELOP
Variable type: real
Default is 0.3


Mixing parameter for the simple mixing of the self-energy.




Go to the top | Complete list of input variables



dmft_nwli
Mnemonics: Dynamical Mean Fied Theory: Number of frequency omega (W) in the LInear mesh
Characteristic: DEVELOP
Variable type: integer
Default is 0


Number of Matsubara frequencies (linear mesh)




Go to the top | Complete list of input variables



dmft_nwlo
Mnemonics: Dynamical Mean Fied Theory: Number of frequency omega (W) in the log mesh
Characteristic: DEVELOP
Variable type: integer
Default is 0


Number of frequencies in the log mesh.




Go to the top | Complete list of input variables



dmft_read_occnd
Mnemonics: Dynamical Mean Fied Theory: Read Occupations (Non Diagonal)
Characteristic: DEVELOP
Variable type: integer
Default is 0


Flag to read/write Occupations as computed in DMFT. This flag is useful to restart a DFT+DMFT calculation with self-consistency over electronic density. The occupations are written each time a DMFT loop is finished. So if the calculations stops because the time limit is reached, this option offers the possibility to restart the self-consistent loop over density at the point where it stopped.

An alternative and more simple way to restart a DFT+DMFT calculation is to use the density file (obtained with prtden=1 or prtden=-1)




Go to the top | Complete list of input variables

dmft_rslf
Mnemonics: Dynamical Mean Fied Theory: Read SeLF energy
Characteristic: DEVELOP
Variable type: integer
Default is 0


Flag to read/write Self-Energy. If put to one, self-energy is written and read at each LDA iteration.




Go to the top | Complete list of input variables



dmft_solv
Mnemonics: Dynamical Mean Fied Theory: choice of SOLVer
Characteristic: DEVELOP
Variable type: real
Default is 0


Choice of solver for the Impurity model.


WARNING: CT-QMC should be used for correlated metals. Even if correlated (Mott) insulators, QMC is expected to be much more precise: Hubbard one is an approximation !
See the usefull variables for CT-QMC solver : dmftctqmc_check, dmftctqmc_correl, dmftctqmc_gmove, dmftctqmc_grnns, dmftctqmc_meas, dmftctqmc_mrka, dmftctqmc_mov, dmftctqmc_order, dmftqmc_l, dmftqmc_n, dmftqmc_seed, dmftqmc_therm




Go to the top | Complete list of input variables

dmft_t2g
Mnemonics: Dynamical Mean Fied Theory: t2g orbitals
Characteristic: DEVELOP
Variable type: integer
Default is 0


Can be set to 1 only if in cubic symetric. It enable to carry a DFT+DMFT calculations only on t2g orbitals.




Go to the top | Complete list of input variables



dmft_tollc
Mnemonics: Dynamical Mean Fied Theory: Tolerance on Local Charge for convergency of the DMFT loop
Characteristic: DEVELOP
Variable type: real
Default is 0.00001


Tolerance for the variation of Local Charge during iterations of the DMFT Loop.
The default value is good for fast calculations. However, to obtain good convergency of the DFT Loop, the DMFT Loop needs a better convergence criterion.




Go to the top | Complete list of input variables



dmftbandf
dmftbandi
Mnemonics: (to be described)
Characteristic: DEVELOP
Variable type: (to be described)
Default is 0


dmftbandi and dmftbandf are the first and last bands taken into account in the Projected Local Orbitals scheme of LDA+DMFT. They thus define the energy window used to define Wannier Functions. (see Amadon, B., Lechermann, F., Georges, A., Jollet, F., Wehling, T. O., and Lichtenstein, A. I. Phys. Rev. B 77(20), (2008).)




Go to the top | Complete list of input variables



dmftcheck
Mnemonics: Dynamical Mean Fied Theory: CHECKs
Characteristic: DEVELOP
Variable type: integer
Default is 0


(Introduced by B. Amadon, v6.1.0)




Go to the top | Complete list of input variables



dmftctqmc_check
Mnemonics: Dynamical Mean Fied Theory: Continuous Time Quantum Monte Carlo check
Characteristic: DEVELOP
Variable type: integer
Default is 0


Check the fast calculations during the Monte Carlo simulation with very slow but robust methods. Should only be used for debugging.





Go to the top | Complete list of input variables

dmftctqmc_correl
Mnemonics: Dynamical Mean Fied Theory: Continuous Time Quantum Monte Carlo correlations
Characteristic: DEVELOP
Variable type: integer
Default is 0


Flag to compute statistics about segments and anti-segments during the simulation. Slow down the simulation.





Go to the top | Complete list of input variables

dmftctqmc_gmove
Mnemonics: Dynamical Mean Fied Theory: Continuous Time Quantum Monte Carlo global moves
Characteristic: DEVELOP
Variable type: integer
Default is 0


Default is no global moves. Then the value of this variables is the modulo used to try a global move. A value of 5000 means that a global move is tried every 5000 Monte Carlo sweep.




Go to the top | Complete list of input variables



dmftctqmc_grnns
Mnemonics: Dynamical Mean Fied Theory: Continuous Time Quantum Monte Carlo greens
Characteristic: DEVELOP
Variable type: integer
Default is 0


Compute the statistical noise for each time slice of each green function. This is a good approximation only if there is enough Monte Carlo sweeps per cpu.





Go to the top | Complete list of input variables

dmftctqmc_meas
Mnemonics: Dynamical Mean Fied Theory: Continuous Time Quantum Monte Carlo measurements
Characteristic: DEVELOP
Variable type: integer
Default is 1


The modulo used to measure the interaction energy and the number of electrons. Example : 2 means the measure is perform every two sweeps.




Go to the top | Complete list of input variables



dmftctqmc_mrka
Mnemonics: Dynamical Mean Fied Theory: Continuous Time Quantum Monte Carlo markov analysis
Characteristic: DEVELOP
Variable type: integer
Default is 0


Measure the time evolution of the number of electrons for each orbital and perform a fourier transform. The result can be plot using the "Markov_id.dat" file





Go to the top | Complete list of input variables

dmftctqmc_mov
Mnemonics: Dynamical Mean Fied Theory: Continuous Time Quantum Monte Carlo movie
Characteristic: DEVELOP
Variable type: integer
Default is 0


Print a latex file per cpu displaying the full simulation. This option should only be use with very small number (&st;1000) of Monte Carlo sweeps since it requires a lot of I/O band width.





Go to the top | Complete list of input variables

dmftctqmc_order
Mnemonics: Dynamical Mean Fied Theory: Continuous Time Quantum Monte Carlo perturbation order
Characteristic: DEVELOP
Variable type: integer
Default is 0


Print a file containing the statistic distribution of the number of segments per orbital. The maximal order taken into account is this value : 50 means that we avec the statistic distribution from 0 to 50 segments. The result is written in the "Perturbation.dat" file.




Go to the top | Complete list of input variables



dmftqmc_l
Mnemonics: Dynamical Mean Fied Theory: Quantum Monte Carlo time slices
Characteristic: DEVELOP
Variable type: integer
Default is 0


Number of time slices used to represent the time green function. This value should be carefully chosen according to Niquist frequency and the tsmear value.




Go to the top | Complete list of input variables



dmftqmc_n
Mnemonics: Dynamical Mean Fied Theory: Quantum Monte Carlo sweeps
Characteristic: DEVELOP
Variable type: double precision
Default is 0.d0


Number of Monte Carlo sweeps. Should be at least 10^6.




Go to the top | Complete list of input variables



dmftqmc_seed
Mnemonics: Dynamical Mean Fied Theory: Quantum Monte Carlo seed
Characteristic: DEVELOP
Variable type: integer
Default is jdtset


Seed to initilize the random number generator.
Should not be relevant except for testing purpose.
NOTE : In the CT-QMC (dmft_solv=5) is used on many CPUs, each CPU initilizes its random number generator with dmftqmc_seed+rank where rank is the rank of the cpu in the MPI communicator.




Go to the top | Complete list of input variables



dmftqmc_therm
Mnemonics: Dynamical Mean Fied Theory: Quantum Monte Carlo thermalization
Characteristic: DEVELOP
Variable type: integer
Default is 1000


Number of Monte Carlo sweeps for the thermalization




Go to the top | Complete list of input variables



effmass
Mnemonics: EFFective MASS
Characteristic: DEVELOP
Variable type: real number
Default is one.


This parameter allows to change the electron mass, with respect to its experimental value.




Go to the top | Complete list of input variables



eshift
Mnemonics: Energy SHIFT
Characteristic: DEVELOP, ENERGY
Variable type: real number
Default is zero.

Used only if wfoptalg=3 . eshift gives the shift of the energy used in the shifted Hamiltonian squared. The algorithm will determine eigenvalues and eigenvectors centered on eshift.
Can be specified in Ha (the default), Ry, eV or Kelvin, since ecut has the 'ENERGY' characteristics. (1 Ha=27.2113845 eV)




Go to the top | Complete list of input variables



exchmix

Mnemonics: EXCHange MIXing
Characteristic: DEVELOP
Variable type: real number
Default is 0.25

exchmix allows to tune the ratio of exact exchange when useexexch is used. The default value of 0.25 corresponds to PBE0.



Go to the top | Complete list of input variables



exchn2n3d

Mnemonics: EXCHange N2 and N3 Dimensions
Characteristic: DEVELOP
Variable type: integer parameter
Default is 0.

If exchn2n3d is 1, the internal representation of the FFT arrays in reciprocal space will be array(n1,n3,n2), where the second and third dimensions have been switched. This is to allow to be coherent with the exchn2n3d=4xx FFT treatment.



Go to the top | Complete list of input variables



fermie_nest
Mnemonics: FERMI Energy for printing the NESTing function
Characteristic:
Variable type: real parameter
Default is 0

This input variable is only effective when prtnest=1. The energy is relative to the calculated fermi energy.



Go to the top | Complete list of input variables



fftalg
Mnemonics: Fast Fourier Transform ALGorithm
Characteristic: DEVELOP
Variable type: integer parameter
Default is 112, except for VPP Fujitsu, for which the Default is 111, and for NEC, for which the default is 200. Moreover, if the FFTW3 library has been enabled, the default becomes 312, EXCEPT if usedmft is non-zero for at least one dataset.
Finally, If paral_kgb=1, fftalg is automatically set to 401, with the hightest precedence.

This keyword is irrelevant when Fast Fourier Transforms are done using Graphics Processing Units (GPU), i.e. when use_gpu_cuda=1 (in that case, it is ignored).

Allows to choose the algorithm for Fast Fourier Transforms. These have to be used when applied to wavefunctions (routine fourwf.f), as well as when applied to densities and potentials (routine fourdp.f). Presently, it is the concatenation of three digits, labelled (A), (B) and (C).

The first digit (A) is to be chosen among 1, 2, 3 and 4 :

The second digit (B) is related to fourdp.f : The third digit (C) is related to fourwf.f : Internal representation as ngfft(7).




Go to the top | Complete list of input variables

fftcache

Mnemonics: Fast Fourier Transform CACHE size
Characteristic: DEVELOP
Variable type: integer parameter
Default is 16. Not yet machine-dependent.

Gives the cache size of the current machine, in Kbytes.
Internal representation as ngfft(8).




Go to the top | Complete list of input variables



fft_opt_lob
Mnemonics: Fast Fourier Transform parallelisation - OPTion for LOB algorithm
Characteristic: DEVELOP
Variable type: integer
Default is 1. If paral_kgb=1, default is 2.

Option for LOB algorithm, used in the band/FFT/k-point parallelisation, see npband, npfft, npkpt, and paral_kgb.





Go to the top | Complete list of input variables

freqsusin

Mnemonics: FREQuencies for the SUSceptibility matrix : the INcrement
Characteristic: DEVELOP
Variable type: real parameter, positive or zero
Default is 0.0

Define, with freqsuslo, the series of imaginary frequencies at which the susceptibility matrix should be computed.
This is still under development.




Go to the top | Complete list of input variables



freqsuslo

Mnemonics: FREQuencies for the SUSceptibility matrix : the LOwest frequency
Characteristic: DEVELOP
Variable type: real parameter, positive or zero
Default is 0.0

Define, with freqsusin, the series of imaginary frequencies at which the susceptibility matrix should be computed.
This is still under development.




Go to the top | Complete list of input variables



getgam_eig2nkq
Mnemonics: GET the GAMma phonon data EIG2NKQ from dataset
Characteristic:
Variable type: integer parameter
Default is 0.


Only relevant if ieig2rf is non-zero, that is, if the user is performing performing second-order eigenvalue calcul ations using response-functions. Also, relevant only for non-zero wavevectors qpt

From the electron-phonon matrix elements at some wavevector only, it is not possible to determine the Debye-Wallercontribution : one has to know also the q=Gamma electron-phonon matrix elements.
The variable getgam_eig2nkq allows to transmit the information about the second-order derivatives of the eigenvalues for q=Gamma from the dataset where the calculation at Gamma was done, to the datasets for other wavevectors.




Go to the top | Complete list of input variables



getwfkfine
Mnemonics: GET the fine grid wavefunctions from _WFK file
Characteristic:
Variable type: integer parameter
Default is 0.
Eventually used when ndtset>0 (in the multi-dataset mode), to indicate starting wavefunctions, as an alternative to irdwfkfine. One should first read the explanations given for these latter variables.
The getwfkfine variables is typically used to chain the calculations in the multi-dataset mode, since they describe from which dataset the OUTPUT wavefunctions are to be taken, as INPUT wavefunctions of the present dataset.
If getwfkfine==0, no use of previously computed output wavefunction file appended with _DSx_WFK is done.
If getwfkfine is positive, its value gives the index of the dataset for which the output wavefunction file appended with _WFK must be used.
If getwfkfine is -1, the output wf file with _WFK of the previous dataset must be taken, which is a frequently occuring case.
If getwfkfine is a negative number, it indicates the number of datasets to go backward to find the needed wavefunction file. In this case, if one refers to a non existent data set (prior to the first), the wavefunctions are not initialised from a disk file, so that it is as if getwfkfine=0 for that initialisation. Thanks to this rule, the use of getwfkfine -1 is rather straightforward : except for the first wavefunctions, that are not initialized by reading a disk file, the output wavefunction of one dataset is input of the next one.
NOTE : a negative value of a "get" variable indicates the number of datasets to go backwards; it is not the number to be subtracted from the current dataset to find the proper dataset. As an example :
ndtset 3   jdtset 1 2 4  getXXX -1
refers to dataset 2 when dataset 4 is initialized. Response-function calculation : Bethe-Salpeter calculation : This variable is experimental. In development.




Go to the top | Complete list of input variables

idyson
Mnemonics: Integer giving the choice of method for the DYSON equation
Characteristic: DEVELOP
Variable type: integer parameter
Default is 1.

Choice for the method used to solve the Dyson equation in the calculation of the interacting susceptibility matrix or/and in the calculation of the ACFD exchange-correlation energy:





Go to the top | Complete list of input variables

ikhxc
Mnemonics: Integer option for KHXC = Hartree XC kernel
Characteristic:
Variable type: integer parameter
Default is 1.

Define the HXC kernel, in the cases for which it can be dissociated with the choice of the HXC functional given by ixc, namely the TD-DFT computation of excited states (iscf=-1), and the computation of the susceptibility matrix (for ACFD purposes). Options 2 to 6 are for the ACFD only.


For ACFD-ALDA, BPG and energy optimized kernels are highly experimental and not tested yet !!! For ACFD calculations, a cut-off density has been defined for the ALDA, BPG and energy optimized kernels : let rhomin = userre*rhomax (where rhomax is the maximum density in space) ; then the actual density used to calculate the local part of these kernels at point r is max(rho(r),rhomin.




Go to the top | Complete list of input variables

intexact
Mnemonics: INTegration using an EXACT scheme
Characteristic: DEVELOP
Variable type: integer parameter
Default is 0.

Relates to the ACFD xc functionals only. If intexact > 0, the integration over the coupling constant will be performed analytically in the RPA and in the two-electron PGG approximation for the ACFD exchange-correlation energy. Otherwise, the integration over the coupling constant will be performed numerically (also see ndyson and idyson. Note that the program will stop in intexact > 0 and ikhxc/=1 (RPA) or ikhxc/=3 (PGG, with two electrons)



Go to the top | Complete list of input variables



intxc
Mnemonics: INTerpolation for eXchange-Correlation
Characteristic: DEVELOP
Variable type: integer parameter
Default is 0.


For RF calculations only intxc=0 is allowed yet. Moreover, the GS preparation runs (giving the density file and zero-order wavefunctions) must be done with intxc=0

Prior to ABINITv2.3, the choice intxc=1 was favoured (it was the default), but the continuation of the development of the code lead to prefer the default intxc=0 . Indeed, the benefit of intxc=1 is rather small, while making it available for all cases is a non-negligible development effort. Other targets are prioritary... You will notice that many automatice tests use intxc=1. Please, do not follow this historical choice for your production runs.



Go to the top | Complete list of input variables



etsfgroups
Mnemonics: ETSF I/O additional GROUPS of variables
Characteristic: DEVELOP
Variable type: integer parameter
Default is 0.

NOTE : NOT USED AT PRESENT (v5.3.0)

This variable is a bit-wise combination of what will be written into / read from a special WFK/DEN/POT file. The contents of the file follow the Nanoquanta/ETSF file format specifications.

Please check the "etsf_io" module of the ETSF I/O library for possible values.





Go to the top | Complete list of input variables

etsfmain
Mnemonics: ETSF I/O MAIN variable
Characteristic: DEVELOP
Variable type: integer parameter
Default is 0.

NOTE : NOT USED AT PRESENT (v5.3.0)

This variable tells what will be written into / read from a special WFK/DEN/POT file. The contents of the file follow the Nanoquanta/ETSF file format specifications.

Please check the "etsf_io" module of the ETSF I/O library for possible values.





Go to the top | Complete list of input variables

iprcch

Mnemonics: Integer for PReConditioning of CHarge response
Characteristic: DEVELOP
Variable type: integer parameter
Default is 2.If ionmov=4 and iscf=5,iprcch is automatically put to 3. If paral_kgb=1, iprcch is automatically put to 6.

Used when iscf>0, to define:
- the way a change of density is derived from a change of atomic position,
- the way forces are corrected when the SCF cycle is not converged.

Supported values :

No meaning for RF calculations.

For the time being,
- the choice 3 must be used with ionmov=4 and iscf=5.
- the choices 4, 5 or 6 must be used when band-FFT parallelism is selected.
Otherwise, use the choice 2.

(*)Note concerning the use of iprcch=4 or 6 (correction of forces):
The force on the atom located at R is corrected by the addition of the following term:
F_residual=Int[dr.V_residual.dRho_atomic/dR], where Rho_atomic is an atomic (spherical) density.
- When such an atomic density (Rho_atomic) is found in the pseudopotential or PAW file, it is used. If not, a gaussian density (defined by densty parameter) is used.
- When SCF mixing is done on the density (iscf>=10), the potential residual (V_residual) is obtained from the density residual with the first order formula V_residual=dV/drho.Rho_residual and uses the exchange-correlation kernel dVxc/drho=Kxc which computation is time-consuming for GGA functionals. By default the LDA exchange-correlation kernel is used (even for GGA, for which it seems to give a reasonable accuracy). Using the exact GGA exchange correlation kernel is always possible by giving a negative value to iprcch.

(**)Note concerning the use of iprcch=5 or 6 (density prediction):
The algorithm is described in Computer Physics Communications 118 (1999) 31-33. It uses an atomic (spherical) density. When such an atomic density is found in the pseudopotential or PAW file, it is used. If not, a gaussian density (defined by densty parameter) is used.
Also note that, to be efficient, this algorithm requires a minimum convergency of the SCF cycle; Typically, vres2 (or nres2) has to be small enough (10-4...10-5).




Go to the top | Complete list of input variables

iprcfc
Mnemonics: Integer for PReConditioner of Force Constants
Characteristic: DEVELOP
Variable type: integer parameter
Default is 0.

Used when iscf>0, to define the SCF preconditioning scheme. Potential-based preconditioning schemes for the SCF loop are still under development.
The present parameter (force constant part) describes the way a change of force is derived from a change of atomic position.
Supported values :

No meaning for RF calculations.




Go to the top | Complete list of input variables

irandom
Mnemonics: Integer for the choice of the RANDOM number generator
Characteristic: DEVELOP
Variable type: integer parameter
Default is 3.


For the time being, only used when imgmov=9 (Langevin Path-Integral Molecular Dynamics).
irandom defines the random number generator.

Supported values :

irandom=3 is strongly adviced when performing Molecular Dynamics restarts (avoids bias).




Go to the top | Complete list of input variables

irdwfkfine
Mnemonics: Integer that governs the ReaDing of the fine grid _WFK files
Characteristic:
Variable type: integer parameter
Default is 0.
Indicates eventual starting wavefunctions. As alternative, one can use the input variables getwfkfine.

Ground-state calculation : Response-function calculation : Bethe-Salpeter calculation : This variable is experimental. In development.




Go to the top | Complete list of input variables
irdvdw
Mnemonics: Integer that governs the ReaDing of _VDW files
Characteristic: DEVELOP
Variable type: integer parameter
Default is 0.

Used when vdw_xc>0, to read previously calculated vdW-DF variables.
Supported values:




Go to the top | Complete list of input variables

isecur
Mnemonics: Integer for level of SECURity choice
Characteristic: DEVELOP
Variable type: integer
Default is 0.

In the presently used algorithms, there is a compromise between speed and robustness, that can be tuned by using isecur.
If isecur =0, an extrapolation of out-of-line data is allowed, and might save one non-SCF calculation every two line minimisation when some stability conditions are fulfilled (since there are 2 non-SCF calculations per line minimisation, 1 out of 4 is saved)
Using isecur=1 or higher integers will raise gradually the threshold to make extrapolation.
Using isecur=-2 will allow to save 2 non-SCF calculations every three line minimisation, but this can make the algorithm unstable. Lower values of isecur allows for more (tentative) savings. In any case, there must be one non-SCF computation per line minimisation.
No meaning for RF calculations yet.




Go to the top | Complete list of input variables



istatr
Mnemonics: Integer for STATus file repetition Rate


istatshft
Mnemonics: Integer for STATus file SHiFT


Characteristic: DEVELOP, NO_MULTI
Variable type: integer parameter
Default is 49, and 149 for Cray T3E (slow I/Os).Values lower than 10 may not work on some machines. Default istatshft is 1.

Govern the rate of output of the status file. This status file is written when the number of the call to the status subroutine is equal to 'istatshft' modulo 'istatr', so that it is written once every 'istatr' call. There is also a writing for each of the 5 first calls, and the 10th call.



Go to the top | Complete list of input variables



istwfk
Mnemonics: Integer for choice of STorage of WaveFunction at each k point
Characteristic:
Variable type: integer array istwfk(nkpt)
Default is 0 for all k points for GS calculations. For RF calculations, the Default is not used : istwfk is forced to be 1 deep inside the code, for all k points. For spin-orbit calculations (nspinor=2), istwfk is also forced to be 1, for all k points.

Control the way the wavefunction for each k-point is stored inside ABINIT, in reciprocal space.
For the GS calculations, in the "cg" array containing the wavefunction coefficients, there is for each k-point and each band, a segment cg(1:2,1:npw). The 'full' number of plane wave is determined by ecut. However, if the k-point coordinates are build only from zeroes and halves (see list below), the use of time-reversal symmetry (that connects coefficients) has been implemented, in order to use real-to-complex FFTs (see fftalg), and to treat explicitly only half of the number of plane waves (this being used as 'npw').
For the RF calculations, there is not only the "cg" array, but also the "cgq" and "cg1" arrays. For the time-reversal symmetry to decrease the number of plane waves of these arrays, the q vector MUST be (0 0 0). Then, for each k point, the same rule as for the RF can be applied.
WARNING (991018) : for the time being, the time-reversal symmetry cannot be used in the RF calculations.

Note that the input variable "mkmem" also controls the wavefunction storage, but at the level of core memory versus disk space.




Go to the top | Complete list of input variables

ldgapp
Mnemonics: Lein-Dobson-Gross approximation
Characteristic: DEVELOP
Variable type: integer parameter
Default is 0.

Concern only the ACFD computation of the correlation energy (optdriver=3).
If ldgapp > 0, the Lein, Dobson and Gross first-order approximation to the correlation energy is also computed during the ACFD run. [See Lein, Dobson and Gross, J. Comput. Chem. 20,12 (1999)]. This is only implemented for the RPA, for the PGG kernel and for the linear energy optimized kernel at the present time.




Go to the top | Complete list of input variables



lotf_classic

Mnemonics: LOTF classic model for Glue model
Characteristic: DEVELOP
Variable type: integer parameter
Default is 5.

Glue model used in LOTF.
For the moment it is imposed to be 5.




Go to the top | Complete list of input variables



lotf_nitex

Mnemonics: LOTF number of iterations
Characteristic: DEVELOP
Variable type: integer parameter
Default is 10.

Set the number of Molecular Dynamics iterations which are computed by LOTF.



Go to the top | Complete list of input variables



lotf_nneigx

Mnemonics: LOTF max number of neighbours
Characteristic: DEVELOP
Variable type: integer parameter
Default is 5.

Set the max number of Neighbours used in the LOTF method.
For the moment it is imposed to be 40.




Go to the top | Complete list of input variables



lotf_version

Mnemonics: LOTF version of MD algorithm
Characteristic: DEVELOP
Variable type: integer parameter
Default is 2.

Set the MD algorithm in the LOTF method.
For the moment it is imposed to be 2.




Go to the top | Complete list of input variables



macro_uj
Mnemonics: Macro variable that activates the determination of the U and J parameter (for the PAW+U calculations)
Characteristic: DEVELOP
Variable type: integer parameter
Default is 0.

Sets proper input values for the determination of U and J i.e. for pawujat (first atom treated with PAW+U), irdwfk (=1), tolvrs (=10^(-8)), nstep (=255), diemix (=0.45), atvshift (pawujat) pawujv). Do not overwrite these variables manually unless you know what you do.

Determination of U and J can be done only if the symmetry of the atomic arrangement is reduced and the atom pawujat is not connected to any other atom by symmetry relations (either input reduced symmetries manually, define concerned atom as a separate atomic species or shift concerned atom from ideal postion).




Go to the top | Complete list of input variables

maxnsym
Mnemonics: MAXimum Number of SYMetries
Characteristic: DEVELOP
Variable type: integer parameter
Default is 384.

Gives the maximum number of spatial symetries allowed in the memory.
The default value is sufficient for most applications; it has to be increase in the case of the use of a supercell (unit cell identically repeated).




Go to the top | Complete list of input variables



mem_test
Mnemonics: MEMory TEST
Characteristic: DEVELOP
Variable type: integer parameter
Default is 1.

This variable controls the memory test done in the memana routine. Possible values:





Go to the top | Complete list of input variables

mqgrid
Mnemonics: Maximum number of Q-space GRID points for pseudopotentials
Characteristic: DEVELOP
Variable type: integer parameter
Default is 3001.

Govern the size of the one-dimensional information related to pseudopotentials, in reciprocal space : potentials, or projector functions.



Go to the top | Complete list of input variables



nbandsus
Mnemonics: Number of BANDs to compute the SUSceptibility
Characteristic:
Variable type: integer parameter
Default is nband.

Number of bands to be used in the calculation of the susceptibility matrix (ACFD only).



Go to the top | Complete list of input variables



nbdblock
Mnemonics: Number of BanDs in a BLOCK
Characteristic: DEVELOP
Variable type: integer parameter
Default is 1

In case of non-standard, blocked algorithms for the optimization of the wavefunctions (that is, if wfoptalg=4):





Go to the top | Complete list of input variables

nctime
Mnemonics: NetCdf TIME between output of molecular dynamics informations
Characteristic: DEVELOP
Variable type: integer parameter
Default is 0

When nctime is non-zero, the molecular dynamics information is output in NetCDF format, every nctime time step. Here is the content of an example file :

netcdf md32.outH_moldyn1 {
dimensions:
        time = UNLIMITED ; // (11 currently)
        DimTensor = 6 ;
        DimCoord = 3 ;
        NbAtoms = 32 ;
        DimVector = 3 ;
        DimScalar = 1 ;
variables:
        double E_pot(time) ;
                E_pot:units = "hartree" ;
        double E_kin(time) ;
                E_kin:units = "hartree" ;
        double Stress(time, DimTensor) ;
                Stress:units = "hartree/Bohr^3" ;
        double Position(time, DimCoord, NbAtoms) ;
                Position:units = "Bohr" ;
        double Celerity(time, DimCoord, NbAtoms) ;
                Celerity:units = "Bohr/(atomic time unit)" ;
        double PrimitiveVector1(DimVector) ;
        double PrimitiveVector2(DimVector) ;
        double PrimitiveVector3(DimVector) ;
        double Cell_Volume(DimScalar) ;
                Cell_Volume:units = "Bohr^3" ;
}




Go to the top | Complete list of input variables

ndyson
Mnemonics: Number of points to be added for the solution of the DYSON equation
Characteristic:
Variable type: integer parameter
Default is -1.

Number of points to be added to lambda=0 and lambda=1 (that are always calculated for the integration ober the coupling constant lambda in the ACFD calculation of the exchange-correlation energy.





Go to the top | Complete list of input variables

nfreqsus
Mnemonics: Number of FREQuencies for the SUSceptibility matrix
Characteristic: DEVELOP
Variable type: integer parameter
Default is 0

If 0, no computation of frequency-dependent susceptibility matrix. If 1 or larger, will read freqsuslo and freqsusin to define the frequencies (1 is currently the only value allowed)



Go to the top | Complete list of input variables



nloalg
Mnemonics: Non Local ALGorithm
Characteristic: DEVELOP
Variable type: integer variable
Default is 4 (norm-conserving psps) or 14 (PAW), except for the NEC where it is 2 (or 12).

Allows to choose the algorithm for non-local operator application. On super-scalar architectures, the Default nloalg=4/14 is the best, but you can save memory by using nloalg=-4.
More detailed explanations:

Units figure of nloalg:
- nloalg=?2 : Should be efficient on vector machines. It is indeed the fastest algorithm for the NEC, but actual tests on Fujitsu machine did not gave better performances than the other options.
- nloalg=?3 : same as nloalg==2, but the loop order is inverted.
- nloalg=?4 : same as nloalg==3, but maximal use of registers has been coded. This should be especially efficient on scalar and super-scalar machines. This has been confirmed by tests.

Tens figure of nloalg:
- nloalg<10 : (k+G) vectors are not precomputed, in order to save memory space.
- nloalg>=10 : (k+G) vectors are precomputed, once per k-point.

Sign of nloalg:
Negative values of nloalg correspond positive ones, where the phase precomputation has been suppressed, in order to save memory space: an array double precision :: ph3d(2,npw,natom) is saved (typically half the space needed for the wavefunctions at 1 k point - this corresponds to the silicon case). However, the computation of phases inside nonlop is somehow time-consuming.

Note: internally, nloalg is an array nloalg(1:5), that also allows to initialize several internal variables (not documented):
- nloalg(1)=mod(nloalg,10)
- jump=nloalg(2)
- mblkpw=nloalg(3)
- mincat=nloalg(4)
- nloalg(5)=nloalg/10
However, only nloalg(1)+10*nloalg(5) is read as an input variable.




Go to the top | Complete list of input variables

nnsclo
Mnemonics: Number of Non-Self Consistent LOops
Characteristic: DEVELOP
Variable type: integer parameter
Default is 0.

Gives the maximum number of non-self-consistent loops of nline line minimisations, in the SCF case (when iscf >0). In the case iscf <=0 , the number of non-self-consistent loops is determined by nstep.
The Default value of 0 correspond to make the two first fixed potential determinations of wavefunctions have 2 non-self consistent loops, and the next ones to have only 1 non-self consistent loop.




Go to the top | Complete list of input variables



nnsclohf
Mnemonics: Number of Non-Self Consistent LOops for Fock exact exchange
Characteristic: DEVELOP
Variable type: integer parameter
Default is 0 if usefock <=0, and 1 if usefock <=1.

Gives the maximum number of loops with non-self-consistent occupied states used to calculate Fock exact exchange, in the SCF case.
The Default value is 0 when usefock <=0. Default value is 1 when usefock <=1 and correspond to update occupied wavefunctions at each self-consistent loop.




Go to the top | Complete list of input variables



normpawu

Mnemonics: NORMalize atomic PAW+U projector
Characteristic: DEVELOP
Variable type: integer normpawu(ntypat)
Default is 0

Defines whether the atomic wave function (used as projectors in PAW+U) should be renormalized to 1 within PAW sphere.





Go to the top | Complete list of input variables

noseft
Mnemonics:
Characteristic:
Variable type:
Default is

TO BE DOCUMENTED



Go to the top | Complete list of input variables



noseinert
Mnemonics:
Characteristic:
Variable type:
Default is

TO BE DOCUMENTED



Go to the top | Complete list of input variables



npulayit
Mnemonics: Number of PULAY ITerations for SC mixing
Characteristic: DEVELOP
Variable type: integer parameter
Default is 7.

Needed only when iscf=7 or 17.

Gives the number of previous iterations involved in Pulay mixing (mixing during electronic SC iterations).



Go to the top | Complete list of input variables



nscforder
Mnemonics: SCaling Function ORDER
Characteristic:
Variable type:
Default is 16

This variable controls the order of used scaling functions when the Hartree potential is computed using the Poisson solver (see icoulomb imput variable). This variable is of seldom use since the default value is large enough. Nonetheless, possible values are 8, 14, 16, 20, 24, 30, 40, 50, 60, 100. Values greater than 20 are included in ABINIT for test purposes only.



Go to the top | Complete list of input variables



optforces
Mnemonics: OPTions for the calculation of FORCES
Characteristic: DEVELOP
Variable type: integer parameter
Default is 2. However, optforces is automatically set to 1 when toldff or tolrff are non-zero.

Allows to choose options for the calculation of forces.





Go to the top | Complete list of input variables

optfreqsus
Mnemonics: OPTion for the generation of FREQuency grids for the SUSceptibility
Characteristic: DEVELOP
Variable type: integer parameter
Default is 2

Selects the type of frequency grid that will be used to compute ACFD energies, as follows:

See also: nfreqsus, freqsuslo, freqsusin.





Go to the top | Complete list of input variables

optnlxccc
Mnemonics: OPTion for the calculation of Non-Linear eXchange-Correlation Core Correction
Characteristic: DEVELOP
Variable type: integer parameter
Default is 1.

Allows to choose options for the calculation of non-linear XC correction. At present, only relevant for the FHI type of pseudopotentials, with pspcod=6 .





Go to the top | Complete list of input variables

ortalg
Mnemonics: ORThogonalisation ALGorithm
Characteristic: DEVELOP
Variable type: integer parameter
Default is 2 when wfoptalg < 10,
-2 when wfoptalg >=10.

Allows to choose the algorithm for orthogonalisation.
Positive or zero values make two projections per line minimisation, one before the preconditioning, one after. This is the clean application of the band-by-band CG gradient for finding eigenfunctions.
Negative values make only one projection per line mininisation.
The orthogonalisation step is twice faster, but the convergence is less good. This actually calls to a better understanding of this effect.
ortalg=0, 1 or -1 is the conventional coding, actually identical to the one in versions prior to 1.7
ortalg=2 or -2 try to make better use of existing registers on the particular machine one is running.
More demanding use of registers is provided by ortalg=3 or -3, and so on.
The maximal value is presently 4 and -4.
Tests have shown that ortalg=2 or -2 is suitable for use on the available platforms.




Go to the top | Complete list of input variables



papiopt
Mnemonics: PAPI OPTion
Characteristic:
Variable type: integer
Default is 0

PAPI aims to provide the tool designer and application engineer with a consistent interface and methodology for use of the performance counter hardware found in most major microprocessors. PAPI enables software engineers to see, in near real time, the relation between software performance and processor events.
This option can be used only when ABINIT has been compiled with the --enable-papi configure option.
If papiopt=1, then PAPI counters are used instead of the usual time() routine. All the timing output of ABINIT is then done with PAPI values. The measurements are more accurate and give also access to the flops of the calculation.




Go to the top | Complete list of input variables



pawprt_b
Mnemonics: PAW print band
Characteristic: DEVELOP
Variable type: integer
Default is 0

Forces the output of the all-electron wavefunction for only a single band. To be used in conjuction with:
pawprtwf=1
and pawprt_k. The indexing of the bands start with one for the lowest occupied band and goes up from there.




Go to the top | Complete list of input variables



pawprt_k
Mnemonics: PAW print k-point
Characteristic: DEVELOP
Variable type: integer
Default is 0

Forces the output of the all-electron wavefunction for only a single k-point. To be used in conjuction with:
pawprtwf=1
and pawprt_b. The indexing follows the order in ouptput of the internal variable kpt in the beginning of the run.




Go to the top | Complete list of input variables



pawujat
Mnemonics: PAW+macro_UJ, ATom number
Characteristic: DEVELOP
Variable type: integer
Default is 1, i.e. the first atom treated with PAW+U.

Determines the atom for which U (or J) should be determined. See also macro_uj.



Go to the top | Complete list of input variables



pawujrad
Mnemonics: PAW+macro_UJ, sphere RADius
Characteristic: DEVELOP
Variable type: real pawujrad has the 'LENGTH' characteristics.
Default is 20 a.u.

The sphere radius serves to extrapolate the U value calculated at r_paw to a larger sphere radius. See also macro_uj. As most projector functions are localized within r_paw to ≈80%, 20 a.u. contains ≈100% of the wavefunction and corresponds to r_paw → ∞.



Go to the top | Complete list of input variables



pawujv
Mnemonics: PAW+macro_UJ, potential shift (V)
Characteristic: DEVELOP
Variable type: real, pawujv has the 'ENERGY' characteristics.
Default is 0.1 eV.

Amplitude of the potential shift for the determination of U (or J). See also macro_uj.



Go to the top | Complete list of input variables



prepscphon
Mnemonics: PREPare Self-Consistent PHONon calculation
Characteristic: DEVELOP
Variable type: integer
Default is 0

Print PCINFO, PHFREQ, and PHVEC files, for use with self-consistent phonon runs, after a perturbation calculation. Only prints out files for the present q-point, and there is presently no tool to symmetrize or merge these files, so use anaddb instead (with prtscphon input variable). The abinit input variable is destined to someday bypass the use of anaddb for scphon calculations.



Go to the top | Complete list of input variables



prtbltztrp
Mnemonics: PRinT output for BoLTZTRaP code
Characteristic: DEVELOP
Variable type: integer
Default is 0

Print out geometry (_BLZTRP_GEOM) and eigenenergy (_BLZTRP_EIGEN) files for the BoltzTraP code by Georg Madsen.



Go to the top | Complete list of input variables



prtcif
Mnemonics: PRinT Crystallographic Information File
Characteristic: DEVELOP
Variable type: integer flag
Default is 0

If set to 1, a CIF file is output with the crystallographic data for the present run (cell size shape and atomic positions).



Go to the top | Complete list of input variables



prtdipole
Mnemonics: PRinT DIPOLE
Characteristic: DEVELOP
Variable type: integer
Default is 0

Print out dipole of unit cell, calculated in real space for the primitive cell only. Under development.



Go to the top | Complete list of input variables



prtnest
Mnemonics: PRinT NESTing function
Characteristic: DEVELOP
Variable type: integer flag
Default is 0

If set to 1, the nesting function for the k-point grid is printed. For the moment the path in q space for the nesting function is fixed, but will become an input as well.



Go to the top | Complete list of input variables



prtposcar
Mnemonics: PRinT POSCAR file
Characteristic: DEVELOP
Variable type: integer
Default is 0

Print out VASP-style POSCAR and FORCES files, for use with PHON or frophon codes for frozen phonon calculations. See the associated script in ~abinit/extras/post_processing/phondisp2abi.py for further details on interfacing with PHON, PHONOPY, etc...



Go to the top | Complete list of input variables


prtvdw
Mnemonics: PRinT Van Der Waals file
Characteristic: DEVELOP
Variable type: integer
Default is 0

Print out a NetCDF file containing a vdW-DF kernel.



Go to the top | Complete list of input variables

recefermi
Mnemonics: RECursion - initial guess of the FERMI Energy
Characteristic: DEVELOP
Variable type: real
Default is 0

Used in Recursion method (tfkinfunc=2). In the first SCF calculation it fixes the initial guess for the Fermi energy.



Go to the top | Complete list of input variables



recgratio
Mnemonics: RECursion - Grid Ratio
Characteristic: DEVELOP
Variable type: integer
Default is 1

Used in Recursion method (tfkinfunc=2). It represents the ratio of the two grid step: recgratio=fine_step/coarse_step and it is bigger or equal than 1. It introduces a double-grid system which permits to compute the electronic density on a coarse grid, using a fine grid (defined by ngfft) in the discretisation of the green kernel (see recptrott). Successively the density and the recursion coefficients are interpolated on the fine grid by FFT interpolation. Note that ngfft/recgratio=number of points of the coarse grid has to be compatible with the parallelization parameters.



Go to the top | Complete list of input variables



recnpath
Mnemonics: RECursion - Number of point for PATH integral calculations
Characteristic: DEVELOP
Variable type: integer
Default is 500

Used in Recursion method (tfkinfunc=2). Determine the number of discretisation points to compute some path integral in the recursion method ; those path integrals are used to compute the entropy and the eigenvalues energy. during the latest SFC cycles.



Go to the top | Complete list of input variables



recnrec
Mnemonics: RECursion - Number of RECursions
Characteristic: DEVELOP
Variable type: integer
Default is 10

Used in Recursion method (tfkinfunc=2). Determine the maximum order of recursion, that is the dimension of the krylov space we use to compute density. If the precision setten by rectolden is reached before that order, the recursion method automatically stops.



Go to the top | Complete list of input variables



recptrott
Mnemonics: RECursion - TROTTer P parameter
Characteristic: DEVELOP
Variable type: integer
Default is 0

Used in Recursion method (tfkinfunc=2). Determine the trotter parameter used to compute the exponential of the hamiltonian in the recursion method: exp(-beta*(-Delta + V)) ~ (exp(-beta/(4*recptrott) V) exp(-beta/(4*recptrott) Delta) exp(-beta/(4*recptrott) V))^(2*recptrott). If set to 0, we use recptrott = 1/2 in the above formula. Increasing recptrott improve the accuracy of the trotter formula, but increase the dicretisation error: it may be necessary to increase ngfft. The discretisation error is essentially the discretisation error of the green kernel exp((recptrott/beta*|r|^2)) on the ngfft grid.



Go to the top | Complete list of input variables



recrcut
Mnemonics: RECursion - CUTing Radius
Characteristic: DEVELOP
Variable type: integer
Default is 0

Used in Recursion method (tfkinfunc=2). Used to improve the computational time in the case of the recursion method in a large cell: the density at a point will be computed with taking account only of a sphere of radius recrcut.



Go to the top | Complete list of input variables



rectesteg
Mnemonics: RECursion - TEST on Electron Gas
Characteristic: DEVELOP
Variable type: integer
Default is 0

Used in Recursion method (tfkinfunc=2). It is used to test an electron gas by putting the ion potential equal to zero.



Go to the top | Complete list of input variables



rectolden
Mnemonics: RECursion - TOLerance on the difference of electronic DENsity
Characteristic: DEVELOP
Variable type: real
Default is 0.0E00 (to change)

Used in Recursion method (tfkinfunc=2). Sets a tolerance for differences of electronic density that, reached TWICE successively, will cause one SCF cycle to stop. That electronic density difference is computed in the infinity norm (that is, it is computed point-by-point, and then the maximum difference is computed).



Go to the top | Complete list of input variables



suskxcrs
Mnemonics: SUSceptibility times KXC treated in real space
Characteristic: DEVELOP
Variable type: integer
Default is 0

Only relevant for the ACFD calculation of total energies. If suskxcrs=1, the XC kernel is not treated in reciprocal space, but combined with the susceptibility (chi_0), to avoid Kxc divergences where the density goes to zero (G. Onida & M. Gatti !)

Not applicable for RPA (as there should be a Kxc present). Initially tested for ikhxc==2 (ALDA).



Go to the top | Complete list of input variables



symmorphi
Mnemonics: SYMMORPHIc symmetry operations
Characteristic: DEVELOP, GW
Variable type: integer parameter
Default is 1

With symmorphi=1, symmetry operations with a non-symmorphic vector are allowed. With symmorphi=0, they are not allowed. In the latter case, if the symmetry operations are specified in the input file, the code will stop and print an error message if a non-symmorphic vector is encountered. By contrast, if the symmetry operations are to be determined automatically (if nsym=0), then the set of symmetries will not include the non-symmorphic operations.

Note : this feature exist because in a previous status of the GW calculations, non-symmorphic symmetry operations could not be exploited. Thus, the k points were restricted to the IBZ. In order to prepare GW calculations, and to perform GW calculations, symmorphi=0 was to be used, together with nsym=0.



Go to the top | Complete list of input variables



tfkinfunc
Mnemonics: Thomas-Fermi KINetic energy FUNCtional
Characteristic: DEVELOP
Variable type: integer
Default is 0





Go to the top | Complete list of input variables

tolrde
Mnemonics: TOLerance on the Relative Difference of Eigenenergies
Characteristic:
Variable type: real parameter
Default is 0.005

Sets a tolerance for the ratio of differences of eigenenergies in the line minisation conjugate-gradient algorithm. It compares the decrease of the eigenenergy due to the last line minimisation, with the one observed for the first line minimisation. When the ratio is lower than tolrde, the next line minimisations are skipped.
The number of line minimisations is limited by nline anyhow.
This stopping criterion is present for both GS and RF calculations. In RF calculations, tolrde is actually doubled before comparing with the above-mentioned ratio, for historical reasons.




Go to the top | Complete list of input variables



usedmft
Mnemonics: USE Dynamical Mean Field Theory
Characteristic: DEVELOP
Variable type: integer parameter
Default is 0

If set to 1, enable the use of DFT+DMFT, see in particular the important variables dmft_solv, dmftbandi, dmftbandf, dmft_nwli, dmft_nwlo, dmft_tollc, and dmft_iter.

The current implementation uses Wannier functions obtained from projected local orbitals as correlated orbitals (see dmftbandi and dmftbandf input variables to define them).

The Green's function are computed on a mesh of linear Matsubara frequencies. However, most of the code uses logarithmic Matsubara grid to lower the computational cost. Both dmft_nwli and dmft_nwlo are thus convergence parameters.

DMFT is currently available for collinear (nspinor=1) polarized or unpolarized calculations (nspden=nsppol=2 or nspden=nsppol=1) and for non collinear calculations (nspinor=2,nspden=4,nsppol=1). However it is not yet available for collinear antiferromagnetic calculations (nspden=2,nsppol=1) and non collinear non magnetic calculations (nspden=1, nsppol=1,nspinor=2). CTQMC calculations (dmft_solv=5) are not yet possible if nspinor=2.

Only static calculations without relaxation or dynamics are possible (forces and stress are not computed in the scheme: so the computed values should NOT be trusted).

When correlated density matrices are diagonal, all values of upawu and jpawu are possible. If the correlated density matrices are non diagonal, only jpawu=0 is implemented.

Relevant direct output quantities from converged DMFT calculations are total energy and occupation of correlated orbitals. For Hubbard I calculation (dmft_solv=2), total and partial spectral functions can be obtained with prtdos=1 and can be found in files OUTSpFunc* (where OUT is the root for output files). For CTQMC calculations (dmft_solv=5), imaginary time impurity Green's function are output of the calculations and can be used to produce spectral function using an external Maximum Entropy Code.

A typical DFT+DMFT calculation involves two runs. First, a DFT calculation is fully converged (even unoccupied wavefunctions have to be converged). Then, the DFT+DMFT calculation is started using DFT wavefunctions or density files. As DFT+DMFT calculations (with CTQMC) are computationnally expensive, it is convenient to use prtden=-1, to write DEN file at each DFT iteration, in order to be able to restart the calculation easily.

For details of the implementation see, B. Amadon, F. Lechermann, A. Georges, F. Jollet, T. O. Wehling, and A. I. Lichtenstein, Phys. Rev. B 77(20), (2008), for Wannier functions and B. Amadon, J. Phys.: Condens. Matter 24 075604 (2012), for self-consistency and Hubbard I implementation. If usedmft=1 and bandkss/=0, then, the DFT+DMFT calculation is not done and only projections are computed at the end of the calculation. They can be used by an external code or used to compute the screened interaction (see variable ucrpa).



Go to the top | Complete list of input variables



use_nonscf_gkk
Mnemonics: USE NON-SCF calculation of GKK matrix elements (electron phonon)
Characteristic: DEVELOP
Variable type: integer parameter
Default is 0 for the moment (do not use non-scf method) For old behavior set to 0.

When this flag is activated during a phonon calculation with abinit, all of the perturbations are cycled through, but only the symmetry-irreducible ones are calculated self-consistently. For the others the perturbed density is rotated by the appropriate symop and the gkk matrix elements are calculated non-self-consistently. As they do not depend on the perturbed wave functions, they are correct from the first iteration, and nstep is set to 1 for those perturbations. Note that the resulting 1DEN files are simply the rotate/symmetric ones and that the resulting 1WF files are garbage (completely unconverged) except the matrix elements in the header (equivalent to GKK files, but please use the latter much smaller files for el-ph calculations). The new default behavior with use_nonscf_gkk = 1 should be transparent for the user, with the same output files but a much quicker execution.

Caveant: Note that very tight convergence of ground state and phonon calculations is necessary to get good GKK matrix elements! tolwfr = 1.e-24 or so is recommended everywhere. There may be problems using use_nonscf_gkk = 1 with non-symmorphic symmetries - please check (at least) that lifetimes for phonons go to 0 for acoustic modes at Gamma.





Go to the top | Complete list of input variables

useria, userib, useric, userid, userie
Mnemonics: USER Integer variables A, B, C, D and E
Characteristic:
Variable type: integers
Default is 0 .

These are user-definable integers which the user may input and then utilize in subroutines of his/her own design. They are not used in the official versions of the ABINIT code, and should ease independent developments (hopefully integrated in the official version afterwards).
Internally, they are available in the dtset structured datatype, e.g. dtset%useria .




Go to the top | Complete list of input variables



userra, userrb, userrc, userrd, userre
Mnemonics: USER Real variables A, B, C, D, and E
Characteristic:
Variable type: real numbers
Default is 0.0 .

These are user-definable with the same purpose as useri.



Go to the top | Complete list of input variables



useylm
Mnemonics: USE YLM (the spherical harmonics)
Characteristic: DEVELOP
Variable type: integer parameter
Default is 0 for norm-conserving pseudopotential(s), 1 for Projector Augmented-Wave (PAW), 1 when the recursion method is used (tfkinfunc=1).

When this flag is activated, the non-local operator is applied using an algorithm based on spherical harmonics. Non-local projectors are used with their usual form:



When useylm=0, the sum over Y_lm can be reduced to a Legendre polynomial form.




Go to the top | Complete list of input variables
vdw_df_acutmin
Mnemonics: vdW-DF MINimum Angular CUT-off
Characteristic: DEVELOP
Variable type: real number
Default is 10.

Used when vdw_xc>0, to build angular meshes for the vdW-DF kernel.




Go to the top | Complete list of input variables
vdw_df_aratio
Mnemonics: vdW-DF RATIO between the highest and lowest Angle.
Characteristic: DEVELOP
Variable type: real number
Default is 30.

Used when vdw_xc>0, to build angular meshes for the vdW-DF kernel.




Go to the top | Complete list of input variables
vdw_df_damax
Mnemonics: vdW-DF MAXimum Angular Delta
Characteristic: DEVELOP
Variable type: real number
Default is 0.5.

Used when vdw_xc>0, to build angular meshes for the vdW-DF kernel.




Go to the top | Complete list of input variables
vdw_df_damin
Mnemonics: vdW-DF MINimum Angular Delta
Characteristic: DEVELOP
Variable type: real number
Default is 1.0e-2.

Used when vdw_xc>0, to build angular meshes for the vdW-DF kernel.




Go to the top | Complete list of input variables
vdw_df_dcut
Mnemonics: vdW-DF D-mesh CUT-off
Characteristic: DEVELOP
Variable type: real number
Default is 30.

Used when vdw_xc>0, to build the vdW-DF kernel.




Go to the top | Complete list of input variables
vdw_df_dratio
Mnemonics: vdW-DF RATIO between the highest and lowest D.
Characteristic: DEVELOP
Variable type: real number
Default is 20.

Used when vdw_xc>0, to build the vdW-DF kernel.




Go to the top | Complete list of input variables
vdw_df_dsoft
Mnemonics: vdW-DF SOFTening distance.
Characteristic: DEVELOP
Variable type: real number
Default is 1.0.

Used when vdw_xc>0, to build the vdW-DF kernel.




Go to the top | Complete list of input variables
vdw_df_gcut
Mnemonics: vdW-DF K-space CUT-off
Characteristic: DEVELOP
Variable type: real number
Default is 5.

Used when vdw_xc>0, to filter the vdW-DF kernel in reciprocal space.




Go to the top | Complete list of input variables
vdw_df_ndpts
Mnemonics: vdW-DF Number of D-mesh PoinTS
Characteristic: DEVELOP
Variable type: integer parameter
Default is 20.

Used when vdw_xc>0, to build the vdW-DF kernel.




Go to the top | Complete list of input variables
vdw_df_ngpts
Mnemonics: vdW-DF Number of G-mesh PoinTS
Characteristic: DEVELOP
Variable type: integer parameter
Default is -1.

Used when vdw_xc>0, to build the vdW-DF kernel.




Go to the top | Complete list of input variables
vdw_df_nqpts
Mnemonics: vdW-DF Number of Q-mesh PoinTS
Characteristic: DEVELOP
Variable type: integer parameter
Default is 30.

Used when vdw_xc>0, to build the vdW-DF kernel.




Go to the top | Complete list of input variables
vdw_df_nrpts
Mnemonics: vdW-DF Number of R-PoinTS
Characteristic: DEVELOP
Variable type: integer parameter
Default is 2048.

Used when vdw_xc>0, to define the sampling of the vdW-DF-kernel in real-space.




Go to the top | Complete list of input variables
vdw_df_nsmooth
Mnemonics: vdW-DF Number of SMOOTHening iterations
Characteristic: DEVELOP
Variable type: integer parameter
Default is 12.

Used when vdw_xc>0, to exponentially smoothen q near q0.




Go to the top | Complete list of input variables
vdw_df_phisoft
Mnemonics: vdW-DF SOFTening PHI value.
Characteristic: DEVELOP
Variable type: real number
Default is -1.0.

Used when vdw_xc>0, to build the vdW-DF kernel.




Go to the top | Complete list of input variables
vdw_df_qcut
Mnemonics: vdW-DF Q-mesh CUT-off
Characteristic: DEVELOP
Variable type: real number
Default is 5.

Used when vdw_xc>0, to build the vdW-DF kernel.




Go to the top | Complete list of input variables
vdw_df_qratio
Mnemonics: vdW-DF RATIO between highest and lowest Q
Characteristic: DEVELOP
Variable type: real number
Default is 20.

Used when vdw_xc>0, .




Go to the top | Complete list of input variables
vdw_df_rcut
Mnemonics: vdW-DF Real-space CUT-off
Characteristic: DEVELOP
Variable type: real number
Default is 100.

Used when vdw_xc>0, to define the vdW-DF kernel cut-off radius.




Go to the top | Complete list of input variables
vdw_df_rsoft
Mnemonics: vdW-DF SOFTening radius.
Characteristic: DEVELOP
Variable type: real number
Default is 0.0.

Used when vdw_xc>0, to build the vdW-DF kernel.




Go to the top | Complete list of input variables
vdw_df_threshold
Mnemonics: vdW-DF energy calculation threshold
Characteristic: DEVELOP
Variable type: real parameter
Default is 1.0e-2

Sets a threshold for the energy gradient that, when reached, will cause the vdW-DF interactions to be calculated. This makes sense only if vdw_xc is non-zero.
Adjust it to a big value (e.g. 1e12) to enable it all along the SCF calculation. Too small values, as well as negative values, will result in the vdW-DF energy contributions never being calculated.




Go to the top | Complete list of input variables
vdw_df_tolerance
Mnemonics: vdW-DF global TOLERANCE.
Characteristic: DEVELOP
Variable type: real number
Default is 1.0e-13.

Used when vdw_xc>0, to build the vdW-DF kernel.




Go to the top | Complete list of input variables
vdw_df_tweaks
Mnemonics: vdW-DF tweaks.
Characteristic: DEVELOP
Variable type: integer parameter
Default is 0.

Used when vdw_xc>0, to build the vdW-DF kernel.
IMPORTANT NOTE: modifying this variable will likely transform the calculated energies and their gradients into garbage. You have been warned!




Go to the top | Complete list of input variables
vdw_df_zab
Mnemonics: vdW-DF Zab parameter
Characteristic: DEVELOP
Variable type: real number
Default is -0.8491.

Used when vdw_xc>0, as inctroduced in doi:10.1103/PhysRevLett.92.246401.




Go to the top | Complete list of input variables

vdw_nfrag
Mnemonics: van der Waals Number of interacting FRAGments
Characteristic: DEVELOP
Variable type: integer vdw_nfrag
Default is 1

The absolute value of vdw_nfrag is the number of vdW interacting fragments in the unit cell. As wannierization takes place in reciprocal space, the MLWF center positions could be translated by some lattice vector from the cell where atoms are placed. If vdw_nfrag >= 1 then MLWFs are translated to the original unit cell, otherwise the program will keep the positions obtained by Wannier90. The later is usually correct if some atoms are located at the corners or at limiting faces of the unit cell. Used only if vdw_xc=10,11.



Go to the top | Complete list of input variables



vdw_tol
Mnemonics: van der Waals TOLerance
Characteristic: DEVELOP
Variable type: real number
Default is 10^-10

Used only when Van der Waals DFT-D2 correction is activated (vdw_xc=5).
The DFT-D2 (S. Grimme approach) dispersion potential is implemented as a pair potential. The number of pairs of atoms contributing to the potential is necessarily limited. To be included in the potential a pair of atom must have contribution to the energy larger than vdw_tol.




Go to the top | Complete list of input variables



vdw_typfrag
Mnemonics: van der Waals TYPe of FRAGment
Characteristic: DEVELOP
Variable type: integer array vdw_typfrag(natom)
Default is 1*natom

This array defines the interacting fragments by assigning to each atom an integer index from 1 to vdw_nfrag. The ordering of vdw_typfrag is the same as typat or xcart. Internally each MLWF is assigned to a given fragment by computing the distance to the atoms. MLWFs belong to the same fragment as their nearest atom. The resulting set of MLWFs in each interacting fragment can be found in the output file in xyz format for easy visualization. Used only if vdw_xc=10,11.



Go to the top | Complete list of input variables



vdw_supercell
Mnemonics: Van Der Waals correction from Wannier functions in SUPERCELL
Characteristic: DEVELOP
Variable type: integer array vdw_supercell(3)
Default is 0 0 0

Set of dimensionless positive numbers which define the maximum multiples of the primitive translations (rprimd) in the supercell construction. Each component of vdw_supercell indicates the maximum number of cells along both positive or negative directions of the corresponding primitive vector i.e. the components of rprimd. In the case of layered systems for which vdW interactions occur between layers made of tightly bound atoms, the evaluation of vdW corrections comming from MLWFs in the same layer (fragment) must be avoided. Both a negative or null value for one component of vdw_supercell will indicate that the corresponding direction is normal to the layers. Used only if vdw_xc=10,11.



Go to the top | Complete list of input variables



vdw_xc
Mnemonics: van der Waals eXchange-Correlation functional
Characteristic: DEVELOP
Variable type: integer
Default is 0

Selects a van-der-Waals density functional to apply the corresponding correction to the exchange-correlation energy. If set to zero, no correction will be applied.
Possible values are:

For vdw_xc=1 and vdw_xc=2, the implementation follows the strategy devised in the article of Román-Pérez and Soler (doi:10.1103/PhysRevLett.103.096102).




Go to the top | Complete list of input variables

wfoptalg
Mnemonics: WaveFunction OPTimisation ALGorithm
Characteristic: DEVELOP
Variable type: integer parameter
Default is 0 when usepaw=0 (norm-conserving pseudopotentials),
10 when usepaw=1 (PAW).
Default is 14 if paral_kgb=1.

Allows to choose the algorithm for the optimisation of the wavefunctions.
The different possibilities are :





Go to the top | Complete list of input variables

xc_denpos
Mnemonics: eXchange-Correlation - DENsity POSitivity value
Characteristic: DEVELOP
Variable type: real
Default is 1.0e-14

For the evaluation of the exchange-correlation functionals, the density cannot be negative, or even too small (e.g. the LDA exchange kernel behaves like the density at power -(2/3), and the density is used at the denominator of different factors in GGAs and metaGGAs. xc_denpos is the smallest value that the density can assume at the time of the evaluation of a XC functional, in ABINIT. When then computed density drops below xc_denpos before attacking the evaluation of the XC functional, then it will be (only for that purpose) replaced by xc_denpos. Note that the evaluation of the gradients or other quantities that are density-dependent is performed before this replacement.

It has been observed that the SCF cycle of the Tran-Blaha mGGA can be quite hard to make converge, for systems for which there is some vacuum. In this case, setting xc_denpos to 1.0e-7 ... 1.0e-6 has been seen to allow good convergence. Of course, this will affect the numerical results somehow, and one should play a bit with this value to avoid incorrect calculations.



Go to the top | Complete list of input variables
xc_tb09_c
Mnemonics: Value of the c parameter in the eXchange-Correlation TB09 functional
Characteristic:
Variable type: real
Default is all 99.99d0

The modified Becke-Johnson exchange-correlation functional by Tran and Blaha (Phys. Rev. Lett. 102, 226401 (2009)) reads :

V_x(r) = c * V_x^{BR}(r) + (3*c - 2) * 1/pi * sqrt(5/12) * sqrt(2*kden(r)/den(r))

in which V_x^{BR}(r) is the Becke-Roussel potential.

In this equation the parameter c can be evaluated at each SCF step according to the following equation :

c = alpha + beta * sqrt(1/V_{cell} * \int_{V_{cell}} |grad(den(r))|/den(r) d3r)

The c parameter is evaluated thanks to the previous equation when xc_tb09_c is equal to the "magic" default value 99.99. The c parameter can also be fixed to some (property-optimized or material-optimized) value by using this variable.



Go to the top | Complete list of input variables