Commit 40779707 authored by Gregor Michalicek's avatar Gregor Michalicek

Replace mpi_bc_pot by mpi_bc_potden in eigen/eigen.F90

Also in this commit: Slight beautification of the configure script output for ChASE.
parent b4e1c259
......@@ -13,5 +13,5 @@ try_compile(FLEUR_USE_CHASE ${CMAKE_BINARY_DIR} ${CMAKE_SOURCE_DIR}/cmake/tests/
# endif()
#endif()
message("ChASE found:${FLEUR_USE_CHASE}")
message("ChASE Library found:${FLEUR_USE_CHASE}")
......@@ -37,7 +37,7 @@ CONTAINS
USE m_eig66_io, ONLY : open_eig, write_eig, close_eig,read_eig
USE m_xmlOutput
#ifdef CPP_MPI
USE m_mpi_bc_pot
USE m_mpi_bc_potden
#endif
IMPLICIT NONE
......@@ -110,8 +110,7 @@ CONTAINS
IF (mpi%n_size > 1) l_zref = .FALSE.
#ifdef CPP_MPI
CALL mpi_bc_pot(mpi,stars,sphhar,atoms,input,vacuum,&
v%iter,v%mt,v%pw,v%vacz,v%vacxy)
CALL mpi_bc_potden(mpi,stars,sphhar,atoms,input,vacuum,oneD,noco,v)
#endif
!IF (mpi%irank.EQ.0) CALL openXMLElementFormPoly('iteration',(/'numberForCurrentRun','overallNumber '/),(/it,v%iter/),&
! RESHAPE((/19,13,5,5/),(/2,2/)))
......
......@@ -24,20 +24,23 @@ CONTAINS
TYPE(t_potden),INTENT(INOUT) :: potden
INTEGER :: n, ierr(3)
LOGICAL :: l_nocoAlloc, l_denMatAlloc, l_vaczAlloc
LOGICAL :: l_nocoAlloc, l_denMatAlloc, l_vaczAlloc, l_pw_wAlloc
CALL MPI_BCAST(potden%iter,1,MPI_INTEGER,0,mpi%mpi_comm,ierr)
l_nocoAlloc = .FALSE.
l_denMatAlloc = .FALSE.
l_vaczAlloc = .FALSE.
l_pw_wAlloc = .FALSE.
IF(mpi%irank.EQ.0) THEN
IF (ALLOCATED(potden%mmpMat)) l_denMatAlloc = .TRUE.
IF (ALLOCATED(potden%vacz)) l_vaczAlloc = .TRUE.
IF (ALLOCATED(potden%pw_w)) l_pw_wAlloc = .TRUE.
END IF
CALL MPI_BCAST(l_nocoAlloc,1,MPI_LOGICAL,0,mpi%mpi_comm,ierr)
CALL MPI_BCAST(l_denMatAlloc,1,MPI_LOGICAL,0,mpi%mpi_comm,ierr)
CALL MPI_BCAST(l_vaczAlloc,1,MPI_LOGICAL,0,mpi%mpi_comm,ierr)
CALL MPI_BCAST(l_pw_wAlloc,1,MPI_LOGICAL,0,mpi%mpi_comm,ierr)
IF((mpi%irank.NE.0).AND.l_denMatAlloc) THEN
IF(.NOT.ALLOCATED(potden%mmpMat)) THEN
ALLOCATE(potDen%mmpMat(-lmaxU_const:lmaxU_const,-lmaxU_const:lmaxU_const,MAX(1,atoms%n_u),input%jspins))
......@@ -50,6 +53,11 @@ CONTAINS
n = atoms%jmtd * (sphhar%nlhd+1) * atoms%ntype * input%jspins
CALL MPI_BCAST(potden%mt,n,MPI_DOUBLE,0,mpi%mpi_comm,ierr)
IF (l_pw_wAlloc) THEN
n = stars%ng3 * SIZE(potden%pw_w,2)
CALL MPI_BCAST(potden%pw_w,n,MPI_DOUBLE_COMPLEX,0,mpi%mpi_comm,ierr)
END IF
IF (l_vaczAlloc) THEN
n = vacuum%nmzd * 2 * SIZE(potden%vacz,3)
CALL MPI_BCAST(potden%vacz,n,MPI_DOUBLE,0,mpi%mpi_comm,ierr)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment