mirror of https://gitlab.com/QEF/q-e.git
- FPMD prepared for NEB
- variables in module pwcom/varie moved to Modules/control_flags - module PW/format moved to Modules/format - in module PW/supercell added workaround for AUTOMATIC variable and AIX compilers - PH Makefile added rbecmod.o git-svn-id: http://qeforge.qe-forge.org/svn/q-e/trunk/espresso@468 c92efa57-630b-4861-b058-cf58834340f0
This commit is contained in:
parent
3eae140f76
commit
bb4db10003
|
@ -16,6 +16,7 @@ energies.o \
|
|||
fft_base.o \
|
||||
fft_scalar.o \
|
||||
fft_types.o \
|
||||
formats.o \
|
||||
griddim.o \
|
||||
input_parameters.o \
|
||||
io_base.o \
|
||||
|
|
|
@ -172,6 +172,57 @@
|
|||
REAL(dbl) :: forc_conv_thr = 0.0d0
|
||||
INTEGER :: forc_maxiter = 100
|
||||
|
||||
!
|
||||
! ... Several variables controlling the run
|
||||
!
|
||||
! ... Control variables use mainly in PW calculations
|
||||
!
|
||||
!
|
||||
REAL(KIND=DP), PUBLIC :: &
|
||||
mixing_beta, &! the mixing parameter
|
||||
tr2, &! the convergence threshold for potential
|
||||
upscale, &! maximum reduction of convergence threshold
|
||||
time_max, &! maximum allowed cpu time in sec
|
||||
ethr, &! the convergence threshold for eigenvalues
|
||||
alpha0, &! the mixing parameters for the extrapolation
|
||||
beta0, &! of the starting potential
|
||||
diis_ethr_cg ! threshold in eigval for starting DIIS
|
||||
|
||||
INTEGER, PUBLIC :: &
|
||||
ngm0, &! used in mix_rho
|
||||
niter, &! the maximum number of iteration
|
||||
nmix, &! the number of iteration kept in the history
|
||||
imix, &! the type of mixing (0=plain,1=TF,2=local-TF)
|
||||
! iprint, &! the interval between full writing of results
|
||||
iverbosity, &! type of printing ( 0 few, 1 all )
|
||||
david, &! used on Davidson diagonalization
|
||||
nstep, &! number of minimization steps
|
||||
istep, &! current minimization step
|
||||
isolve, &! Davidson or CG diagonalization
|
||||
iswitch, &! general switch for the calculation type
|
||||
modenum, &! used with iswitch=-4
|
||||
max_cg_iter, &! maximum number of iterations in a CG di
|
||||
diis_buff, &! dimension of the buffer in diis
|
||||
diis_ndim, &! dimension of reduced basis in DIIS
|
||||
order ! type of potential updating ( see update_pot )
|
||||
!
|
||||
LOGICAL, PUBLIC :: &
|
||||
lscf, &! if .TRUE. the calculation is selfconsistent
|
||||
lbfgs, &! if .TRUE. the calculation is a bfgs-type relaxation
|
||||
lnewbfgs, &! if .TRUE. the calculation is a relaxation based on new BFGS scheme
|
||||
lmd, &! if .TRUE. the calculation is a dynamics
|
||||
lneb, &! if .TRUE. the calculation is neb
|
||||
conv_elec, &! if .TRUE. electron convergence has been reached
|
||||
conv_ions, &! if .TRUE. ionic convergence has been reached
|
||||
nosym, &! if .TRUE. no symmetry is used
|
||||
newpseudo(npsx), &! if .TRUE. done with the new pseudopotentials
|
||||
noinv = .FALSE., &! if .TRUE. eliminates inversion symmetry
|
||||
diis_wfc_keep, &! if .TRUE. keeps old wfc for starting
|
||||
restart, &! if .TRUE. restart from results of a preceding run
|
||||
reduce_io ! if .TRUE. reduce the I/O to the strict minimum
|
||||
!
|
||||
|
||||
|
||||
! end of module-scope declarations
|
||||
! ----------------------------------------------
|
||||
|
||||
|
|
|
@ -17,8 +17,8 @@
|
|||
# include "/cineca/prod/hpm/include/f_hpm.h"
|
||||
#endif
|
||||
|
||||
#undef __FFT_BASE_TS1
|
||||
!#define __FFT_BASE_TS1
|
||||
!#undef __FFT_BASE_TS1
|
||||
#define __FFT_BASE_TS1
|
||||
|
||||
!=----------------------------------------------------------------------=!
|
||||
MODULE fft_base
|
||||
|
|
|
@ -266,6 +266,7 @@ PWOBJS = \
|
|||
../PW/pw_gemm.o \
|
||||
../PW/qvan2.o \
|
||||
../PW/random.o \
|
||||
../PW/rbecmod.o \
|
||||
../PW/rdiaghg.o \
|
||||
../PW/read_conf_from_file.o \
|
||||
../PW/read_file.o \
|
||||
|
|
|
@ -96,7 +96,6 @@ force_hub.o \
|
|||
force_lc.o \
|
||||
force_us.o \
|
||||
forces.o \
|
||||
formats.o \
|
||||
funct.o \
|
||||
functionals.o \
|
||||
g_psi.o \
|
||||
|
|
15
PW/pwcom.f90
15
PW/pwcom.f90
|
@ -433,9 +433,7 @@ MODULE varie
|
|||
!
|
||||
! ... Several variables controlling the run
|
||||
!
|
||||
SAVE
|
||||
!
|
||||
REAL(KIND=DP) :: &
|
||||
USE control_flags, ONLY: &
|
||||
mixing_beta, &! the mixing parameter
|
||||
tr2, &! the convergence threshold for potential
|
||||
upscale, &! maximum reduction of convergence threshold
|
||||
|
@ -443,8 +441,7 @@ MODULE varie
|
|||
ethr, &! the convergence threshold for eigenvalues
|
||||
alpha0, &! the mixing parameters for the extrapolation
|
||||
beta0, &! of the starting potential
|
||||
diis_ethr_cg ! threshold in eigval for starting DIIS
|
||||
INTEGER :: &
|
||||
diis_ethr_cg, &! threshold in eigval for starting DIIS
|
||||
ngm0, &! used in mix_rho
|
||||
niter, &! the maximum number of iteration
|
||||
nmix, &! the number of iteration kept in the history
|
||||
|
@ -460,9 +457,7 @@ MODULE varie
|
|||
max_cg_iter, &! maximum number of iterations in a CG di
|
||||
diis_buff, &! dimension of the buffer in diis
|
||||
diis_ndim, &! dimension of reduced basis in DIIS
|
||||
order ! type of potential updating ( see update_pot )
|
||||
!
|
||||
LOGICAL :: &
|
||||
order, &! type of potential updating ( see update_pot )
|
||||
lscf, &! if .TRUE. the calculation is selfconsistent
|
||||
lbfgs, &! if .TRUE. the calculation is a bfgs-type relaxation
|
||||
lnewbfgs, &! if .TRUE. the calculation is a relaxation based on new BFGS scheme
|
||||
|
@ -471,8 +466,8 @@ MODULE varie
|
|||
conv_elec, &! if .TRUE. electron convergence has been reached
|
||||
conv_ions, &! if .TRUE. ionic convergence has been reached
|
||||
nosym, &! if .TRUE. no symmetry is used
|
||||
newpseudo(npsx), &! if .TRUE. done with the new pseudopotentials
|
||||
noinv = .FALSE., &! if .TRUE. eliminates inversion symmetry
|
||||
newpseudo, &! if .TRUE. done with the new pseudopotentials
|
||||
noinv, &! if .TRUE. eliminates inversion symmetry
|
||||
diis_wfc_keep, &! if .TRUE. keeps old wfc for starting
|
||||
restart, &! if .TRUE. restart from results of a preceding run
|
||||
reduce_io ! if .TRUE. reduce the I/O to the strict minimum
|
||||
|
|
|
@ -23,8 +23,16 @@ MODULE supercell
|
|||
!
|
||||
REAL (KIND=DP), DIMENSION(:), INTENT(IN) :: vect
|
||||
REAL (KIND=DP), DIMENSION(SIZE( vect )) :: pbc
|
||||
#if defined __AIX
|
||||
! with AIX compiler some combination of flags lead to
|
||||
! variables being defined as static, hence giving a conflict
|
||||
! with PURE function. We then force the variable be AUTOMATIC
|
||||
REAL (KIND=DP), AUTOMATIC, DIMENSION(3) :: crystal
|
||||
INTEGER, AUTOMATIC :: i, j, index
|
||||
#else
|
||||
REAL (KIND=DP), DIMENSION(3) :: crystal
|
||||
INTEGER :: i, j, index
|
||||
#endif
|
||||
!
|
||||
!
|
||||
pbc = 0.D0
|
||||
|
|
Loading…
Reference in New Issue