mirror of
https://github.com/cp2k/cp2k.git
synced 2026-07-28 22:25:32 -04:00
Make pointers contiguous to fix gcc8 (#2319)
This commit is contained in:
parent
b41f84f0a6
commit
c2dc0ed422
38 changed files with 234 additions and 165 deletions
|
|
@ -33,6 +33,9 @@ MODULE cp_array_utils
|
|||
PUBLIC :: cp_1d_${nametype}$_p_type, &
|
||||
cp_2d_${nametype}$_p_type, &
|
||||
cp_3d_${nametype}$_p_type, &
|
||||
cp_1d_${nametype}$_cp_type, &
|
||||
cp_2d_${nametype}$_cp_type, &
|
||||
cp_3d_${nametype}$_cp_type, &
|
||||
cp_1d_${nametype}$_guarantee_size, &
|
||||
cp_1d_${nametype}$_write, &
|
||||
cp_2d_${nametype}$_write, &
|
||||
|
|
@ -84,6 +87,36 @@ MODULE cp_array_utils
|
|||
${type1}$, dimension(:, :, :), pointer :: array
|
||||
end type cp_3d_${nametype1}$_p_type
|
||||
|
||||
! **************************************************************************************************
|
||||
!> \brief represent a pointer to a contiguous 1d array
|
||||
!> \par History
|
||||
!> 02.2003 created [fawzi]
|
||||
!> \author fawzi
|
||||
! **************************************************************************************************
|
||||
type cp_1d_${nametype1}$_cp_type
|
||||
${type1}$, dimension(:), contiguous, pointer :: array
|
||||
end type cp_1d_${nametype1}$_cp_type
|
||||
|
||||
! **************************************************************************************************
|
||||
!> \brief represent a pointer to a contiguous 2d array
|
||||
!> \par History
|
||||
!> 02.2003 created [fawzi]
|
||||
!> \author fawzi
|
||||
! **************************************************************************************************
|
||||
type cp_2d_${nametype1}$_cp_type
|
||||
${type1}$, dimension(:, :), contiguous, pointer :: array
|
||||
end type cp_2d_${nametype1}$_cp_type
|
||||
|
||||
! **************************************************************************************************
|
||||
!> \brief represent a pointer to a contiguous 3d array
|
||||
!> \par History
|
||||
!> 02.2003 created [fawzi]
|
||||
!> \author fawzi
|
||||
! **************************************************************************************************
|
||||
type cp_3d_${nametype1}$_cp_type
|
||||
${type1}$, dimension(:, :, :), contiguous, pointer :: array
|
||||
end type cp_3d_${nametype1}$_cp_type
|
||||
|
||||
#:endfor
|
||||
|
||||
CONTAINS
|
||||
|
|
|
|||
|
|
@ -10,19 +10,19 @@
|
|||
MODULE cp_linked_list_pw
|
||||
USE kinds, ONLY: dp
|
||||
USE pw_types, ONLY: pw_type, pw_p_type
|
||||
USE cp_array_utils, ONLY: cp_3d_r_p_type
|
||||
USE cp_array_utils, ONLY: cp_3d_r_cp_type
|
||||
USE realspace_grid_types, ONLY: realspace_grid_type, realspace_grid_p_type
|
||||
#include "../base/base_uses.f90"
|
||||
|
||||
#:mute
|
||||
#:set nametype1 = ['3d_r', 'pw', 'rs']
|
||||
#:set type1 = ['REAL(kind=dp),dimension(:,:,:),pointer', 'type(pw_type),pointer', 'type(realspace_grid_type),pointer']
|
||||
#:set type1 = ['REAL(kind=dp),dimension(:,:,:),pointer,contiguous', 'type(pw_type),pointer', 'type(realspace_grid_type),pointer']
|
||||
#:set type1in = type1
|
||||
#:set type1out = type1
|
||||
|
||||
#:set eq = ['=>','=>','=>','=>']
|
||||
#:set arrayeq = eq
|
||||
#:set type1arrayEl = ['type(cp_3d_r_p_type)','type(pw_p_type)','type(realspace_grid_p_type)']
|
||||
#:set type1arrayEl = ['type(cp_3d_r_cp_type)','type(pw_p_type)','type(realspace_grid_p_type)']
|
||||
|
||||
#:set arrayEl = ['%array','%pw','%rs_grid']
|
||||
|
||||
|
|
|
|||
|
|
@ -170,7 +170,8 @@ CONTAINS
|
|||
SUBROUTINE pw_pool_flush_cache(pool)
|
||||
TYPE(pw_pool_type), POINTER :: pool
|
||||
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: array_att
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: array_att
|
||||
TYPE(cp_logger_type), POINTER :: logger
|
||||
TYPE(cp_sll_3d_r_type), POINTER :: array_iterator
|
||||
TYPE(cp_sll_pw_type), POINTER :: iterator
|
||||
|
|
@ -306,7 +307,8 @@ CONTAINS
|
|||
CHARACTER(len=*), PARAMETER :: routineN = 'pw_pool_create_pw'
|
||||
|
||||
INTEGER :: handle
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: cr3d_ptr
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: cr3d_ptr
|
||||
TYPE(cp_logger_type), POINTER :: logger
|
||||
TYPE(pw_type), POINTER :: el
|
||||
|
||||
|
|
@ -554,7 +556,8 @@ CONTAINS
|
|||
! **************************************************************************************************
|
||||
SUBROUTINE pw_pool_give_back_cr3d(pw_pool, cr3d, accept_non_compatible)
|
||||
TYPE(pw_pool_type), POINTER :: pw_pool
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: cr3d
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: cr3d
|
||||
LOGICAL, INTENT(in), OPTIONAL :: accept_non_compatible
|
||||
|
||||
LOGICAL :: compatible, my_accept_non_compatible
|
||||
|
|
|
|||
|
|
@ -123,8 +123,8 @@ CONTAINS
|
|||
TYPE(pw_grid_type), INTENT(IN), POINTER :: pw_grid
|
||||
INTEGER, INTENT(in) :: use_data
|
||||
INTEGER, INTENT(in), OPTIONAL :: in_space
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), INTENT(IN), &
|
||||
OPTIONAL, POINTER :: cr3d_ptr
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
INTENT(IN), OPTIONAL, POINTER :: cr3d_ptr
|
||||
|
||||
CHARACTER(len=*), PARAMETER :: routineN = 'pw_create'
|
||||
|
||||
|
|
|
|||
|
|
@ -492,11 +492,12 @@ CONTAINS
|
|||
LOGICAL :: gradient_functional, lsd, lsd_singlets, &
|
||||
my_tddft, paw_atom, tau_f
|
||||
REAL(KIND=dp) :: density_cut, gradient_cut, rtot, tau_cut
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: vxc_h, vxc_s
|
||||
REAL(KIND=dp), DIMENSION(1, 1) :: rtau
|
||||
REAL(KIND=dp), DIMENSION(1, 1, 1, 1) :: rrho
|
||||
REAL(KIND=dp), DIMENSION(:, :), POINTER :: rho1_h, rho1_s, rho_h, rho_s, tau1_h, &
|
||||
tau1_s, tau_h, tau_s, weight
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: vxc_h, vxc_s
|
||||
REAL(KIND=dp), DIMENSION(:, :, :, :), POINTER :: drho1_h, drho1_s, drho_h, drho_s, vxg_h, &
|
||||
vxg_s
|
||||
TYPE(atomic_kind_type), DIMENSION(:), POINTER :: atomic_kind_set
|
||||
|
|
|
|||
22
src/xc/xc.F
22
src/xc/xc.F
|
|
@ -16,7 +16,7 @@
|
|||
! **************************************************************************************************
|
||||
MODULE xc
|
||||
#:include 'xc.fypp'
|
||||
USE cp_array_utils, ONLY: cp_3d_r_p_type
|
||||
USE cp_array_utils, ONLY: cp_3d_r_cp_type
|
||||
USE cp_linked_list_xc_deriv, ONLY: cp_sll_xc_deriv_next, &
|
||||
cp_sll_xc_deriv_type
|
||||
USE cp_log_handling, ONLY: cp_get_default_logger, &
|
||||
|
|
@ -1685,7 +1685,7 @@ CONTAINS
|
|||
tau_a, tau_b, tau, tau1, tau1a, tau1b, laplace, laplace1, &
|
||||
laplacea, laplaceb, laplace1a, laplace1b, &
|
||||
laplace2, laplace2a, laplace2b, deriv_data
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(3) :: drho, drho1, drho1a, drho1b, drhoa, drhob
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(3) :: drho, drho1, drho1a, drho1b, drhoa, drhob
|
||||
TYPE(pw_type) :: v_drho, v_drhoa, v_drhob
|
||||
TYPE(pw_p_type), DIMENSION(:), POINTER :: rho_g, rho_r, vxc_rho, &
|
||||
tau_r, vxc_tau
|
||||
|
|
@ -2363,7 +2363,7 @@ CONTAINS
|
|||
TYPE(xc_derivative_set_type), INTENT(IN) :: deriv_set
|
||||
INTEGER, DIMENSION(:), INTENT(in) :: description
|
||||
TYPE(pw_type), INTENT(IN) :: virial_pw
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(3), INTENT(IN) :: drho, drho1
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(3), INTENT(IN) :: drho, drho1
|
||||
REAL(KIND=dp), DIMENSION(3, 3), INTENT(INOUT) :: virial_xc
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), INTENT(IN) :: norm_drho
|
||||
REAL(KIND=dp), INTENT(IN) :: gradient_cut
|
||||
|
|
@ -2677,7 +2677,7 @@ CONTAINS
|
|||
norm_drhob, rho1, rho1a, rho1b, &
|
||||
tau1, tau1a, tau1b, laplace1, laplace1a, laplace1b, &
|
||||
rho, rhoa, rhob
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(3) :: drho, drho1, drho1a, drho1b, drhoa, drhob
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(3) :: drho, drho1, drho1a, drho1b, drhoa, drhob
|
||||
TYPE(pw_p_type), DIMENSION(:), ALLOCATABLE :: v_drhoa, v_drhob, v_drho, v_laplace
|
||||
TYPE(pw_p_type), DIMENSION(:, :), ALLOCATABLE :: v_drho_r
|
||||
TYPE(pw_type) :: tmp_g, virial_pw, vxc_g
|
||||
|
|
@ -3120,7 +3120,7 @@ CONTAINS
|
|||
! **************************************************************************************************
|
||||
SUBROUTINE virial_drho_drho1(virial_pw, drho, drho1, deriv_data, virial_xc)
|
||||
TYPE(pw_type), INTENT(IN) :: virial_pw
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(3), INTENT(IN) :: drho, drho1
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(3), INTENT(IN) :: drho, drho1
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), INTENT(IN) :: deriv_data
|
||||
REAL(KIND=dp), DIMENSION(3, 3), INTENT(INOUT) :: virial_xc
|
||||
|
||||
|
|
@ -3151,7 +3151,7 @@ CONTAINS
|
|||
! **************************************************************************************************
|
||||
SUBROUTINE virial_drho_drho(virial_pw, drho, v_drho, virial_xc)
|
||||
TYPE(pw_type), INTENT(IN) :: virial_pw
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(3), INTENT(IN) :: drho
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(3), INTENT(IN) :: drho
|
||||
TYPE(pw_type), INTENT(IN) :: v_drho
|
||||
REAL(KIND=dp), DIMENSION(3, 3), INTENT(INOUT) :: virial_xc
|
||||
|
||||
|
|
@ -3307,7 +3307,7 @@ CONTAINS
|
|||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(KIND=dp) :: drho_cutoff
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: norm_drho, norm_drhoa, norm_drhob
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(3) :: drho, drhoa, drhob
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(3) :: drho, drhoa, drhob
|
||||
TYPE(cp_sll_xc_deriv_type), POINTER :: pos
|
||||
TYPE(xc_derivative_type), POINTER :: deriv_att
|
||||
|
||||
|
|
@ -3397,8 +3397,8 @@ CONTAINS
|
|||
!> \param drhob ...
|
||||
! **************************************************************************************************
|
||||
SUBROUTINE calc_drho_from_ab(drho, drhoa, drhob)
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(3), INTENT(OUT) :: drho
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(3), INTENT(IN) :: drhoa, drhob
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(3), INTENT(OUT) :: drho
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(3), INTENT(IN) :: drhoa, drhob
|
||||
|
||||
CHARACTER(len=*), PARAMETER :: routineN = 'calc_drho_from_ab'
|
||||
|
||||
|
|
@ -3429,7 +3429,7 @@ CONTAINS
|
|||
SUBROUTINE prepare_dr1dr(dr1dr, drho, drho1)
|
||||
REAL(KIND=dp), ALLOCATABLE, DIMENSION(:, :, :), &
|
||||
INTENT(OUT) :: dr1dr
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(3), INTENT(IN) :: drho, drho1
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(3), INTENT(IN) :: drho, drho1
|
||||
|
||||
CHARACTER(len=*), PARAMETER :: routineN = 'prepare_dr1dr'
|
||||
|
||||
|
|
@ -3466,7 +3466,7 @@ CONTAINS
|
|||
SUBROUTINE prepare_dr1dr_ab(dr1dr, drhoa, drhob, drho1a, drho1b, fac)
|
||||
REAL(KIND=dp), ALLOCATABLE, DIMENSION(:, :, :), &
|
||||
INTENT(OUT) :: dr1dr
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(3), INTENT(IN) :: drhoa, drhob, drho1a, drho1b
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(3), INTENT(IN) :: drhoa, drhob, drho1a, drho1b
|
||||
REAL(KIND=dp), INTENT(IN) :: fac
|
||||
|
||||
CHARACTER(len=*), PARAMETER :: routineN = 'prepare_dr1dr_ab'
|
||||
|
|
|
|||
|
|
@ -352,7 +352,7 @@ CONTAINS
|
|||
TYPE(section_vals_type), POINTER :: xc_section
|
||||
TYPE(xc_derivative_set_type), INTENT(INOUT) :: deriv_set
|
||||
REAL(dp), DIMENSION(:, :), POINTER :: w
|
||||
REAL(dp), DIMENSION(:, :, :), POINTER :: vxc
|
||||
REAL(dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: vxc
|
||||
REAL(dp), DIMENSION(:, :, :, :), POINTER :: vxg
|
||||
|
||||
CHARACTER(LEN=*), PARAMETER :: routineN = 'xc_2nd_deriv_of_r'
|
||||
|
|
|
|||
|
|
@ -260,9 +260,9 @@ CONTAINS
|
|||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_norm_drho, epsilon_rho, scale_c, &
|
||||
scale_x
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndrho, e_ndrho_ndrho, &
|
||||
e_ndrho_ndrho_ndrho, e_ndrho_ndrho_rho, e_ndrho_rho, e_ndrho_rho_rho, e_rho, e_rho_rho, &
|
||||
e_rho_rho_rho, norm_drho, rho
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndrho, &
|
||||
e_ndrho_ndrho, e_ndrho_ndrho_ndrho, e_ndrho_ndrho_rho, e_ndrho_rho, e_ndrho_rho_rho, &
|
||||
e_rho, e_rho_rho, e_rho_rho_rho, norm_drho, rho
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
@ -371,9 +371,9 @@ CONTAINS
|
|||
INTEGER :: handle, npoints, param
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_rho, scale_c, scale_x
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndra, e_ndra_ndra, e_ndra_ndrb, &
|
||||
e_ndra_ra, e_ndra_rb, e_ndrb, e_ndrb_ndrb, e_ndrb_ra, e_ndrb_rb, e_ra, e_ra_ra, e_ra_rb, &
|
||||
e_rb, e_rb_rb, norm_drhoa, norm_drhob, rhoa, rhob
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndra, e_ndra_ndra, &
|
||||
e_ndra_ndrb, e_ndra_ra, e_ndra_rb, e_ndrb, e_ndrb_ndrb, e_ndrb_ra, e_ndrb_rb, e_ra, &
|
||||
e_ra_ra, e_ra_rb, e_rb, e_rb_rb, norm_drhoa, norm_drhob, rhoa, rhob
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
|
|||
|
|
@ -156,7 +156,7 @@ CONTAINS
|
|||
INTEGER :: handle, m, npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(KIND=dp) :: epsilon_rho
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: e_0, e_ndrho, e_ndrho_ndrho, &
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: e_0, e_ndrho, e_ndrho_ndrho, &
|
||||
e_ndrho_ndrho_ndrho, e_rho, e_rho_ndrho, e_rho_ndrho_ndrho, e_rho_rho, e_rho_rho_ndrho, &
|
||||
e_rho_rho_rho, grho, rho, rho13
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
|
@ -245,7 +245,8 @@ CONTAINS
|
|||
INTEGER :: handle, npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(KIND=dp) :: epsilon_rho
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: e_0, e_ndrhoa, e_ndrhob, e_rhoa, e_rhob, &
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: e_0, e_ndrhoa, e_ndrhob, e_rhoa, e_rhob, &
|
||||
norm_drhoa, norm_drhob, rhoa, &
|
||||
rhoa_1_3, rhob, rhob_1_3
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
|
|
|||
|
|
@ -77,7 +77,8 @@ CONTAINS
|
|||
|
||||
INTEGER, ALLOCATABLE, DIMENSION(:) :: std_deriv_desc
|
||||
LOGICAL :: my_allocate_deriv
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: cr3d_ptr
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: cr3d_ptr
|
||||
TYPE(cp_sll_xc_deriv_type), POINTER :: pos
|
||||
TYPE(xc_derivative_type), POINTER :: deriv_att
|
||||
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ MODULE xc_derivative_types
|
|||
! **************************************************************************************************
|
||||
TYPE xc_derivative_type
|
||||
INTEGER, DIMENSION(:), POINTER :: split_desc => NULL()
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: deriv_data => NULL()
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER, CONTIGUOUS :: deriv_data => NULL()
|
||||
END TYPE xc_derivative_type
|
||||
|
||||
! **************************************************************************************************
|
||||
|
|
@ -59,7 +59,8 @@ CONTAINS
|
|||
|
||||
TYPE(xc_derivative_type) :: derivative
|
||||
INTEGER, DIMENSION(:), INTENT(in) :: desc
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: cr3d_ptr
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: cr3d_ptr
|
||||
|
||||
CALL create_split_desc(desc, derivative%split_desc)
|
||||
derivative%deriv_data => cr3d_ptr
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
! **************************************************************************************************
|
||||
MODULE xc_exchange_gga
|
||||
|
||||
USE cp_array_utils, ONLY: cp_3d_r_p_type
|
||||
USE cp_array_utils, ONLY: cp_3d_r_cp_type
|
||||
USE cp_log_handling, ONLY: cp_to_string
|
||||
USE kinds, ONLY: dp
|
||||
USE mathconstants, ONLY: pi
|
||||
|
|
@ -171,10 +171,10 @@ CONTAINS
|
|||
REAL(KIND=dp) :: drho_cutoff, rho_cutoff
|
||||
REAL(KIND=dp), ALLOCATABLE, DIMENSION(:) :: s
|
||||
REAL(KIND=dp), ALLOCATABLE, DIMENSION(:, :) :: fs
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: e_0, e_ndrho, e_ndrho_ndrho, &
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: e_0, e_ndrho, e_ndrho_ndrho, &
|
||||
e_ndrho_ndrho_ndrho, e_rho, e_rho_ndrho, e_rho_ndrho_ndrho, e_rho_rho, e_rho_rho_ndrho, &
|
||||
e_rho_rho_rho
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(2) :: norm_drho, rho, rho_1_3
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(2) :: norm_drho, rho, rho_1_3
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
|
|||
|
|
@ -123,7 +123,8 @@ CONTAINS
|
|||
INTEGER :: npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_rho
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: e_0, e_ndrho, e_rho, norm_drho, rho
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: e_0, e_ndrho, e_rho, norm_drho, rho
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
NULLIFY (e_0, e_ndrho, e_rho, norm_drho, rho)
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@
|
|||
! **************************************************************************************************
|
||||
MODULE xc_ke_gga
|
||||
|
||||
USE cp_array_utils, ONLY: cp_3d_r_p_type
|
||||
USE cp_array_utils, ONLY: cp_3d_r_cp_type
|
||||
USE kinds, ONLY: dp
|
||||
USE mathconstants, ONLY: pi
|
||||
USE xc_derivative_desc, ONLY: deriv_norm_drho,&
|
||||
|
|
@ -188,7 +188,7 @@ CONTAINS
|
|||
REAL(KIND=dp) :: drho_cutoff, rho_cutoff
|
||||
REAL(KIND=dp), ALLOCATABLE, DIMENSION(:) :: s
|
||||
REAL(KIND=dp), ALLOCATABLE, DIMENSION(:, :) :: fs
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: e_0, e_ndrho, e_ndrho_ndrho, &
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: e_0, e_ndrho, e_ndrho_ndrho, &
|
||||
e_ndrho_ndrho_ndrho, e_rho, e_rho_ndrho, e_rho_ndrho_ndrho, e_rho_rho, e_rho_rho_ndrho, &
|
||||
e_rho_rho_rho, grho, rho, rho13
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
|
@ -326,10 +326,10 @@ CONTAINS
|
|||
REAL(KIND=dp) :: rho_cutoff
|
||||
REAL(KIND=dp), ALLOCATABLE, DIMENSION(:) :: s
|
||||
REAL(KIND=dp), ALLOCATABLE, DIMENSION(:, :) :: fs
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: e_0, e_ndrho, e_ndrho_ndrho, &
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: e_0, e_ndrho, e_ndrho_ndrho, &
|
||||
e_ndrho_ndrho_ndrho, e_rho, e_rho_ndrho, e_rho_ndrho_ndrho, e_rho_rho, e_rho_rho_ndrho, &
|
||||
e_rho_rho_rho
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(2) :: norm_drho, rho, rho_1_3
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(2) :: norm_drho, rho, rho_1_3
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
|
|||
|
|
@ -555,11 +555,11 @@ CONTAINS
|
|||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
LOGICAL :: has_laplace, no_exc
|
||||
REAL(KIND=dp) :: epsilon_rho, epsilon_tau, func_scale
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_laplace_rho, &
|
||||
e_laplace_rho_laplace_rho, e_laplace_rho_tau, e_ndrho, &
|
||||
e_ndrho_laplace_rho, e_ndrho_ndrho, e_ndrho_rho, e_ndrho_tau, e_rho, &
|
||||
e_rho_laplace_rho, e_rho_rho, e_rho_rho_rho, e_rho_tau, e_tau, &
|
||||
e_tau_tau, laplace_rho, norm_drho, rho, tau
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: dummy, e_0, e_laplace_rho, &
|
||||
e_laplace_rho_laplace_rho, e_laplace_rho_tau, e_ndrho, &
|
||||
e_ndrho_laplace_rho, e_ndrho_ndrho, e_ndrho_rho, e_ndrho_tau, e_rho, &
|
||||
e_rho_laplace_rho, e_rho_rho, e_rho_rho_rho, e_rho_tau, e_tau, &
|
||||
e_tau_tau, laplace_rho, norm_drho, rho, tau
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
TYPE(xc_f03_func_t) :: xc_func
|
||||
TYPE(xc_f03_func_info_t) :: xc_info
|
||||
|
|
@ -790,25 +790,25 @@ CONTAINS
|
|||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
LOGICAL :: has_laplace, no_exc
|
||||
REAL(KIND=dp) :: epsilon_rho, epsilon_tau, func_scale
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_laplace_rhoa, &
|
||||
e_laplace_rhoa_laplace_rhoa, e_laplace_rhoa_laplace_rhob, &
|
||||
e_laplace_rhoa_tau_a, e_laplace_rhoa_tau_b, e_laplace_rhob, &
|
||||
e_laplace_rhob_laplace_rhob, e_laplace_rhob_tau_a, &
|
||||
e_laplace_rhob_tau_b, e_ndrho, e_ndrho_laplace_rhoa, &
|
||||
e_ndrho_laplace_rhob, e_ndrho_ndrho, e_ndrho_ndrhoa, e_ndrho_ndrhob, &
|
||||
e_ndrho_rhoa, e_ndrho_rhob, e_ndrho_tau_a, e_ndrho_tau_b, e_ndrhoa, &
|
||||
e_ndrhoa_laplace_rhoa, e_ndrhoa_laplace_rhob, e_ndrhoa_ndrhoa, &
|
||||
e_ndrhoa_ndrhob, e_ndrhoa_rhoa, e_ndrhoa_rhob, e_ndrhoa_tau_a, &
|
||||
e_ndrhoa_tau_b, e_ndrhob
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: e_ndrhob_laplace_rhoa, &
|
||||
e_ndrhob_laplace_rhob, e_ndrhob_ndrhob, e_ndrhob_rhoa, e_ndrhob_rhob, &
|
||||
e_ndrhob_tau_a, e_ndrhob_tau_b, e_rhoa, e_rhoa_laplace_rhoa, &
|
||||
e_rhoa_laplace_rhob, e_rhoa_rhoa, e_rhoa_rhoa_rhoa, e_rhoa_rhoa_rhob, &
|
||||
e_rhoa_rhob, e_rhoa_rhob_rhob, e_rhoa_tau_a, e_rhoa_tau_b, e_rhob, &
|
||||
e_rhob_laplace_rhoa, e_rhob_laplace_rhob, e_rhob_rhob, &
|
||||
e_rhob_rhob_rhob, e_rhob_tau_a, e_rhob_tau_b, e_tau_a, e_tau_a_tau_a, &
|
||||
e_tau_a_tau_b, e_tau_b, e_tau_b_tau_b, laplace_rhoa, laplace_rhob, &
|
||||
norm_drho, norm_drhoa, norm_drhob, rhoa, rhob, tau_a, tau_b
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: dummy, e_0, e_laplace_rhoa, &
|
||||
e_laplace_rhoa_laplace_rhoa, e_laplace_rhoa_laplace_rhob, &
|
||||
e_laplace_rhoa_tau_a, e_laplace_rhoa_tau_b, e_laplace_rhob, &
|
||||
e_laplace_rhob_laplace_rhob, e_laplace_rhob_tau_a, &
|
||||
e_laplace_rhob_tau_b, e_ndrho, e_ndrho_laplace_rhoa, &
|
||||
e_ndrho_laplace_rhob, e_ndrho_ndrho, e_ndrho_ndrhoa, e_ndrho_ndrhob, &
|
||||
e_ndrho_rhoa, e_ndrho_rhob, e_ndrho_tau_a, e_ndrho_tau_b, e_ndrhoa, &
|
||||
e_ndrhoa_laplace_rhoa, e_ndrhoa_laplace_rhob, e_ndrhoa_ndrhoa, &
|
||||
e_ndrhoa_ndrhob, e_ndrhoa_rhoa, e_ndrhoa_rhob, e_ndrhoa_tau_a, &
|
||||
e_ndrhoa_tau_b, e_ndrhob
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: e_ndrhob_laplace_rhoa, &
|
||||
e_ndrhob_laplace_rhob, e_ndrhob_ndrhob, e_ndrhob_rhoa, e_ndrhob_rhob, &
|
||||
e_ndrhob_tau_a, e_ndrhob_tau_b, e_rhoa, e_rhoa_laplace_rhoa, &
|
||||
e_rhoa_laplace_rhob, e_rhoa_rhoa, e_rhoa_rhoa_rhoa, e_rhoa_rhoa_rhob, &
|
||||
e_rhoa_rhob, e_rhoa_rhob_rhob, e_rhoa_tau_a, e_rhoa_tau_b, e_rhob, &
|
||||
e_rhob_laplace_rhoa, e_rhob_laplace_rhob, e_rhob_rhob, &
|
||||
e_rhob_rhob_rhob, e_rhob_tau_a, e_rhob_tau_b, e_tau_a, e_tau_a_tau_a, &
|
||||
e_tau_a_tau_b, e_tau_b, e_tau_b_tau_b, laplace_rhoa, laplace_rhob, &
|
||||
norm_drho, norm_drhoa, norm_drhob, rhoa, rhob, tau_a, tau_b
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
TYPE(xc_f03_func_t) :: xc_func
|
||||
TYPE(xc_f03_func_info_t) :: xc_info
|
||||
|
|
|
|||
|
|
@ -131,9 +131,9 @@ CONTAINS
|
|||
INTEGER :: handle, npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_norm_drho, epsilon_rho, sc
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndrho, e_ndrho_ndrho, &
|
||||
e_ndrho_ndrho_rho, e_ndrho_rho, e_ndrho_rho_rho, e_rho, e_rho_rho, e_rho_rho_rho, &
|
||||
norm_drho, rho, rho_1_3
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndrho, &
|
||||
e_ndrho_ndrho, e_ndrho_ndrho_rho, e_ndrho_rho, e_ndrho_rho_rho, e_rho, e_rho_rho, &
|
||||
e_rho_rho_rho, norm_drho, rho, rho_1_3
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
@ -734,10 +734,10 @@ CONTAINS
|
|||
INTEGER :: handle, npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_drho, epsilon_rho, sc
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndr, e_ndr_ndr, e_ndr_ra, &
|
||||
e_ndr_rb, e_ndra, e_ndra_ndra, e_ndra_ra, e_ndra_rb, e_ndrb, e_ndrb_ndrb, e_ndrb_ra, &
|
||||
e_ndrb_rb, e_ra, e_ra_ra, e_ra_rb, e_rb, e_rb_rb, norm_drho, norm_drhoa, norm_drhob, &
|
||||
rhoa, rhob
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndr, e_ndr_ndr, &
|
||||
e_ndr_ra, e_ndr_rb, e_ndra, e_ndra_ndra, e_ndra_ra, e_ndra_rb, e_ndrb, e_ndrb_ndrb, &
|
||||
e_ndrb_ra, e_ndrb_rb, e_ra, e_ra_ra, e_ra_rb, e_rb, e_rb_rb, norm_drho, norm_drhoa, &
|
||||
norm_drhob, rhoa, rhob
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
|
|||
|
|
@ -132,7 +132,8 @@ CONTAINS
|
|||
INTEGER :: handle, npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_norm_drho, epsilon_rho, lambda
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndrho, e_rho, norm_drho, &
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: dummy, e_0, e_ndrho, e_rho, norm_drho, &
|
||||
rho, rho_1_3
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
|
|
@ -333,10 +334,10 @@ CONTAINS
|
|||
INTEGER :: handle, npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_rho, lambda
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndr, e_ndr_ndr, e_ndr_ra, &
|
||||
e_ndr_rb, e_ndra, e_ndra_ndra, e_ndra_ra, e_ndra_rb, e_ndrb, e_ndrb_ndrb, e_ndrb_ra, &
|
||||
e_ndrb_rb, e_ra, e_ra_ra, e_ra_rb, e_rb, e_rb_rb, norm_drho, norm_drhoa, norm_drhob, &
|
||||
rhoa, rhob
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndr, e_ndr_ndr, &
|
||||
e_ndr_ra, e_ndr_rb, e_ndra, e_ndra_ndra, e_ndra_ra, e_ndra_rb, e_ndrb, e_ndrb_ndrb, &
|
||||
e_ndrb_ra, e_ndrb_rb, e_ra, e_ra_ra, e_ra_rb, e_rb, e_rb_rb, norm_drho, norm_drhoa, &
|
||||
norm_drhob, rhoa, rhob
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@
|
|||
!> \author Joost VandeVondele [03.2004]
|
||||
! **************************************************************************************************
|
||||
MODULE xc_optx
|
||||
USE cp_array_utils, ONLY: cp_3d_r_p_type
|
||||
USE cp_array_utils, ONLY: cp_3d_r_cp_type
|
||||
USE input_section_types, ONLY: section_vals_type,&
|
||||
section_vals_val_get
|
||||
USE kinds, ONLY: dp
|
||||
|
|
@ -116,7 +116,8 @@ CONTAINS
|
|||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: a1, a2, epsilon_drho, epsilon_rho, gam, &
|
||||
sx
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: e_0, e_ndrho, e_rho, norm_drho, rho
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: e_0, e_ndrho, e_rho, norm_drho, rho
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
NULLIFY (e_0, e_ndrho, e_rho, norm_drho, rho)
|
||||
|
|
@ -174,8 +175,9 @@ CONTAINS
|
|||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: a1, a2, epsilon_drho, epsilon_rho, gam, &
|
||||
sx
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: e_0
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(2) :: e_ndrho, e_rho, ndrho, rho
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: e_0
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(2) :: e_ndrho, e_rho, ndrho, rho
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
NULLIFY (e_0)
|
||||
|
|
|
|||
|
|
@ -145,7 +145,8 @@ CONTAINS
|
|||
INTEGER :: n
|
||||
LOGICAL :: calc(0:4)
|
||||
REAL(KIND=dp), ALLOCATABLE, DIMENSION(:) :: rs
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: e_0, e_r, e_rr, e_rrr
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: e_0, e_r, e_rr, e_rrr
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
calc = .FALSE.
|
||||
|
|
@ -207,10 +208,11 @@ CONTAINS
|
|||
INTEGER :: i, j, k
|
||||
LOGICAL :: calc(0:4)
|
||||
REAL(KIND=dp) :: rhoa, rhob, rs
|
||||
REAL(KIND=dp), DIMENSION(4) :: fx
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: e_0, e_ra, e_rara, e_rarara, e_rararb, &
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: e_0, e_ra, e_rara, e_rarara, e_rararb, &
|
||||
e_rarb, e_rarbrb, e_rb, e_rbrb, &
|
||||
e_rbrbrb
|
||||
REAL(KIND=dp), DIMENSION(4) :: fx
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
calc = .FALSE.
|
||||
|
|
|
|||
|
|
@ -291,9 +291,9 @@ CONTAINS
|
|||
INTEGER :: handle, npoints, param
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_rho, scale_ec, scale_ex
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndrho, e_ndrho_ndrho, &
|
||||
e_ndrho_ndrho_ndrho, e_ndrho_ndrho_rho, e_ndrho_rho, e_ndrho_rho_rho, e_rho, e_rho_rho, &
|
||||
e_rho_rho_rho, norm_drho, rho
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndrho, &
|
||||
e_ndrho_ndrho, e_ndrho_ndrho_ndrho, e_ndrho_ndrho_rho, e_ndrho_rho, e_ndrho_rho_rho, &
|
||||
e_rho, e_rho_rho, e_rho_rho_rho, norm_drho, rho
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
@ -1337,9 +1337,9 @@ CONTAINS
|
|||
INTEGER :: handle, npoints, param
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_rho, scale_ec, scale_ex
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndr, e_ndr_ndr, e_ndr_ra, &
|
||||
e_ndr_rb, e_ndra, e_ndra_ndra, e_ndra_ra, e_ndrb, e_ndrb_ndrb, e_ndrb_rb, e_ra, e_ra_ra, &
|
||||
e_ra_rb, e_rb, e_rb_rb, norm_drho, norm_drhoa, norm_drhob, rhoa, rhob
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndr, e_ndr_ndr, &
|
||||
e_ndr_ra, e_ndr_rb, e_ndra, e_ndra_ndra, e_ndra_ra, e_ndrb, e_ndrb_ndrb, e_ndrb_rb, e_ra, &
|
||||
e_ra_ra, e_ra_rb, e_rb, e_rb_rb, norm_drho, norm_drhoa, norm_drhob, rhoa, rhob
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
|
|||
|
|
@ -129,7 +129,7 @@ CONTAINS
|
|||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(KIND=dp) :: drho_cutoff, rho_cutoff
|
||||
REAL(KIND=dp), ALLOCATABLE, DIMENSION(:) :: rs
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: e_0, e_ndrho, e_ndrho_ndrho, &
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: e_0, e_ndrho, e_ndrho_ndrho, &
|
||||
e_ndrho_ndrho_ndrho, e_rho, e_rho_ndrho, e_rho_ndrho_ndrho, e_rho_rho, e_rho_rho_ndrho, &
|
||||
e_rho_rho_rho, grho, rho
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
|
|
|||
|
|
@ -150,8 +150,8 @@ CONTAINS
|
|||
INTEGER :: npoints, timer_handle
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(KIND=dp) :: rho_cutoff
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_rho, e_rho_rho, &
|
||||
e_rho_rho_rho, rho
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: dummy, e_0, e_rho, e_rho_rho, &
|
||||
e_rho_rho_rho, rho
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, timer_handle)
|
||||
|
|
@ -280,8 +280,8 @@ CONTAINS
|
|||
INTEGER :: npoints, timer_handle
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(KIND=dp) :: rho_cutoff
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: a, b, dummy, e_0, ea, eaa, eaaa, eaab, &
|
||||
eab, eabb, eb, ebb, ebbb
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: a, b, dummy, e_0, ea, eaa, eaaa, eaab, &
|
||||
eab, eabb, eb, ebb, ebbb
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, timer_handle)
|
||||
|
|
|
|||
|
|
@ -146,7 +146,8 @@ CONTAINS
|
|||
INTEGER :: npoints, timer_handle
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(KIND=dp) :: rho_cutoff, sc
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_rho, e_rho_rho, &
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: dummy, e_0, e_rho, e_rho_rho, &
|
||||
e_rho_rho_rho, rho
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
|
|
@ -276,7 +277,8 @@ CONTAINS
|
|||
INTEGER :: npoints, timer_handle
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(KIND=dp) :: rho_cutoff, sc
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: a, b, dummy, e_0, ea, eaa, eaaa, eaab, &
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: a, b, dummy, e_0, ea, eaa, eaaa, eaab, &
|
||||
eab, eabb, ebb, ebbb
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@
|
|||
!> \author fawzi
|
||||
! **************************************************************************************************
|
||||
MODULE xc_rho_set_types
|
||||
USE cp_array_utils, ONLY: cp_3d_r_p_type
|
||||
USE cp_array_utils, ONLY: cp_3d_r_cp_type
|
||||
USE kinds, ONLY: dp
|
||||
USE pw_grid_types, ONLY: pw_grid_type
|
||||
USE pw_methods, ONLY: pw_copy, &
|
||||
|
|
@ -88,18 +88,18 @@ MODULE xc_rho_set_types
|
|||
REAL(kind=dp) :: rho_cutoff, drho_cutoff, tau_cutoff
|
||||
TYPE(xc_rho_cflags_type) :: owns, has
|
||||
! for spin restricted systems
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: rho
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(3) :: drho
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: norm_drho
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: rho_1_3
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: tau
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), CONTIGUOUS, POINTER :: rho
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(3) :: drho
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), CONTIGUOUS, POINTER :: norm_drho
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), CONTIGUOUS, POINTER :: rho_1_3
|
||||
REAL(kind=dp), DIMENSION(:, :, :), CONTIGUOUS, POINTER :: tau
|
||||
! for UNrestricted systems
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: rhoa, rhob
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(3) :: drhoa, drhob
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: norm_drhoa, norm_drhob
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: rhoa_1_3, rhob_1_3
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: tau_a, tau_b
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: laplace_rho, laplace_rhoa, laplace_rhob
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), CONTIGUOUS, POINTER :: rhoa, rhob
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(3) :: drhoa, drhob
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), CONTIGUOUS, POINTER :: norm_drhoa, norm_drhob
|
||||
REAL(kind=dp), DIMENSION(:, :, :), CONTIGUOUS, POINTER :: rhoa_1_3, rhob_1_3
|
||||
REAL(kind=dp), DIMENSION(:, :, :), CONTIGUOUS, POINTER :: tau_a, tau_b
|
||||
REAL(kind=dp), DIMENSION(:, :, :), CONTIGUOUS, POINTER :: laplace_rho, laplace_rhoa, laplace_rhob
|
||||
END TYPE xc_rho_set_type
|
||||
|
||||
CONTAINS
|
||||
|
|
@ -278,13 +278,13 @@ CONTAINS
|
|||
LOGICAL, INTENT(in), OPTIONAL :: can_return_null
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), OPTIONAL, &
|
||||
POINTER :: rho
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(3), OPTIONAL :: drho
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(3), OPTIONAL :: drho
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), OPTIONAL, &
|
||||
POINTER :: norm_drho, rhoa, rhob, norm_drhoa, &
|
||||
norm_drhob, rho_1_3, rhoa_1_3, &
|
||||
rhob_1_3, laplace_rho, laplace_rhoa, &
|
||||
laplace_rhob
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(3), OPTIONAL :: drhoa, drhob
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(3), OPTIONAL :: drhoa, drhob
|
||||
REAL(kind=dp), INTENT(out), OPTIONAL :: rho_cutoff, drho_cutoff, tau_cutoff
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), OPTIONAL, &
|
||||
POINTER :: tau, tau_a, tau_b
|
||||
|
|
@ -460,7 +460,7 @@ CONTAINS
|
|||
|
||||
SUBROUTINE xc_rho_set_recover_pw_low(rho_pw, rho, pw_grid, pw_pool, rhoa, rhob)
|
||||
TYPE(pw_type), POINTER :: rho_pw
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: rho
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER, CONTIGUOUS :: rho
|
||||
TYPE(pw_grid_type), POINTER, INTENT(IN) :: pw_grid
|
||||
TYPE(pw_pool_type), POINTER, INTENT(IN) :: pw_pool
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER, OPTIONAL :: rhoa, rhob
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@
|
|||
!> \author JGH (18.02.2002)
|
||||
! **************************************************************************************************
|
||||
MODULE xc_tfw
|
||||
USE cp_array_utils, ONLY: cp_3d_r_p_type
|
||||
USE cp_array_utils, ONLY: cp_3d_r_cp_type
|
||||
USE kinds, ONLY: dp
|
||||
USE xc_derivative_desc, ONLY: deriv_norm_drho,&
|
||||
deriv_norm_drhoa,&
|
||||
|
|
@ -141,8 +141,9 @@ CONTAINS
|
|||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(KIND=dp) :: epsilon_rho
|
||||
REAL(KIND=dp), ALLOCATABLE, DIMENSION(:) :: s
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: e_0, e_ndrho, e_ndrho_ndrho, e_rho, &
|
||||
e_rho_ndrho, e_rho_ndrho_ndrho, e_rho_rho, e_rho_rho_ndrho, e_rho_rho_rho, grho, r13, rho
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: e_0, e_ndrho, e_ndrho_ndrho, &
|
||||
e_rho, e_rho_ndrho, e_rho_ndrho_ndrho, e_rho_rho, e_rho_rho_ndrho, e_rho_rho_rho, grho, &
|
||||
r13, rho
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
@ -253,11 +254,12 @@ CONTAINS
|
|||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(KIND=dp) :: epsilon_rho
|
||||
REAL(KIND=dp), ALLOCATABLE, DIMENSION(:) :: s
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: e_0, e_ndrho, e_ndrho_ndrho, e_rho, &
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: e_0, e_ndrho, e_ndrho_ndrho, e_rho, &
|
||||
e_rho_ndrho, e_rho_ndrho_ndrho, &
|
||||
e_rho_rho, e_rho_rho_ndrho, &
|
||||
e_rho_rho_rho
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(2) :: norm_drho, rho, rho_1_3
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(2) :: norm_drho, rho, rho_1_3
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@
|
|||
!> \author JGH (18.02.2002)
|
||||
! **************************************************************************************************
|
||||
MODULE xc_thomas_fermi
|
||||
USE cp_array_utils, ONLY: cp_3d_r_p_type
|
||||
USE cp_array_utils, ONLY: cp_3d_r_cp_type
|
||||
USE kinds, ONLY: dp
|
||||
USE xc_derivative_desc, ONLY: deriv_rho,&
|
||||
deriv_rhoa,&
|
||||
|
|
@ -128,7 +128,8 @@ CONTAINS
|
|||
INTEGER :: handle, npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(KIND=dp) :: epsilon_rho
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: e_0, e_rho, e_rho_rho, e_rho_rho_rho, &
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: e_0, e_rho, e_rho_rho, e_rho_rho_rho, &
|
||||
r13, rho
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
|
|
@ -190,8 +191,9 @@ CONTAINS
|
|||
INTEGER :: handle, i, ispin, npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(KIND=dp) :: epsilon_rho
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: e_0, e_rho, e_rho_rho, e_rho_rho_rho
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(2) :: rho, rho_1_3
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: e_0, e_rho, e_rho_rho, e_rho_rho_rho
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(2) :: rho, rho_1_3
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
|
|||
|
|
@ -117,7 +117,8 @@ CONTAINS
|
|||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_rho, epsilon_tau, scale_ec, &
|
||||
scale_ex
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndrho, e_rho, e_tau, &
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: dummy, e_0, e_ndrho, e_rho, e_tau, &
|
||||
norm_drho, rho, tau
|
||||
TYPE(cp_logger_type), POINTER :: logger
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
|
|
|||
|
|
@ -175,7 +175,8 @@ CONTAINS
|
|||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(KIND=dp) :: epsilon_rho, sc
|
||||
REAL(KIND=dp), ALLOCATABLE, DIMENSION(:) :: x
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: e_0, e_rho, e_rho_rho, e_rho_rho_rho, rho
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: e_0, e_rho, e_rho_rho, e_rho_rho_rho, rho
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
@ -531,7 +532,8 @@ CONTAINS
|
|||
INTEGER :: handle, npoints, TYPE
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(KIND=dp) :: epsilon_rho, sc
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_a, e_aa, e_aaa, e_aab, &
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: dummy, e_0, e_a, e_aa, e_aaa, e_aab, &
|
||||
e_ab, e_abb, e_b, e_bb, e_bbb, rhoa, &
|
||||
rhob
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@
|
|||
!> \author JGH (17.02.2002)
|
||||
! **************************************************************************************************
|
||||
MODULE xc_xalpha
|
||||
USE cp_array_utils, ONLY: cp_3d_r_p_type
|
||||
USE cp_array_utils, ONLY: cp_3d_r_cp_type
|
||||
USE input_section_types, ONLY: section_vals_type,&
|
||||
section_vals_val_get
|
||||
USE kinds, ONLY: dp
|
||||
|
|
@ -160,7 +160,8 @@ CONTAINS
|
|||
INTEGER :: handle, npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(KIND=dp) :: epsilon_rho, sx
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: e_0, e_rho, e_rho_rho, e_rho_rho_rho, &
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: e_0, e_rho, e_rho_rho, e_rho_rho_rho, &
|
||||
r13, rho
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
|
|
@ -230,8 +231,9 @@ CONTAINS
|
|||
INTEGER :: handle, i, ispin, npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(KIND=dp) :: epsilon_rho, sx
|
||||
REAL(KIND=dp), DIMENSION(:, :, :), POINTER :: e_0, e_rho, e_rho_rho, e_rho_rho_rho
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(2) :: rho, rho_1_3
|
||||
REAL(KIND=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: e_0, e_rho, e_rho_rho, e_rho_rho_rho
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(2) :: rho, rho_1_3
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@
|
|||
MODULE xc_xbecke88
|
||||
USE bibliography, ONLY: Becke1988,&
|
||||
cite_reference
|
||||
USE cp_array_utils, ONLY: cp_3d_r_p_type
|
||||
USE cp_array_utils, ONLY: cp_3d_r_cp_type
|
||||
USE input_section_types, ONLY: section_vals_type,&
|
||||
section_vals_val_get
|
||||
USE kinds, ONLY: dp
|
||||
|
|
@ -131,9 +131,9 @@ CONTAINS
|
|||
INTEGER :: handle, npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_rho, sx
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndrho, e_ndrho_ndrho, &
|
||||
e_ndrho_ndrho_ndrho, e_ndrho_ndrho_rho, e_ndrho_rho, e_ndrho_rho_rho, e_rho, e_rho_rho, &
|
||||
e_rho_rho_rho, norm_drho, rho, rho_1_3
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndrho, &
|
||||
e_ndrho_ndrho, e_ndrho_ndrho_ndrho, e_ndrho_ndrho_rho, e_ndrho_rho, e_ndrho_rho_rho, &
|
||||
e_rho, e_rho_rho, e_rho_rho_rho, norm_drho, rho, rho_1_3
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
@ -644,8 +644,9 @@ CONTAINS
|
|||
INTEGER :: handle, i, ispin, npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_rho, sx
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(2) :: e_ndrho, e_ndrho_ndrho, e_ndrho_ndrho_ndrho, &
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: dummy, e_0
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(2) :: e_ndrho, e_ndrho_ndrho, e_ndrho_ndrho_ndrho, &
|
||||
e_ndrho_ndrho_rho, e_ndrho_rho, e_ndrho_rho_rho, e_rho, e_rho_rho, e_rho_rho_rho, &
|
||||
norm_drho, rho, rho_1_3
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@
|
|||
MODULE xc_xbecke88_long_range
|
||||
USE bibliography, ONLY: Becke1988,&
|
||||
cite_reference
|
||||
USE cp_array_utils, ONLY: cp_3d_r_p_type
|
||||
USE cp_array_utils, ONLY: cp_3d_r_cp_type
|
||||
USE input_section_types, ONLY: section_vals_type,&
|
||||
section_vals_val_get
|
||||
USE kinds, ONLY: dp
|
||||
|
|
@ -130,9 +130,9 @@ CONTAINS
|
|||
INTEGER :: handle, npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_rho, omega, sx
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndrho, e_ndrho_ndrho, &
|
||||
e_ndrho_ndrho_ndrho, e_ndrho_ndrho_rho, e_ndrho_rho, e_ndrho_rho_rho, e_rho, e_rho_rho, &
|
||||
e_rho_rho_rho, norm_drho, rho
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndrho, &
|
||||
e_ndrho_ndrho, e_ndrho_ndrho_ndrho, e_ndrho_ndrho_rho, e_ndrho_rho, e_ndrho_rho_rho, &
|
||||
e_rho, e_rho_rho, e_rho_rho_rho, norm_drho, rho
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
@ -845,8 +845,9 @@ CONTAINS
|
|||
INTEGER :: handle, i, ispin, npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_rho, omega, sx
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(2) :: e_ndrho, e_ndrho_ndrho, e_ndrho_ndrho_ndrho, &
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: dummy, e_0
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(2) :: e_ndrho, e_ndrho_ndrho, e_ndrho_ndrho_ndrho, &
|
||||
e_ndrho_ndrho_rho, e_ndrho_rho, e_ndrho_rho_rho, e_rho, e_rho_rho, e_rho_rho_rho, &
|
||||
norm_drho, rho
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@
|
|||
MODULE xc_xbecke88_lr_adiabatic
|
||||
USE bibliography, ONLY: Becke1988,&
|
||||
cite_reference
|
||||
USE cp_array_utils, ONLY: cp_3d_r_p_type
|
||||
USE cp_array_utils, ONLY: cp_3d_r_cp_type
|
||||
USE input_section_types, ONLY: section_vals_type,&
|
||||
section_vals_val_get
|
||||
USE kinds, ONLY: dp
|
||||
|
|
@ -137,9 +137,9 @@ CONTAINS
|
|||
INTEGER :: handle, npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_rho, lambda, omega, sx
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndrho, e_ndrho_ndrho, &
|
||||
e_ndrho_ndrho_ndrho, e_ndrho_ndrho_rho, e_ndrho_rho, e_ndrho_rho_rho, e_rho, e_rho_rho, &
|
||||
e_rho_rho_rho, norm_drho, rho
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndrho, &
|
||||
e_ndrho_ndrho, e_ndrho_ndrho_ndrho, e_ndrho_ndrho_rho, e_ndrho_rho, e_ndrho_rho_rho, &
|
||||
e_rho, e_rho_rho, e_rho_rho_rho, norm_drho, rho
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
@ -2857,8 +2857,9 @@ CONTAINS
|
|||
INTEGER :: handle, i, ispin, npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_rho, lambda, omega, sx
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(2) :: e_ndrho, e_ndrho_ndrho, e_ndrho_ndrho_ndrho, &
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: dummy, e_0
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(2) :: e_ndrho, e_ndrho_ndrho, e_ndrho_ndrho_ndrho, &
|
||||
e_ndrho_ndrho_rho, e_ndrho_rho, e_ndrho_rho_rho, e_rho, e_rho_rho, e_rho_rho_rho, &
|
||||
norm_drho, rho
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
|
|
|||
|
|
@ -174,7 +174,8 @@ CONTAINS
|
|||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(dp) :: gamma, R, sx
|
||||
REAL(kind=dp) :: epsilon_rho
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_laplace_rho, e_ndrho, &
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: dummy, e_0, e_laplace_rho, e_ndrho, &
|
||||
e_rho, e_tau, laplace_rho, norm_drho, &
|
||||
rho, tau
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
|
@ -370,9 +371,9 @@ CONTAINS
|
|||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(dp) :: gamma, R, sx
|
||||
REAL(kind=dp) :: epsilon_rho
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_laplace_rhoa, e_laplace_rhob, &
|
||||
e_ndrhoa, e_ndrhob, e_rhoa, e_rhob, e_tau_a, e_tau_b, laplace_rhoa, laplace_rhob, &
|
||||
norm_drhoa, norm_drhob, rhoa, rhob, tau_a, tau_b
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: dummy, e_0, e_laplace_rhoa, &
|
||||
e_laplace_rhob, e_ndrhoa, e_ndrhob, e_rhoa, e_rhob, e_tau_a, e_tau_b, laplace_rhoa, &
|
||||
laplace_rhob, norm_drhoa, norm_drhob, rhoa, rhob, tau_a, tau_b
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ MODULE xc_xbeef
|
|||
|
||||
USE bibliography, ONLY: Wellendorff2012,&
|
||||
cite_reference
|
||||
USE cp_array_utils, ONLY: cp_3d_r_p_type
|
||||
USE cp_array_utils, ONLY: cp_3d_r_cp_type
|
||||
USE input_section_types, ONLY: section_vals_type,&
|
||||
section_vals_val_get
|
||||
USE kinds, ONLY: dp
|
||||
|
|
@ -144,7 +144,8 @@ CONTAINS
|
|||
INTEGER :: handle, npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_rho, sx
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndrho, e_rho, norm_drho, &
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: dummy, e_0, e_ndrho, e_rho, norm_drho, &
|
||||
rho, rho_1_3
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
|
|
@ -317,8 +318,9 @@ CONTAINS
|
|||
INTEGER :: handle, i, ispin, npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_rho, sx
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0
|
||||
TYPE(cp_3d_r_p_type), DIMENSION(2) :: e_ndrho, e_rho, norm_drho, rho, rho_1_3
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: dummy, e_0
|
||||
TYPE(cp_3d_r_cp_type), DIMENSION(2) :: e_ndrho, e_rho, norm_drho, rho, rho_1_3
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
|
|||
|
|
@ -188,7 +188,8 @@ CONTAINS
|
|||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(dp) :: gamma, R, sx
|
||||
REAL(kind=dp) :: epsilon_rho
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_laplace_rho, e_ndrho, &
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: dummy, e_0, e_laplace_rho, e_ndrho, &
|
||||
e_rho, e_tau, laplace_rho, norm_drho, &
|
||||
rho, tau
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
|
@ -444,9 +445,9 @@ CONTAINS
|
|||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(dp) :: gamma, R, sx
|
||||
REAL(kind=dp) :: epsilon_rho
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_laplace_rhoa, e_laplace_rhob, &
|
||||
e_ndrhoa, e_ndrhob, e_rhoa, e_rhob, e_tau_a, e_tau_b, laplace_rhoa, laplace_rhob, &
|
||||
norm_drhoa, norm_drhob, rhoa, rhob, tau_a, tau_b
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: dummy, e_0, e_laplace_rhoa, &
|
||||
e_laplace_rhob, e_ndrhoa, e_ndrhob, e_rhoa, e_rhob, e_tau_a, e_tau_b, laplace_rhoa, &
|
||||
laplace_rhob, norm_drhoa, norm_drhob, rhoa, rhob, tau_a, tau_b
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
|
|||
|
|
@ -135,7 +135,8 @@ CONTAINS
|
|||
INTEGER :: handle, npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_rho, R, sx
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_rho, rho
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: dummy, e_0, e_rho, rho
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
@ -315,7 +316,8 @@ CONTAINS
|
|||
INTEGER :: handle, npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_rho, R, sx
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_rhoa, e_rhob, rhoa, rhob
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: dummy, e_0, e_rhoa, e_rhob, rhoa, rhob
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
|
|||
|
|
@ -161,7 +161,8 @@ CONTAINS
|
|||
INTEGER :: handle, npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_rho, R, sx
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndrho, e_rho, norm_drho, &
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: dummy, e_0, e_ndrho, e_rho, norm_drho, &
|
||||
rho
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
|
|
@ -310,7 +311,8 @@ CONTAINS
|
|||
INTEGER :: handle, npoints
|
||||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_rho, R, sx
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndrhoa, e_ndrhob, e_rhoa, &
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: dummy, e_0, e_ndrhoa, e_ndrhob, e_rhoa, &
|
||||
e_rhob, norm_drhoa, norm_drhob, rhoa, &
|
||||
rhob
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
|
|
|||
|
|
@ -159,7 +159,8 @@ CONTAINS
|
|||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_norm_drho, epsilon_rho, omega, &
|
||||
sx, sx0
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndrho, e_ndrho_ndrho, &
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), &
|
||||
POINTER :: dummy, e_0, e_ndrho, e_ndrho_ndrho, &
|
||||
e_ndrho_rho, e_rho, e_rho_rho, &
|
||||
norm_drho, rho
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
|
@ -5263,9 +5264,9 @@ CONTAINS
|
|||
INTEGER, DIMENSION(2, 3) :: bo
|
||||
REAL(kind=dp) :: epsilon_norm_drho, epsilon_rho, omega, &
|
||||
sx, sx0
|
||||
REAL(kind=dp), DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndrhoa, e_ndrhoa_ndrhoa, &
|
||||
e_ndrhoa_rhoa, e_ndrhob, e_ndrhob_ndrhob, e_ndrhob_rhob, e_rhoa, e_rhoa_rhoa, e_rhob, &
|
||||
e_rhob_rhob, norm_drhoa, norm_drhob, rhoa, rhob
|
||||
REAL(kind=dp), CONTIGUOUS, DIMENSION(:, :, :), POINTER :: dummy, e_0, e_ndrhoa, &
|
||||
e_ndrhoa_ndrhoa, e_ndrhoa_rhoa, e_ndrhob, e_ndrhob_ndrhob, e_ndrhob_rhob, e_rhoa, &
|
||||
e_rhoa_rhoa, e_rhob, e_rhob_rhob, norm_drhoa, norm_drhob, rhoa, rhob
|
||||
TYPE(xc_derivative_type), POINTER :: deriv
|
||||
|
||||
CALL timeset(routineN, handle)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue