Ford-modules part 26

This commit is contained in:
fabrizio22 2021-03-16 19:18:59 +01:00
parent db49d874eb
commit ff2990b868
14 changed files with 48 additions and 41 deletions

View File

@ -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

View File

@ -8,7 +8,7 @@
!------------------------------------------------------------------------------!
MODULE electrons_base
!------------------------------------------------------------------------------!
!! Variables and routines related to electronic configuration.
USE kinds, ONLY: DP
#if defined (__CUDA)
USE cudafor

View File

@ -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

View File

@ -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

View File

@ -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'.

View File

@ -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
! ----------------------------------------------

View File

@ -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

View 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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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)