[QE-users] Parallelization and Input/Output of wfc in QE
Riccardo Piombo uniroma1
riccardo.piombo at uniroma1.it
Fri Nov 25 12:59:58 CET 2022
Thanks to all for the replies,
Prof. Ceresoli I imagine that by "collecting" you mean what prof.
Giannozzi said: the coefficients are stored in binary files and you have
to manage them with a script
as the one that you advised me. I think I'll take a look at your script,
by now I did some testing and saw that such a modification of the
local_dos.f90 file "works":
you define some variables
! store an identifier for each of the parallel processes
INTEGER :: process_Rank
! handle error codes
INTEGER :: ierror
!
CHARACTER(len=30) :: file_name1, file_name2, str_Rank
then you add the following line
CALL MPI_COMM_RANK(MPI_COMM_WORLD, process_Rank, ierror)
WRITE(str_Rank,'(i5.5)') process_Rank
file_name1 = 'wfc_g_Rank' // trim(str_Rank) // '.dat'
file_name2 = 'g_vectors_Rank' // trim(str_Rank) // '.dat'
OPEN (unit = 555, file = trim(file_name1), form = 'formatted', status =
'unknown')
OPEN (unit = 666, file = trim(file_name2), form = 'formatted', status =
'unknown')
after the command
IF ( wg(ibnd, ik) > epsilon(0.0_DP) * wg_max .and. &
(ibnd == kband .or. iflag /= 0)) THEN
I'll certainly follow the advice you both gave me.
Best regards,
Riccardo Piombo
More information about the users
mailing list