fix parallel compilation,

add documentation
This commit is contained in:
Oscar Baseggio 2020-04-22 11:13:46 +02:00 committed by Baseggio
parent c6d55317f9
commit 0dd08b9b35
4 changed files with 152 additions and 4 deletions

View File

@ -0,0 +1,142 @@
input_description -distribution {Quantum Espresso} -package turboMAGNONS -program turbo_magnons.x {
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_control
...
/
}
namelist lr_input {
label { This namelist is always needed ! }
var prefix -type CHARACTER {
default { 'pwscf' }
info {
Sets the prefix for generated and read files. The files
generated by the ground state pw.x run must have this
same prefix.
}
}
var outdir -type CHARACTER {
default { './' }
info {
The directory that contains the run critical files, which
include the files generated by ground state pw.x run.
}
}
var restart -type LOGICAL {
default {.false.}
info {
When set to .true., turbo_magnons.x will attempt to restart
from a previous interrupted calculation. (see restart_step
variable).
Beware, if set to .false. turbo_magnons.x will OVERWRITE any
previous runs.
}
}
var restart_step -type INTEGER {
default {itermax}
info {
The code writes restart files every restart_step iterations.
Restart files are automatically written at the end of
itermax Lanczos steps.
}
}
var lr_verbosity -type INTEGER {
default {1}
info {
This integer variable controls the amount of information
written to standard output.
}
}
var disk_io -type CHARACTER {
default { 'default' }
info {
Fine control of disk usage. Currently only 'reduced' is
supported where no restart files are written, apart from
the 'default' mode.
}
}
}
namelist lr_control {
var itermax -type INTEGER {
default {500}
info {
Number of Lanczos iterations to be performed.
}
}
var pseudo_hermitian -type LOGICAL {
default {.true.}
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).
}
}
var approximation -type CHARACTER {
default { 'TDDFT' }
info {
A string describing a level of theory:
'TDDFT' - Time-Dependent Local Density Approximation or
Time-Dependent Generalized Gradient Approximation
(depending on the XC functional),
'IPA' - Independent Particle Approximation,
}
}
var b_pol -type INTEGER {
default {1}
info {
An integer variable that determines which element of the
dynamical polarizability will be computed:
1 -> chi_xx(omega), 2 -> chi_yy(omega), and
3 -> chi_zz(omega). When set to 0, three Lanczos chains
are sequentially performed and the full polarizability
tensor and the absorption coefficient are computed.
}
}
var qi -type INTEGER {
default {1.0}
info {
The values of the transferred momentum
in Cartesian coordinates (i=1,2,3)
in units of 2pi/a0 (a0 = lattice parameter).
It must be specified as q1, q2, q3.
}
}
}
}

View File

@ -4,6 +4,7 @@ HELPDOC = ../../dev-tools/helpdoc -version $(VERSION)
HTMLS = INPUT_Lanczos.html \
INPUT_Davidson.html \
INPUT_EELS.html \
INPUT_Magnons.html \
INPUT_Spectrum.html
TXTS = $(HTMLS:.html=.txt)
@ -14,8 +15,8 @@ all: defs
clean:
- rm -f input_xx.xsl
- rm -f INPUT_*.html INPUT_*.xml
- rm -f INPUT_{Spectrum,Lanczos,Davidson,EELS}.txt
- rm -f ../../Doc/INPUT_{Spectrum,Lanczos,Davidson,EELS}.*
- rm -f INPUT_{Spectrum,Lanczos,Davidson,EELS,Magnons}.txt
- rm -f ../../Doc/INPUT_{Spectrum,Lanczos,Davidson,EELS,Magnons}.*
defs: input_xx.xsl $(HTMLS) $(TXTS) link_on_main_doc
@ -42,11 +43,14 @@ link_on_main_doc:
ln -fs ../TDDFPT/Doc/INPUT_Davidson.html . ; \
ln -fs ../TDDFPT/Doc/INPUT_EELS.html . ; \
ln -fs ../TDDFPT/Doc/INPUT_Spectrum.html . ; \
ln -fs ../TDDFPT/Doc/INPUT_Magnons.html . ; \
ln -fs ../TDDFPT/Doc/INPUT_Lanczos.xml . ; \
ln -fs ../TDDFPT/Doc/INPUT_Davidson.xml . ; \
ln -fs ../TDDFPT/Doc/INPUT_EELS.xml . ; \
ln -fs ../TDDFPT/Doc/INPUT_Spectrum.xml . ; \
ln -fs ../TDDFPT/Doc/INPUT_Magnons.xml . ; \
ln -fs ../TDDFPT/Doc/INPUT_Lanczos.txt . ; \
ln -fs ../TDDFPT/Doc/INPUT_Davidson.txt . ; \
ln -fs ../TDDFPT/Doc/INPUT_EELS.txt . ; \
ln -fs ../TDDFPT/Doc/INPUT_Magnons.txt . ; \
ln -fs ../TDDFPT/Doc/INPUT_Spectrum.txt .)

View File

@ -1,4 +1,6 @@
subroutine lanczos_nonhermitian_c(j, npwx_npol, nbnd_occ, nksq, qj_r, Aqj_r, qjold_r, qj_l, Aqj_l, qjold_l, n_ipol, u, alpha, beta, gamma, zeta)
subroutine lanczos_nonhermitian_c(j, npwx_npol, nbnd_occ, nksq, qj_r, Aqj_r, &
& qjold_r, qj_l, Aqj_l, qjold_l, n_ipol, u, &
& alpha, beta, gamma, zeta)
!
!! Bi-Orthogonal Lanczos algorithm for magnons
!!

View File

@ -146,7 +146,7 @@ SUBROUTINE lr_readin
force_real_gamma = .FALSE.
force_real_alpha = .FALSE.
force_zero_alpha = .FALSE.
b_pol = 0
b_pol = 1
lan_precondition = .FALSE.
!
! For lr_dav (Davidson program)