mirror of https://gitlab.com/QEF/q-e.git
356 lines
12 KiB
XML
356 lines
12 KiB
XML
<?xml version="1.0" encoding="ISO-8859-1"?>
|
|
<?xml-stylesheet type="text/xsl" href="input_xx.xsl"?>
|
|
<!-- FILE AUTOMATICALLY CREATED: DO NOT EDIT, CHANGES WILL BE LOST -->
|
|
|
|
<input_description distribution="Quantum Espresso" package="turboTDDFPT" program="turbo_davidson.x" >
|
|
<toc>
|
|
</toc>
|
|
<intro>
|
|
Input data format: { } = optional, [ ] = it depends.
|
|
|
|
All quantities whose dimensions are not explicitly specified are in
|
|
RYDBERG ATOMIC UNITS
|
|
|
|
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.
|
|
|
|
Structure of the input data:
|
|
===============================================================================
|
|
|
|
&lr_input
|
|
...
|
|
/
|
|
|
|
&lr_dav
|
|
...
|
|
/
|
|
</intro>
|
|
<namelist name="lr_input" >
|
|
<label> This namelist is always needed !
|
|
</label>
|
|
<var name="prefix" type="CHARACTER" >
|
|
<default> 'pwscf'
|
|
</default>
|
|
<info>
|
|
Sets the prefix for generated and read files. The files
|
|
generated by the ground state pw.x run should have this
|
|
same prefix.
|
|
</info>
|
|
</var>
|
|
<var name="outdir" type="CHARACTER" >
|
|
<default> './'
|
|
</default>
|
|
<info>
|
|
The directory that contains the run critical files, which
|
|
include the files generated by ground state pw.x run.
|
|
</info>
|
|
</var>
|
|
<var name="wfcdir" type="CHARACTER" >
|
|
<default> './'
|
|
</default>
|
|
<info>
|
|
The directory that contains the run critical files, which
|
|
include the files generated by ground state pw.x run.
|
|
</info>
|
|
</var>
|
|
<var name="max_seconds" type="REAL" >
|
|
<default> 1.D+7, or 150 days, i.e. no time limit
|
|
</default>
|
|
<info>
|
|
jobs stops after "max_seconds" CPU time. Use this option
|
|
in conjunction with option "restart" if you need to
|
|
split a job too long to complete into shorter jobs that
|
|
fit into your batch queues.
|
|
</info>
|
|
</var>
|
|
<var name="restart" type="LOGICAL" >
|
|
<default> .false.
|
|
</default>
|
|
<info>
|
|
When set to .true., turbo_davidson.x will attempt to restart
|
|
from a previous interrupted calculation if "max_seconds"
|
|
was specified.
|
|
Beware, if set to .false. turbo_davidson.x will OVERWRITE any
|
|
previous runs.
|
|
</info>
|
|
</var>
|
|
<var name="lr_verbosity" type="INTEGER" >
|
|
<default> 1
|
|
</default>
|
|
<info>
|
|
This integer variable controls the amount of information
|
|
written to standard output.
|
|
</info>
|
|
</var>
|
|
<var name="disk_io" type="CHARACTER" >
|
|
<default> 'default'
|
|
</default>
|
|
<info>
|
|
Fine control of disk usage. Currently only 'reduced' is
|
|
supported where no restart files are written, apart from
|
|
the 'default' mode.
|
|
</info>
|
|
</var>
|
|
</namelist>
|
|
<namelist name="lr_dav" >
|
|
<var name="num_eign" type="INTEGER" >
|
|
<default> 1
|
|
</default>
|
|
<info>
|
|
Number of eigenstates to be calculated.
|
|
</info>
|
|
</var>
|
|
<var name="num_init" type="INTEGER" >
|
|
<default> 2
|
|
</default>
|
|
<info>
|
|
Number of trial vectors. Usually it is twice as large as
|
|
the number of eigenstates to be calculated (see "num_eign").
|
|
</info>
|
|
</var>
|
|
<var name="if_random_init" type="LOGICAL" >
|
|
<default> .false.
|
|
</default>
|
|
<info>
|
|
When set to .true. trial vectors are chosen randomly, otherwise
|
|
they are guessed from the ground-state calculation.
|
|
If p_nbnd_occ * p_nbnd_virt < num_init, this term is forced to
|
|
be .true. The usage of random trial vectors should cause only
|
|
a slower convergence, and do not affect the final results.
|
|
</info>
|
|
</var>
|
|
<var name="num_basis_max" type="INTEGER" >
|
|
<default> 20
|
|
</default>
|
|
<info>
|
|
Maximum number of basis vectors allowed in the subspace.
|
|
When this number is reached, a discharging routine is called.
|
|
The memory requirement of the Davidson algorithm is mainly
|
|
determined by this variable (an estimation of the memory
|
|
is reported at the beginning of the run).
|
|
</info>
|
|
</var>
|
|
<var name="residue_conv_thr" type="REAL" >
|
|
<default> 1.0E-4
|
|
</default>
|
|
<info>
|
|
Threshold for the convergence. When the square of the
|
|
residue is smaller than this value, the convergence
|
|
is achieved.
|
|
</info>
|
|
</var>
|
|
<var name="precondition" type="LOGICAL" >
|
|
<default> .true.
|
|
</default>
|
|
<info>
|
|
If set to .true. a precondition is used. At this moment,
|
|
one sees no reason why not to use the precondition.
|
|
</info>
|
|
</var>
|
|
<var name="single_pole" type="LOGICAL" >
|
|
<default> .false.
|
|
</default>
|
|
<info>
|
|
A slightly better way to set the initial trial vectors,
|
|
but the improvement is really small. Currently this flag
|
|
can be used only with LDA/PBE + NC PPs. So do not use
|
|
it unless it is really necessary.
|
|
</info>
|
|
</var>
|
|
<var name="if_dft_spectrum" type="LOGICAL" >
|
|
<default> .false.
|
|
</default>
|
|
<info>
|
|
When set to .true. the independent particle approximation
|
|
is used, i.e. the Hartree and exchange-correlation response
|
|
contributions are neglected.
|
|
</info>
|
|
</var>
|
|
<var name="reference" type="REAL" >
|
|
<default> 0.0d0
|
|
</default>
|
|
<info>
|
|
Reference energy in units of Ry. This variable is used
|
|
to constrain the Davidson algorithm to converge the eigenstates
|
|
having the energy closest to the reference energy. In this way
|
|
one can calculate less eigenstates at once, and to perform multiple
|
|
calculations with different reference energies (the post-processing
|
|
code tddfpt_calculate_spectrum.x can be used for this purpose).
|
|
</info>
|
|
</var>
|
|
<var name="broadening" type="REAL" >
|
|
<default> 0.005d0
|
|
</default>
|
|
<info>
|
|
Lorentzian broadening (Ry) to broaden the absorption spectrum.
|
|
</info>
|
|
</var>
|
|
<var name="start" type="REAL" >
|
|
<default> 0.0d0
|
|
</default>
|
|
<info>
|
|
The lower limit of the energy (Ry) scale for the spectrum calculation.
|
|
</info>
|
|
</var>
|
|
<var name="finish" type="REAL" >
|
|
<default> 1.0d0
|
|
</default>
|
|
<info>
|
|
The upper limit of the energy (Ry) scale for the spectrum calculation.
|
|
</info>
|
|
</var>
|
|
<var name="step" type="REAL" >
|
|
<default> 0.001d0
|
|
</default>
|
|
<info>
|
|
Energy step (Ry) for the spectrum calculation.
|
|
</info>
|
|
</var>
|
|
<var name="p_nbnd_occ" type="INTEGER" >
|
|
<default> 10
|
|
</default>
|
|
<info>
|
|
Number of occupied states selected from the total number
|
|
of occupied states computed by PWscf. This variable is
|
|
useful if there are too many occupied states but your
|
|
are interested in only some of them.
|
|
In priciple this variable and "p_nbnd_virt" affect only
|
|
the interpretation of the eigenstates, but do not effect
|
|
their energy and the final absorption spectrum.
|
|
Make sure that min(p_nbnd_occ,nbnd_occ)*min(p_nbnd_virt,nbnd_virt)
|
|
is lager than the number of initial vectors ("num_init"),
|
|
so you will not end up using random trial vectors which would
|
|
slow down the convergence.
|
|
</info>
|
|
</var>
|
|
<var name="p_nbnd_virt" type="INTEGER" >
|
|
<default> 10
|
|
</default>
|
|
<info>
|
|
Number of empty states selected from the total number
|
|
of empty states computed by PWscf. This variable is
|
|
useful if there are too many empty states but your
|
|
are interested in only some of them.
|
|
In priciple this variable and "p_nbnd_occ" affect only
|
|
the interpretation of the eigenstates, but do not effect
|
|
their energy and the final absorption spectrum.
|
|
Make sure that min(p_nbnd_occ,nbnd_occ)*min(p_nbnd_virt,nbnd_virt)
|
|
is lager than the number of initial vectors ("num_init"),
|
|
so you will not end up using random trial vectors which would
|
|
slow down the convergence.
|
|
</info>
|
|
</var>
|
|
<var name="poor_of_ram" type="LOGICAL" >
|
|
<default> .false.
|
|
</default>
|
|
<info>
|
|
Use this variable if you do not have enough RAM (only USPP),
|
|
i.e. set it to .true. When this variable is set to .false.,
|
|
you double the memory used for the USPP calculation, but you
|
|
increase a speed of the calculation by getting rid of
|
|
applying many times of s_psi and cal_bec in the
|
|
calculation, which takes a lot of time (sometimes more than
|
|
a half of the whole calculation) when the size of the
|
|
subspace is more than 100.
|
|
</info>
|
|
</var>
|
|
<var name="poor_of_ram2" type="LOGICAL" >
|
|
<default> .false.
|
|
</default>
|
|
<info>
|
|
Use this variable if you do not have enough RAM (NCPP and USPP),
|
|
i.e. set it to .true. When this variable is set to .false.,
|
|
you double the memory used for the calculation, but you
|
|
increase a speed of the calculation by storing D_ and C_
|
|
basis: the calculation will be speeded up a lot when
|
|
one is calculating many transitions at the same time.
|
|
</info>
|
|
</var>
|
|
<var name="max_iter" type="INTEGER" >
|
|
<default> 100
|
|
</default>
|
|
<info>
|
|
Maximum number of Davidson iterations allowed. When the
|
|
number of iterations arrives this number, the calculation
|
|
will stop even if the convergence has not been achieved.
|
|
</info>
|
|
</var>
|
|
<var name="no_hxc" type="LOGICAL" >
|
|
<default> .false.
|
|
</default>
|
|
<info>
|
|
When set to .true. the change in the internal field
|
|
(Hartree and exchange-correlation) is ignored in the
|
|
calculation, resulting in the independent electron
|
|
approximation.
|
|
</info>
|
|
</var>
|
|
<var name="pseudo_hermitian" type="LOGICAL" >
|
|
<default> .true.
|
|
</default>
|
|
<info>
|
|
When set to .true. the pseudo-Hermitian Lanczos
|
|
algorithm is used. When set to .false. the
|
|
non-Hermitian Lanczos biorthogonalization algorithm
|
|
is used (which is two times slower).
|
|
</info>
|
|
</var>
|
|
<var name="ltammd" type="LOGICAL" >
|
|
<default> .false.
|
|
</default>
|
|
<info>
|
|
When set to .true. the Tamm-Dancoff approximation is used
|
|
in constructing the Liouvillian.
|
|
</info>
|
|
</var>
|
|
<var name="lplot_drho" type="LOGICAL" >
|
|
<default> .false.
|
|
</default>
|
|
<info>
|
|
When set to .true. the turbo_davidson.x code will write
|
|
files for each eigenstate "drho-of-eign-$i" which are
|
|
needed to plot the response charge-density at each resonance.
|
|
This implies a calculation using the pp.x post-processing
|
|
program with the corresponding input file which must be
|
|
prepared. See example "H2O-PLOTRHO".
|
|
</info>
|
|
</var>
|
|
<var name="d0psi_rs" type="LOGICAL" >
|
|
<default> .false.
|
|
</default>
|
|
<info>
|
|
When set to .true. the dipole is computed in the
|
|
real space. When set to .false. the dipole is
|
|
computed in the reciprocal space by computing [H,r].
|
|
Note, currently the commutator does not contain
|
|
a contribution for hybrids [V_EXX,r]. See also
|
|
the variable lshift_d0psi.
|
|
Important: Treatment of the dipole in the real space
|
|
is allowed only if the system is finite.
|
|
</info>
|
|
</var>
|
|
<var name="lshift_d0psi" type="LOGICAL" >
|
|
<default> .true.
|
|
</default>
|
|
<info>
|
|
This variable is used only when d0psi_rs=.true.
|
|
a) If a molecule is placed in the corner of the
|
|
supercell, there is a discontinuity problem for the
|
|
position operator r, which is not periodic. By setting
|
|
lshift_d0psi=.true. the discontinuity problem is
|
|
solved by shifting the position operator r such that
|
|
it is continuous and well defined.
|
|
b) If a molecule is placed in the center of the supercell,
|
|
there is no discontinuity problem for the position operator r,
|
|
and thus you can set lshift_d0psi=.false. But if you still
|
|
set it to .true., this will not harm, because the position
|
|
operator will basically remain as it is, since it is always
|
|
centered wrt the center of the molecule.
|
|
</info>
|
|
</var>
|
|
</namelist>
|
|
</input_description>
|