mirror of https://gitlab.com/QEF/q-e.git
Ford-modules part 26
This commit is contained in:
parent
db49d874eb
commit
ff2990b868
|
@ -8,9 +8,7 @@
|
|||
!=----------------------------------------------------------------------------=!
|
||||
MODULE control_flags
|
||||
!=--------------------------------------------------------------------------=!
|
||||
!
|
||||
! ... this module contains all basic variables that controls the
|
||||
! ... execution flow
|
||||
!! This module contains all basic variables that controls the execution flow.
|
||||
!----------------------------------------------
|
||||
!
|
||||
USE kinds
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
!------------------------------------------------------------------------------!
|
||||
MODULE electrons_base
|
||||
!------------------------------------------------------------------------------!
|
||||
|
||||
!! Variables and routines related to electronic configuration.
|
||||
USE kinds, ONLY: DP
|
||||
#if defined (__CUDA)
|
||||
USE cudafor
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
!==-----------------------------------------------------------------------==!
|
||||
MODULE environment
|
||||
!==-----------------------------------------------------------------------==!
|
||||
|
||||
!! Environment management.
|
||||
USE kinds, ONLY: DP
|
||||
USE io_files, ONLY: crash_file, nd_nmbr
|
||||
USE io_global, ONLY: stdout, meta_ionode
|
||||
|
|
|
@ -22,16 +22,17 @@
|
|||
!SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
|
||||
!Contains both the functions that transmit data to the socket and read the data
|
||||
!back out again once finished, and the function which opens the socket initially.
|
||||
|
||||
!Functions:
|
||||
! open_socket: Opens a socket with the required host server, socket type and
|
||||
! port number.
|
||||
! write_buffer: Writes a string to the socket.
|
||||
! read_buffer: Reads data from the socket.
|
||||
|
||||
MODULE F90SOCKETS
|
||||
!! Contains both the functions that transmit data to the socket and read the data
|
||||
!! back out again once finished, and the function which opens the socket initially.
|
||||
!! Functions:
|
||||
!
|
||||
!! * \(\texttt{open_socket}\): Opens a socket with the required host server, socket
|
||||
!! type and port number;
|
||||
!! * \(\texttt{write_buffer}\): Writes a string to the socket;
|
||||
!! * \(\texttt{read_buffer}\): Reads data from the socket.
|
||||
|
||||
USE ISO_C_BINDING
|
||||
|
||||
IMPLICIT NONE
|
||||
|
|
|
@ -572,7 +572,7 @@ MODULE input_parameters
|
|||
|
||||
REAL(DP) :: esm_w = 0.0_DP
|
||||
!! position of effective screening medium from z0=L_z/2 [a.u.]
|
||||
!! note: z1 is given by \(\z1=z0+\text{abs}(\text{esm_w})\)
|
||||
!! note: z1 is given by \(z1=z0+\text{abs}(\text{esm_w})\)
|
||||
|
||||
REAL(DP) :: esm_a = 0.0_DP
|
||||
!! smoothness parameter for smooth-ESM \(\exp{2a(z-z1)}\)
|
||||
|
@ -589,7 +589,7 @@ MODULE input_parameters
|
|||
|
||||
INTEGER :: esm_debug_gpmax = 0
|
||||
!! if esm_debug is TRUE, calculate \(\text{v_hartree}\) and \(\text{v_local}\)
|
||||
!! for \(\text{abs}(gp)<=\text{esm_debug_gpmax}\) (gp is integer and has
|
||||
!! for \(\text{abs}(gp)\leq\text{esm_debug_gpmax}\) (gp is integer and has
|
||||
!! \(\text{tpiba}\) unit)
|
||||
|
||||
LOGICAL :: lgcscf = .FALSE.
|
||||
|
@ -715,17 +715,17 @@ MODULE input_parameters
|
|||
!! meaningful only if electron\_dynamics = 'damp'.
|
||||
!! Damping frequency times delta t, optimal values could be
|
||||
!! calculated with the formula:
|
||||
!! \(\sqrt{0.5*\log{(E1-E2)/(E2-E3)}}\)
|
||||
!! \(\sqrt{0.5\log{(E1-E2)/(E2-E3)}}\)
|
||||
!! where E1 E2 E3 are successive values of the DFT total energy
|
||||
!! in a steepest descent simulations
|
||||
|
||||
CHARACTER(len=80) :: electron_velocities = 'default'
|
||||
!! electron_velocities:
|
||||
!! electron velocities:
|
||||
!! -'zero' restart setting electronic velocities to zero;
|
||||
!! -'default' restart using electronic velocities of the previous run.
|
||||
|
||||
CHARACTER(len=80) :: electron_temperature = 'not_controlled'
|
||||
!! electron_temperature:
|
||||
!! electron temperature:
|
||||
!! -'nose' control electronic temperature using Nose thermostat
|
||||
!! see parameter "fnosee" and "ekincw";
|
||||
!! -'rescaling' control electronic temperature via velocities rescaling;
|
||||
|
@ -754,7 +754,7 @@ MODULE input_parameters
|
|||
REAL(DP) :: grease = 0.0_DP
|
||||
!! a number smaller or equal to 1, very close to 1: the damping in
|
||||
!! electronic damped dynamics is multiplied at each time step by
|
||||
!! "grease" (avoids overdamping close to convergence: Obsolete ?).
|
||||
!! "grease" (avoids overdamping close to convergence: obsolete?).
|
||||
!! grease = 1 : normal damped dynamics. Used only in CP
|
||||
|
||||
INTEGER :: diis_size = 0
|
||||
|
@ -777,7 +777,7 @@ MODULE input_parameters
|
|||
!! meaningful only with electron\_dynamics='diis'. Convergence threshold
|
||||
!! for wave function. This criterion is satisfied when the maximum change
|
||||
!! in the wave functions component between two diis steps is less than
|
||||
!! this threshold. Default value is \(\text{ekin\_conv\_thr}\).
|
||||
!! this threshold. Default value is \(\text{ekin_conv_thr}\).
|
||||
|
||||
REAL(DP) :: diis_delt = 1.0_DP
|
||||
!! meaningful only with electron\_dynamics='diis'.
|
||||
|
@ -787,7 +787,7 @@ MODULE input_parameters
|
|||
INTEGER :: diis_maxstep = 100
|
||||
!! meaningful only with electron_dynamics='diis'.
|
||||
!! Maximum number of iteration in the diis minimization.
|
||||
!! Default is \(\text{electron\_maxstep}.
|
||||
!! Default is \(\text{electron_maxstep}\).
|
||||
|
||||
LOGICAL :: diis_rot = .false.
|
||||
!! meaningful only with electron\_dynamics='diis'.
|
||||
|
|
|
@ -8,7 +8,8 @@
|
|||
!------------------------------------------------------------------------------!
|
||||
MODULE ions_base
|
||||
!------------------------------------------------------------------------------!
|
||||
|
||||
!! Ions configuration management.
|
||||
!
|
||||
USE kinds, ONLY : DP
|
||||
USE parameters, ONLY : ntypx
|
||||
USE uspp_param, ONLY : nsp
|
||||
|
@ -577,8 +578,8 @@
|
|||
|
||||
SUBROUTINE ions_reference_positions( tau )
|
||||
|
||||
! Calculate the real position of atoms relative to the center of mass (cdm)
|
||||
! and store them in taui
|
||||
!! Calculate the real position of atoms relative to the center of mass (cdm)
|
||||
!! and store them in \(\text{taui}\).
|
||||
! cdmi: initial position of the center of mass (cdm) in cartesian coor.
|
||||
|
||||
IMPLICIT NONE
|
||||
|
@ -601,8 +602,8 @@
|
|||
|
||||
SUBROUTINE ions_displacement( dis, tau, nsp, nat, ityp )
|
||||
|
||||
! Calculate the sum of the quadratic displacements of the atoms in the ref.
|
||||
! of cdm respect to the initial positions.
|
||||
!! Calculate the sum of the quadratic displacements of the atoms in the ref.
|
||||
!! of cdm with respect to the initial positions.
|
||||
! taui: initial positions in real units in the ref. of cdm
|
||||
|
||||
! ----------------------------------------------
|
||||
|
|
|
@ -4,10 +4,11 @@
|
|||
! in the root directory of the present distribution,
|
||||
! or http://www.gnu.org/copyleft/gpl.txt .
|
||||
!
|
||||
! To be used in conjunction with the libmbd library
|
||||
! library by JH, this wrapper by SG (Luxembourg)
|
||||
|
||||
MODULE libmbd_interface
|
||||
|
||||
!! To be used in conjunction with the \(\texttt{libmbd}\) library.
|
||||
! library by JH, this wrapper by SG (Luxembourg)
|
||||
|
||||
USE kinds, ONLY : DP
|
||||
USE io_global, ONLY : stdout !output file
|
||||
|
|
|
@ -126,11 +126,11 @@ END MODULE mp_bands
|
|||
!
|
||||
!
|
||||
MODULE mp_bands_TDDFPT
|
||||
!
|
||||
! NB: These two variables used to be in mp_bands and are loaded from mp_global in TDDFPT
|
||||
! I think they would better stay in a TDDFPT specific module but leave them here not to
|
||||
! be too invasive on a code I don't know well. SdG
|
||||
!
|
||||
!! Starting and ending band indexes in bgrp parallelization.
|
||||
! NB: These two variables used to be in mp_bands and are loaded from mp_global in TDDFPT
|
||||
! I think they would better stay in a TDDFPT specific module but leave them here not to
|
||||
! be too invasive on a code I don't know well. SdG
|
||||
!
|
||||
INTEGER :: ibnd_start = 0
|
||||
!! starting band index used in bgrp parallelization.
|
||||
INTEGER :: ibnd_end = 0
|
||||
|
|
|
@ -7,11 +7,10 @@
|
|||
!----------------------------------------------------------------------------
|
||||
MODULE qexsd_init
|
||||
!----------------------------------------------------------------------------
|
||||
!! This module contains some common subroutines used to copy data used by
|
||||
!! the Quantum ESPRESSO package into XML format.
|
||||
!
|
||||
! This module contains some common subroutines used to copy data used by
|
||||
! the Quantum ESPRESSO package into XML format
|
||||
!
|
||||
! Written by Paolo Giannozzi, building upon pre-existing code qexsd.f90
|
||||
!! Written by Paolo Giannozzi, building upon pre-existing code qexsd.f90.
|
||||
!
|
||||
!
|
||||
USE kinds, ONLY : DP
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
!==-----------------------------------------------------------------------==!
|
||||
MODULE qmmm
|
||||
!==---------------------------------------------------------------------==!
|
||||
!! QM/MM approach management.
|
||||
USE io_global, ONLY : ionode, ionode_id, stdout
|
||||
USE mp_world, ONLY : world_comm
|
||||
USE mp_pools, ONLY : intra_pool_comm
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
#define DIMS5D(arr) lbound(arr,1):ubound(arr,1),lbound(arr,2):ubound(arr,2),lbound(arr,3):ubound(arr,3),lbound(arr,4):ubound(arr,4),lbound(arr,5):ubound(arr,5)
|
||||
!=----------------------------------------------------------------------------=!
|
||||
MODULE gvect_gpum
|
||||
!! Module \(\texttt{gvect}\), GPU double.
|
||||
!=----------------------------------------------------------------------------=!
|
||||
USE gvect, ONLY : gg_d, g_d, mill_d, eigts1_d, eigts2_d, eigts3_d
|
||||
IMPLICIT NONE
|
||||
|
|
|
@ -166,6 +166,8 @@ END MODULE
|
|||
#else
|
||||
|
||||
MODULE set_signal
|
||||
!! This module is a Fortran 2003 interface to the customize_signals.c C file
|
||||
!! Compatible with Intel/PGI/Gcc(>=4.3) compilers
|
||||
|
||||
USE io_global, ONLY : stdout
|
||||
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
! or http://www.gnu.org/copyleft/gpl.txt .
|
||||
!
|
||||
MODULE space_group
|
||||
!! Space groups, symmetries, Bravais lattices.
|
||||
USE kinds, ONLY: DP
|
||||
IMPLICIT NONE
|
||||
|
||||
|
@ -22,10 +23,10 @@ MODULE space_group
|
|||
|
||||
SUBROUTINE sym_brav(space_group_number,sym_n,ibrav)
|
||||
|
||||
! Sym_brav ->
|
||||
! input spacegroup number
|
||||
! output sym_n = symmetries number
|
||||
! ibrav = Bravais lattice number
|
||||
!! Sym\_brav:
|
||||
!! - input: spacegroup number;
|
||||
!! - output: symmetries number (\(\text{sym_n}\)), Bravais
|
||||
!! lattice number (\(\text{ibrav}\))
|
||||
|
||||
INTEGER, INTENT(IN) :: space_group_number
|
||||
INTEGER, INTENT(OUT) :: sym_n,ibrav
|
||||
|
|
|
@ -9,6 +9,8 @@
|
|||
!--------------------------------------------------------------------
|
||||
|
||||
module sph_bes_gpum
|
||||
!! Spherical Bessel functions - GPU version.
|
||||
|
||||
contains
|
||||
#if defined(__CUDA)
|
||||
attributes(DEVICE) subroutine sph_bes_gpu (msh, r, q, l, jl)
|
||||
|
|
Loading…
Reference in New Issue