freq_line : if this variable is .TRUE. the FREQUENCY keyword has the number
of frequency points and the starting and final frequencies.
If .FALSE. the number of frequencies and a list of frequencies
are given. The frequencies are complex numbers and are given
with a real and an imaginary part (in Ry), without parenthesis.
Default: .FALSE.
delta_freq : When freq_line is .TRUE. instead of giving the last frequency
of the line one can give the distance between two frequency points
delta_freq as a complex number. The last point of the line is
calculated using the number of frequencies nfs and the first
frequency. When delta_freq is not zero the last frequency
is not used and can be omitted.
Default: complex, (0.0, 0.0).
start_freq : Number of the initial frequency calculated in the job in
the sequence of frequencies.
Default: integer 1
last_freq : Number of the final frequency calculated in the job in the
sequence of frequencies.
Default: integer nfs (total number of frequencies)
lfreq_ev : If .TRUE. the units of the frequencies are eV instead of the
default Ry units.
Default: logical .FALSE.
linear_im_freq: This option is used only when freq_line=.TRUE.
When linear_freq_im is .TRUE., the imaginary part of each
frequency is calculated as eta * freq where eta is the imaginary
part of the first frequency on the frequency line.
Default: logical .FALSE.
When in the input of the phonon code a non zero wave-vector q
is specified, the previous options produce the inverse of the dielectric
constant as a function of the frequency at the wave-vector q
(this option can be used both for insulators and metals).
flepsilon : beginning of the name of the file where the frequency dependent
dielectric constant is written (the code adds the extensions _re
and _im)
Default: character(len=*) 'epsilon'
flpsepsilon : name of the postscript file where the frequency dependent
dielectric constant is plotted.
Default: character(len=*) 'output_epsilon.ps'
omega_group : number of frequencies calculated together by each image.
This variables is used only with images.
Default: integer 1.
Number of tasks for frequency calculations: nfs/ omega_group, the
number of frequencies, divided the number of frequencies in each group.
It is also possible to separate the self-consistent and the phonon calculation, by running first thermo_pw.x using what='scf' and then running, on the same directory, thermo_pw.x using what='scf_ph'. The same input can be used in the two calculations, only the thermo_control file need to be changed. The number or processors/pools/images can be changed in the same cases in which this is possible in Quantum ESPRESSO.
Using images in a phonon calculation with the master/slave approach has an overhead because each image must recalculate the initialization and the band structure at each task, or check if the bands are already on disk, calculated previously by the same image. On some systems with slow disks it could be faster to recalculate the bands instead of reading them from disk. It is also possible to use the image breaking suggested by the ph.x code that keeps, as much as possible, on the same image the tasks that require the same initialization without recomputing it. The input variables that control this part of the calculation are:
force_bands_calculation : if .TRUE. the bands are never read from disk but
recalculated when needed.
Default: logical .FALSE.
use_ph_images : if .TRUE. each image makes a set of tasks so as to minimize
the number of band calculations and phonon initialization.
Default: logical .FALSE. if nimage>1 .TRUE. nimage=1.
sym_for_diago : When .TRUE. use symmetry to calculate the bands and the
unperturbed wavefunctions instead of diagonalizing
the Hamiltonian. This is now the default. For testing purposes
you can set this variable to .FALSE. to recover the behavior
of ph.x. Works with pools but needs improvement.
Default: logical .TRUE.