mpi_bc_coreDen.F90 1.3 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
!--------------------------------------------------------------------------------
! Copyright (c) 2016 Peter Grünberg Institut, Forschungszentrum Jülich, Germany
! This file is part of FLEUR and available as free software under the conditions
! of the MIT license as expressed in the LICENSE file in more detail.
!--------------------------------------------------------------------------------

MODULE m_mpi_bc_coreden
CONTAINS
   SUBROUTINE mpi_bc_coreden(mpi,atoms,input,dimension,&
                             rhcs,tecs,qints)

   USE m_types
   IMPLICIT NONE
   INCLUDE 'mpif.h'

   TYPE(t_mpi),INTENT(IN)       :: mpi
   TYPE(t_atoms),INTENT(IN)     :: atoms
   TYPE(t_input),INTENT(IN)     :: input
   TYPE(t_dimension),INTENT(IN) :: DIMENSION

   REAL, INTENT(INOUT) :: rhcs(atoms%jmtd,atoms%ntype,DIMENSION%jspd)
   REAL, INTENT(INOUT) :: tecs(atoms%ntype,DIMENSION%jspd)
   REAL, INTENT(INOUT) :: qints(atoms%ntype,DIMENSION%jspd)

   INTEGER :: n, ierr(3)

    n = atoms%jmtd * atoms%ntype * DIMENSION%jspd
    CALL MPI_BCAST(rhcs,n,MPI_DOUBLE,0,mpi%mpi_comm,ierr)
    n = atoms%ntype * DIMENSION%jspd
    CALL MPI_BCAST(tecs,n,MPI_DOUBLE,0,mpi%mpi_comm,ierr)
    n = atoms%ntype * DIMENSION%jspd
    CALL MPI_BCAST(qints,n,MPI_DOUBLE,0,mpi%mpi_comm,ierr)

   END SUBROUTINE mpi_bc_coreden
END MODULE m_mpi_bc_coreden