Line data Source code
1 : !-------------------------------------------------------------------------------- 2 : ! Copyright (c) 2016 Peter Grünberg Institut, Forschungszentrum Jülich, Germany 3 : ! This file is part of FLEUR and available as free software under the conditions 4 : ! of the MIT license as expressed in the LICENSE file in more detail. 5 : !-------------------------------------------------------------------------------- 6 : MODULE m_types_xcpot_data 7 : !This module contains the xcpot-type used for the in-build xc-implementations 8 : IMPLICIT NONE 9 : 10 : TYPE t_xcpot_data 11 : !in the pbe case (exchpbe.F) lots of test are made 12 : !in addition some constants are set 13 : !to speed up this code precalculate things in init 14 : LOGICAL :: is_rpbe = .false. !Rpbe 15 : LOGICAL :: is_wc = .false. 16 : LOGICAL :: is_hse = .false. !hse,lhse,vhse 17 : REAL :: uk, um 18 : !many logicals to determine xcpot 19 : LOGICAL :: is_pbes = .false.!is pbe-sol 20 : LOGICAL :: is_pbe0 = .false. 21 : LOGICAL :: is_bh = .false. 22 : LOGICAL :: is_mjw = .false. 23 : REAL :: exchange_weight 24 : INTEGER :: krla !relativistic corrections 25 : contains 26 : procedure :: mpi_bc => t_xcpot_data_mpi_bc 27 : END TYPE t_xcpot_data 28 : contains 29 : 30 0 : subroutine t_xcpot_data_mpi_bc(data, rank, mpi_comm) 31 : use m_mpi_bc_tool 32 : implicit NONE 33 : class(t_xcpot_data), intent(inout) :: data 34 : integer, intent(in) :: rank, mpi_comm 35 : 36 0 : CALL mpi_bc(data%is_rpbe, rank, mpi_comm) 37 0 : CALL mpi_bc(data%is_wc, rank, mpi_comm) 38 0 : CALL mpi_bc(data%is_hse, rank, mpi_comm) 39 0 : CALL mpi_bc(data%uk, rank, mpi_comm) 40 0 : CALL mpi_bc(data%um, rank, mpi_comm) 41 0 : CALL mpi_bc(data%is_pbes, rank, mpi_comm) 42 0 : CALL mpi_bc(data%is_pbe0, rank, mpi_comm) 43 0 : CALL mpi_bc(data%is_bh, rank, mpi_comm) 44 0 : CALL mpi_bc(data%is_mjw, rank, mpi_comm) 45 0 : CALL mpi_bc(data%exchange_weight, rank, mpi_comm) 46 0 : CALL mpi_bc(data%krla, rank, mpi_comm) 47 0 : end subroutine t_xcpot_data_mpi_bc 48 0 : END MODULE m_types_xcpot_data