Hello,
Following my earlier 2 posts, I realized that I should compile espresso before issuing "make" in the EPW folder. However, I get several errors with espresso-5.2.0 and 5.3.0 as follows:
(cd src ; make )
make[1]: Entering directory `/global/home/vahid/bin/PWSCF+EPW/espresso-5.2.0/EPW/src'
mpif90 -O2 -assume byterecl -g -traceback -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../LAXlib -I../../iotk/src -I../../FFTXlib -I../../PW/src -I../../LR_Modules -I../../PHonon/PH -I../../PP/src -I. -c io_epw.f90
mpif90 -O2 -assume byterecl -g -traceback -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../LAXlib -I../../iotk/src -I../../FFTXlib -I../../PW/src -I../../LR_Modules -I../../PHonon/PH -I../../PP/src -I. -c elph2.f90
mpif90 -O2 -assume byterecl -g -traceback -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../LAXlib -I../../iotk/src -I../../FFTXlib -I../../PW/src -I../../LR_Modules -I../../PHonon/PH -I../../PP/src -I. -c epwcom.f90
mpif90 -O2 -assume byterecl -g -traceback -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../LAXlib -I../../iotk/src -I../../FFTXlib -I../../PW/src -I../../LR_Modules -I../../PHonon/PH -I../../PP/src -I. -c epw.f90
mpif90 -O2 -assume byterecl -g -traceback -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../LAXlib -I../../iotk/src -I../../FFTXlib -I../../PW/src -I../../LR_Modules -I../../PHonon/PH -I../../PP/src -I. -c constants_epw.f90
mpif90 -O2 -assume byterecl -g -traceback -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../LAXlib -I../../iotk/src -I../../FFTXlib -I../../PW/src -I../../LR_Modules -I../../PHonon/PH -I../../PP/src -I. -c a2f.f90
mpif90 -O2 -assume byterecl -g -traceback -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../LAXlib -I../../iotk/src -I../../FFTXlib -I../../PW/src -I../../LR_Modules -I../../PHonon/PH -I../../PP/src -I. -c allocate_epwq.f90
allocate_epwq.f90(29): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [CONTROL_LR]
USE control_lr, ONLY : lgamma
------^
allocate_epwq.f90(36): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [LR_SYMM_BASE]
USE lr_symm_base, ONLY : rtau
------^
allocate_epwq.f90(38): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [LRUS]
USE lrus, ONLY : becp1, int3, int3_nc, dpqq, dpqq_so
------^
allocate_epwq.f90(59): error #6404: This name does not have a type, and must have an explicit type. [LGAMMA]
IF (lgamma) THEN
------^
allocate_epwq.f90(59): error #6341: A logical data type is required in this context. [LGAMMA]
IF (lgamma) THEN
------^
allocate_epwq.f90(83): error #6404: This name does not have a type, and must have an explicit type. [RTAU]
ALLOCATE (rtau ( 3, 48, nat))
------------^
allocate_epwq.f90(95): error #6404: This name does not have a type, and must have an explicit type. [INT3]
ALLOCATE (int3 ( nhm, nhm, npertx, nat, nspin))
---------------^
allocate_epwq.f90(98): error #6404: This name does not have a type, and must have an explicit type. [DPQQ]
ALLOCATE (dpqq( nhm, nhm, 3, ntyp))
---------------^
allocate_epwq.f90(101): error #6404: This name does not have a type, and must have an explicit type. [INT3_NC]
ALLOCATE(int3_nc( nhm, nhm, npertx, nat, nspin))
-----------------^
allocate_epwq.f90(108): error #6404: This name does not have a type, and must have an explicit type. [DPQQ_SO]
ALLOCATE(dpqq_so( nhm, nhm, nspin, 3, ntyp))
--------------------^
allocate_epwq.f90(118): error #6404: This name does not have a type, and must have an explicit type. [BECP1]
ALLOCATE (becp1(nks))
------------^
allocate_epwq.f90(29): error #6580: Name in only-list does not exist. [LGAMMA]
USE control_lr, ONLY : lgamma
---------------------------^
allocate_epwq.f90(36): error #6580: Name in only-list does not exist. [RTAU]
USE lr_symm_base, ONLY : rtau
---------------------------^
allocate_epwq.f90(38): error #6580: Name in only-list does not exist. [BECP1]
USE lrus, ONLY : becp1, int3, int3_nc, dpqq, dpqq_so
---------------------------^
allocate_epwq.f90(38): error #6580: Name in only-list does not exist. [INT3]
USE lrus, ONLY : becp1, int3, int3_nc, dpqq, dpqq_so
----------------------------------^
allocate_epwq.f90(38): error #6580: Name in only-list does not exist. [INT3_NC]
USE lrus, ONLY : becp1, int3, int3_nc, dpqq, dpqq_so
----------------------------------------^
allocate_epwq.f90(38): error #6580: Name in only-list does not exist. [DPQQ]
USE lrus, ONLY : becp1, int3, int3_nc, dpqq, dpqq_so
-------------------------------------------------^
allocate_epwq.f90(38): error #6580: Name in only-list does not exist. [DPQQ_SO]
USE lrus, ONLY : becp1, int3, int3_nc, dpqq, dpqq_so
-------------------------------------------------------^
compilation aborted for allocate_epwq.f90 (code 1)
make[1]: *** [allocate_epwq.o] Error 1
make[1]: Leaving directory `/global/home/vahid/bin/PWSCF+EPW/espresso-5.2.0/EPW/src'
make: *** [epw] Error 2
My understanding is that these missing modules should be part of espresso but they are not. Or am I missing something here?
Any help will be greatly appreciated.
Vahid
control_lr and several other missing modules for EPW-4
Moderator: stiwari
Re: control_lr and several other missing modules for EPW-4
Hello again,
I have tried to install the espresso-r12078.tar.gz (from the EPW website) on Linux with intel and openmpi modules. It configures fine but when it compiles, it crashes near the end with the following message related to the TDDFPT section:
mpif90 -O2 -assume byterecl -g -traceback -par-report0 -vec-report0 -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../FFTXlib -I . -I../../PW/src -I../../PHonon/PH -c lr_charg_resp.f90
lr_charg_resp.f90(136): error #6580: Name in only-list does not exist. [NBND_OCC]
USE control_ph, ONLY : nbnd_occ
------------------------------^
lr_charg_resp.f90(143): error #6404: This name does not have a type, and must have an explicit type. [NBND_OCC]
IF(nbnd_total > nbnd_occ(1)) THEN
--------------------^
compilation aborted for lr_charg_resp.f90 (code 1)
make[3]: *** [lr_charg_resp.o] Error 1
make[3]: Leaving directory `/global/home/vahid/bin/PWSCF+EPW/espresso/TDDFPT/src'
make[2]: *** [tddfpt] Error 1
make[2]: Leaving directory `/global/home/vahid/bin/PWSCF+EPW/espresso/TDDFPT'
make[1]: *** [tddfpt] Error 1
make[1]: Leaving directory `/global/home/vahid/bin/PWSCF+EPW/espresso/install'
make: *** [tddfpt] Error 1
I have no problem compiling espresso-5.3.0 or 5.2.0. Does anyone know how to get rid of this error?
Thanks,
Vahid
I have tried to install the espresso-r12078.tar.gz (from the EPW website) on Linux with intel and openmpi modules. It configures fine but when it compiles, it crashes near the end with the following message related to the TDDFPT section:
mpif90 -O2 -assume byterecl -g -traceback -par-report0 -vec-report0 -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../FFTXlib -I . -I../../PW/src -I../../PHonon/PH -c lr_charg_resp.f90
lr_charg_resp.f90(136): error #6580: Name in only-list does not exist. [NBND_OCC]
USE control_ph, ONLY : nbnd_occ
------------------------------^
lr_charg_resp.f90(143): error #6404: This name does not have a type, and must have an explicit type. [NBND_OCC]
IF(nbnd_total > nbnd_occ(1)) THEN
--------------------^
compilation aborted for lr_charg_resp.f90 (code 1)
make[3]: *** [lr_charg_resp.o] Error 1
make[3]: Leaving directory `/global/home/vahid/bin/PWSCF+EPW/espresso/TDDFPT/src'
make[2]: *** [tddfpt] Error 1
make[2]: Leaving directory `/global/home/vahid/bin/PWSCF+EPW/espresso/TDDFPT'
make[1]: *** [tddfpt] Error 1
make[1]: Leaving directory `/global/home/vahid/bin/PWSCF+EPW/espresso/install'
make: *** [tddfpt] Error 1
I have no problem compiling espresso-5.3.0 or 5.2.0. Does anyone know how to get rid of this error?
Thanks,
Vahid
-
- Posts: 155
- Joined: Thu Jan 14, 2016 10:52 am
- Affiliation:
Re: control_lr and several other missing modules for EPW-4
Hi Vahid,
Please note that in order to compile EPW you don't need to compile all QE: you can type just make pw and make ph. The TDDFPT package is an extra independent package within QE. Also, for general issues regarding compiling QE you can refer to the general forum: http://www.quantum-espresso.org/forum/
Best
Carla
Please note that in order to compile EPW you don't need to compile all QE: you can type just make pw and make ph. The TDDFPT package is an extra independent package within QE. Also, for general issues regarding compiling QE you can refer to the general forum: http://www.quantum-espresso.org/forum/
Best
Carla
Re: control_lr and several other missing modules for EPW-4
Hi Carla,
Thank you so much for the clarification. I was operating under the assumption that all of pwscf needs to be compiled because on the installation section of the EPW website it states that
"4. Compile EPW from within the EPW directory (this will also compile pwscf, phonon, and wannier90)"
Best wishes,
Vahid
Thank you so much for the clarification. I was operating under the assumption that all of pwscf needs to be compiled because on the installation section of the EPW website it states that
"4. Compile EPW from within the EPW directory (this will also compile pwscf, phonon, and wannier90)"
Best wishes,
Vahid
Re: control_lr and several other missing modules for EPW-4
Dear Vahid,
The information is correct. You need pw, ph and w90. You also need the modules and library they rely on. You do not need TDDFPT.
I recommend:
and then make epw.
Best,
Samuel
The information is correct. You need pw, ph and w90. You also need the modules and library they rely on. You do not need TDDFPT.
I recommend:
Code: Select all
./configure
make pwall
make ph
and then make epw.
Best,
Samuel
Prof. Samuel Poncé
Chercheur qualifié F.R.S.-FNRS / Professeur UCLouvain
Institute of Condensed Matter and Nanosciences
UCLouvain, Belgium
Web: https://www.samuelponce.com
Chercheur qualifié F.R.S.-FNRS / Professeur UCLouvain
Institute of Condensed Matter and Nanosciences
UCLouvain, Belgium
Web: https://www.samuelponce.com
Re: control_lr and several other missing modules for EPW-4
Dear Samuel,
I followed your suggestions. pwall and ph were make successfully. Then from the EPW folder, which is inside the espresso folder, I typed 'make'. I get the following:
(cd src ; make )
make[1]: Entering directory `/global/home/vahid/bin/PWSCF+EPW/espresso/EPW/src'
mpif90 -O2 -assume byterecl -g -traceback -par-report0 -vec-report0 -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../LAXlib -I../../iotk/src -I../../FFTXlib -I../../PW/src -I../../LR_Modules -I../../PHonon/PH -I../../PP/src -I. -c io_epw.f90
mpif90 -O2 -assume byterecl -g -traceback -par-report0 -vec-report0 -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../LAXlib -I../../iotk/src -I../../FFTXlib -I../../PW/src -I../../LR_Modules -I../../PHonon/PH -I../../PP/src -I. -c elph2.f90
mpif90 -O2 -assume byterecl -g -traceback -par-report0 -vec-report0 -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../LAXlib -I../../iotk/src -I../../FFTXlib -I../../PW/src -I../../LR_Modules -I../../PHonon/PH -I../../PP/src -I. -c epwcom.f90
mpif90 -O2 -assume byterecl -g -traceback -par-report0 -vec-report0 -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../LAXlib -I../../iotk/src -I../../FFTXlib -I../../PW/src -I../../LR_Modules -I../../PHonon/PH -I../../PP/src -I. -c epw.f90
mpif90 -O2 -assume byterecl -g -traceback -par-report0 -vec-report0 -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../LAXlib -I../../iotk/src -I../../FFTXlib -I../../PW/src -I../../LR_Modules -I../../PHonon/PH -I../../PP/src -I. -c constants_epw.f90
mpif90 -O2 -assume byterecl -g -traceback -par-report0 -vec-report0 -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../LAXlib -I../../iotk/src -I../../FFTXlib -I../../PW/src -I../../LR_Modules -I../../PHonon/PH -I../../PP/src -I. -c a2f.f90
mpif90 -O2 -assume byterecl -g -traceback -par-report0 -vec-report0 -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../LAXlib -I../../iotk/src -I../../FFTXlib -I../../PW/src -I../../LR_Modules -I../../PHonon/PH -I../../PP/src -I. -c allocate_epwq.f90
allocate_epwq.f90(38): error #6580: Name in only-list does not exist. [DPQQ]
USE lrus, ONLY : becp1, int3, int3_nc, dpqq, dpqq_so
-------------------------------------------------^
allocate_epwq.f90(38): error #6580: Name in only-list does not exist. [DPQQ_SO]
USE lrus, ONLY : becp1, int3, int3_nc, dpqq, dpqq_so
-------------------------------------------------------^
allocate_epwq.f90(98): error #6404: This name does not have a type, and must have an explicit type. [DPQQ]
ALLOCATE (dpqq( nhm, nhm, 3, ntyp))
---------------^
allocate_epwq.f90(108): error #6404: This name does not have a type, and must have an explicit type. [DPQQ_SO]
ALLOCATE(dpqq_so( nhm, nhm, nspin, 3, ntyp))
--------------------^
compilation aborted for allocate_epwq.f90 (code 1)
make[1]: *** [allocate_epwq.o] Error 1
make[1]: Leaving directory `/global/home/vahid/bin/PWSCF+EPW/espresso/EPW/src'
make: *** [epw] Error 2
I posted this error here because I am not sure if it is specific to EPW or espresso related. Interestingly, DPQQ does have a type as seen in the following folder:
PW/src/compute_qdipol.f90: REAL(DP) :: dpqq( nhm, nhm, 3, ntyp)
Thanks,
Vahid
I followed your suggestions. pwall and ph were make successfully. Then from the EPW folder, which is inside the espresso folder, I typed 'make'. I get the following:
(cd src ; make )
make[1]: Entering directory `/global/home/vahid/bin/PWSCF+EPW/espresso/EPW/src'
mpif90 -O2 -assume byterecl -g -traceback -par-report0 -vec-report0 -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../LAXlib -I../../iotk/src -I../../FFTXlib -I../../PW/src -I../../LR_Modules -I../../PHonon/PH -I../../PP/src -I. -c io_epw.f90
mpif90 -O2 -assume byterecl -g -traceback -par-report0 -vec-report0 -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../LAXlib -I../../iotk/src -I../../FFTXlib -I../../PW/src -I../../LR_Modules -I../../PHonon/PH -I../../PP/src -I. -c elph2.f90
mpif90 -O2 -assume byterecl -g -traceback -par-report0 -vec-report0 -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../LAXlib -I../../iotk/src -I../../FFTXlib -I../../PW/src -I../../LR_Modules -I../../PHonon/PH -I../../PP/src -I. -c epwcom.f90
mpif90 -O2 -assume byterecl -g -traceback -par-report0 -vec-report0 -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../LAXlib -I../../iotk/src -I../../FFTXlib -I../../PW/src -I../../LR_Modules -I../../PHonon/PH -I../../PP/src -I. -c epw.f90
mpif90 -O2 -assume byterecl -g -traceback -par-report0 -vec-report0 -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../LAXlib -I../../iotk/src -I../../FFTXlib -I../../PW/src -I../../LR_Modules -I../../PHonon/PH -I../../PP/src -I. -c constants_epw.f90
mpif90 -O2 -assume byterecl -g -traceback -par-report0 -vec-report0 -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../LAXlib -I../../iotk/src -I../../FFTXlib -I../../PW/src -I../../LR_Modules -I../../PHonon/PH -I../../PP/src -I. -c a2f.f90
mpif90 -O2 -assume byterecl -g -traceback -par-report0 -vec-report0 -nomodule -fpp -D__INTEL -D__FFTW -D__MPI -D__PARA -D__SCALAPACK -I../../include -I../../iotk/src -I../../Modules -I../../LAXlib -I../../iotk/src -I../../FFTXlib -I../../PW/src -I../../LR_Modules -I../../PHonon/PH -I../../PP/src -I. -c allocate_epwq.f90
allocate_epwq.f90(38): error #6580: Name in only-list does not exist. [DPQQ]
USE lrus, ONLY : becp1, int3, int3_nc, dpqq, dpqq_so
-------------------------------------------------^
allocate_epwq.f90(38): error #6580: Name in only-list does not exist. [DPQQ_SO]
USE lrus, ONLY : becp1, int3, int3_nc, dpqq, dpqq_so
-------------------------------------------------------^
allocate_epwq.f90(98): error #6404: This name does not have a type, and must have an explicit type. [DPQQ]
ALLOCATE (dpqq( nhm, nhm, 3, ntyp))
---------------^
allocate_epwq.f90(108): error #6404: This name does not have a type, and must have an explicit type. [DPQQ_SO]
ALLOCATE(dpqq_so( nhm, nhm, nspin, 3, ntyp))
--------------------^
compilation aborted for allocate_epwq.f90 (code 1)
make[1]: *** [allocate_epwq.o] Error 1
make[1]: Leaving directory `/global/home/vahid/bin/PWSCF+EPW/espresso/EPW/src'
make: *** [epw] Error 2
I posted this error here because I am not sure if it is specific to EPW or espresso related. Interestingly, DPQQ does have a type as seen in the following folder:
PW/src/compute_qdipol.f90: REAL(DP) :: dpqq( nhm, nhm, 3, ntyp)
Thanks,
Vahid
Re: control_lr and several other missing modules for EPW-4
Dear Vahid,
I would like to add some more words to the recent replies from Dr Verdi and Dr Ponc that may help you.
I attempted to install EPW4 and experienced the same error that you posted at the starting of this topic.
The problem seems occur due to the 2 files : allocate_epwq.f90 and deallocate_epw.f90
Please note that the official solution is : wait for the next release of EPW that will come within QuantumESPRESSO next version by the end of April (details in http://www.quantum-espresso.org/road-map/).
This is the temporary solution that I tried:
+ obtain the latest QE version that we can access from EPW website:
tar xvf espresso-r12078.tar.gz && cd espresso
./configure
make pwall
make ph
+ obtain the latest EPW from svn that works with this QE version (probably 5.3.0)
+ edit EPW/src/allocate_epwq.f90 file content to this
+ And the EPW/src/deallocate_epw.f90 to this
+ then
cd espresso/EPW/src && make
That was what I tried and successfully compiled EPW.
HTH,
Duc-Long
Graduate Student, Molecular Science and Technology Program, TIGP
Institute of Atomic and Molecular Sciences,
Academia Sinica, Taipei 106, Taiwan
Phone +886 979279073
I would like to add some more words to the recent replies from Dr Verdi and Dr Ponc that may help you.
I attempted to install EPW4 and experienced the same error that you posted at the starting of this topic.
The problem seems occur due to the 2 files : allocate_epwq.f90 and deallocate_epw.f90
Please note that the official solution is : wait for the next release of EPW that will come within QuantumESPRESSO next version by the end of April (details in http://www.quantum-espresso.org/road-map/).
This is the temporary solution that I tried:
+ obtain the latest QE version that we can access from EPW website:
Code: Select all
http://epw.org.uk/Main/DownloadAndInstall?action=downloadman&upname=espresso-r12078.tar.gz
tar xvf espresso-r12078.tar.gz && cd espresso
./configure
make pwall
make ph
+ obtain the latest EPW from svn that works with this QE version (probably 5.3.0)
Code: Select all
svn checkout http://qeforge.qe-forge.org/svn/epw/branches/sponce/EPW
+ edit EPW/src/allocate_epwq.f90 file content to this
Code: Select all
!
! Copyright (C) 2010-2016 Samuel Ponce', Roxana Margine, Carla Verdi, Feliciano Giustino
! Copyright (C) 2007-2009 Jesse Noffsinger, Brad Malone, Feliciano Giustino
!
! This file is distributed under the terms of the GNU General Public
! License. See the file `LICENSE' in the root directory of the
! present distribution, or http://www.gnu.org/copyleft.gpl.txt .
!
! Code adapted from PH/allocate_phq - Quantum-ESPRESSO group
! 09/2009 There is a lot of excess in this file.
!
!-----------------------------------------------------------------------
subroutine allocate_epwq
!-----------------------------------------------------------------------
!
! dynamical allocation of arrays: quantities needed for the linear
! response problem
!
! RM - Nov/Dec 2014
! Imported the noncolinear case implemented by xlzhang
!
#include "f_defs.h"
!
USE ions_base, ONLY : nat, ntyp => nsp
USE pwcom, ONLY : igk, npwx, nbnd, ngm, nspin, nks
USE noncollin_module, ONLY : noncolin, npol
USE wavefunctions_module, ONLY: evc
USE spin_orb, ONLY : lspinorb
USE control_lr, ONLY : lgamma
USE phcom, ONLY : evq, dvpsi, dpsi, vlocq,&
dmuxc, w2, dyn00, t, tmq,&
npertx
USE phus, ONLY : int1, int1_nc, int2, int2_so, &
int4, int4_nc, int5, int5_so, becsum_nc, &
alphasum, alphasum_nc, dpqq, dpqq_so, &
alphap
USE lr_symm_base, ONLY : rtau
USE qpoint, ONLY : igkq, eigqts
USE lrus, ONLY : becp1, int3, int3_nc
USE elph2, ONLY : elph, el_ph_mat
USE becmod, ONLY : becp, allocate_bec_type
USE uspp_param, ONLY : nhm
USE uspp, ONLY : okvan, nkb
! SP creation of ffts
USE units_ph, ONLY : this_dvkb3_is_on_file, this_pcxpsi_is_on_file
USE modes, ONLY : u, npert, name_rap_mode, num_rap_mode
USE fft_base, ONLY : dffts
USE klist, ONLY : nks
implicit none
! SP: Had to add these allocations becaue they are now private in QE 5.0.
! See private 'becp_nc' variable from espresso/Modules/becmod.f90.
INTEGER :: ik, ipol
! COMPLEX(DP), ALLOCATABLE :: &
! becp_nc(:,:,:) ! <beta|psi> for real (at Gamma) wavefunctions for spinors
!
! allocate space for the quantities needed in EPW
!
IF (lgamma) THEN
!
! q=0 : evq and igkq are pointers to evc and igk
!
evq => evc
igkq => igk
ELSE
!
! q!=0 : evq, igkq are ALLOCATEd and calculated at point k+q
!
ALLOCATE (evq ( npwx*npol, nbnd))
ALLOCATE (igkq ( npwx ))
ENDIF
!
ALLOCATE (dvpsi ( npwx*npol, nbnd))
ALLOCATE ( dpsi ( npwx*npol, nbnd))
!
ALLOCATE (vlocq ( ngm, ntyp))
! SP: nrxx is not used in QE 5 ==> tg_nnr is the maximum among nnr
! This SHOULD have the same dim as nrxx had.
! ALLOCATE (dmuxc ( nrxx, nspin, nspin))
ALLOCATE (dmuxc ( dffts%tg_nnr, nspin, nspin))
!
ALLOCATE (eigqts ( nat))
ALLOCATE (rtau ( 3, 48, nat))
ALLOCATE (u ( 3 * nat, 3 * nat))
ALLOCATE (w2 ( 3 * nat))
ALLOCATE (dyn00 ( 3 * nat, 3 * nat))
ALLOCATE (t (npertx, npertx, 48,3 * nat))
ALLOCATE (tmq (npertx, npertx, 3 * nat))
allocate (name_rap_mode( 3 * nat))
allocate (num_rap_mode( 3 * nat ))
ALLOCATE (npert ( 3 * nat))
IF (okvan) THEN
ALLOCATE (int1 ( nhm, nhm, 3, nat, nspin))
ALLOCATE (int2 ( nhm, nhm, 3, nat, nat))
ALLOCATE (int3 ( nhm, nhm, npertx, nat, nspin))
ALLOCATE (int4 ( nhm * (nhm + 1)/2, 3, 3, nat, nspin))
ALLOCATE (int5 ( nhm * (nhm + 1)/2, 3, 3, nat , nat))
ALLOCATE (dpqq( nhm, nhm, 3, ntyp))
IF (noncolin) THEN
ALLOCATE(int1_nc( nhm, nhm, 3, nat, nspin))
ALLOCATE(int3_nc( nhm, nhm, npertx, nat, nspin))
ALLOCATE(int4_nc( nhm, nhm, 3, 3, nat, nspin))
ALLOCATE(becsum_nc( nhm*(nhm+1)/2, nat, npol, npol))
ALLOCATE(alphasum_nc( nhm*(nhm+1)/2, 3, nat, npol, npol))
IF (lspinorb) THEN
ALLOCATE(int2_so( nhm, nhm, 3, nat, nat, nspin))
ALLOCATE(int5_so( nhm, nhm, 3, 3, nat, nat, nspin))
ALLOCATE(dpqq_so( nhm, nhm, nspin, 3, ntyp))
END IF
END IF
ALLOCATE (alphasum ( nhm * (nhm + 1)/2, 3, nat , nspin))
ALLOCATE (this_dvkb3_is_on_file(nks))
this_dvkb3_is_on_file(:)=.false.
ENDIF
ALLOCATE (this_pcxpsi_is_on_file(nks,3))
this_pcxpsi_is_on_file(:,:)=.false.
! SP : from new PHonon/PH/allocate_phq.f90
ALLOCATE (becp1(nks))
ALLOCATE (alphap(3,nks))
DO ik=1,nks
call allocate_bec_type ( nkb, nbnd, becp1(ik) )
DO ipol=1,3
call allocate_bec_type ( nkb, nbnd, alphap(ipol,ik) )
ENDDO
END DO
CALL allocate_bec_type ( nkb, nbnd, becp )
IF (elph) ALLOCATE (el_ph_mat( nbnd, nbnd, nks, 3*nat))
END SUBROUTINE allocate_epwq
+ And the EPW/src/deallocate_epw.f90 to this
Code: Select all
!
! Copyright (C) 2010-2016 Samuel Ponce', Roxana Margine, Carla Verdi, Feliciano Giustino
! Copyright (C) 2007-2009 Jesse Noffsinger, Brad Malone, Feliciano Giustino
!
! This file is distributed under the terms of the GNU General Public
! License. See the file `LICENSE' in the root directory of the
! present distribution, or http://www.gnu.org/copyleft.gpl.txt .
!
! Code adapted from PH/deallocate_phq - Quantum-ESPRESSO group
!
!----------------------------------------------------------------------
SUBROUTINE deallocate_epw
!----------------------------------------------------------------------
!
! deallocates the variables allocated by allocate_epw
! this routine is unchanged as of 3/9/09 and should be cleaned and fixed
! 09/2009 Cleanup still necessary
! 12/2009 Added variables from elph.f90
!
! RM - Nov/Dec 2014
! Imported the noncolinear case implemented by xlzhang
!
!----------------------------------------------------------------------
USE phcom, ONLY : alphap, alphasum, alphasum_nc, &
becsum_nc, dmuxc, dpqq, dpqq_so, dpsi,&
drc, dpsi, dyn, dyn00, evq, w2, dvpsi,&
int5, vlocq, int2_so, int5_so
USE gc_lr, ONLY : grho, dvxc_rr, dvxc_s, dvxc_ss, dvxc_sr
USE lrus, ONLY : becp1, int3, int3_nc
USE phus, ONLY : int1, int1_nc, int2, int4, int4_nc
USE lr_symm_base, ONLY : rtau
USE noncollin_module, ONLY : m_loc
USE control_lr, ONLY : lgamma
USE becmod, ONLY : becp, deallocate_bec_type
USE elph2, ONLY : el_ph_mat, epf17, epsi, etf,&
etq, et_all, wf, wkf, wqf, wslen,&
xkq, xk_all, zstar, xkf, xqf, epmatwp
USE modes, ONLY : tmq, t, npert, u, name_rap_mode, num_rap_mode
USE qpoint, ONLY : eigqts, igkq
USE klist, ONLY : nks
!
IMPLICIT NONE
INTEGER :: ik, ipol
!
IF (lgamma) THEN
IF(ASSOCIATED(evq)) NULLIFY(evq)
IF(ASSOCIATED(igkq)) NULLIFY(igkq)
ELSE
IF(ASSOCIATED(evq)) DEALLOCATE(evq)
IF(ASSOCIATED(igkq)) DEALLOCATE(igkq)
END IF
!
IF(ALLOCATED(dvpsi)) DEALLOCATE (dvpsi)
IF(ALLOCATED(dpsi)) DEALLOCATE ( dpsi)
!
IF(ALLOCATED(vlocq)) DEALLOCATE (vlocq)
IF(ALLOCATED(dmuxc)) DEALLOCATE (dmuxc)
!
IF(ALLOCATED(eigqts)) DEALLOCATE (eigqts)
IF(ALLOCATED(rtau)) DEALLOCATE (rtau)
IF(ASSOCIATED(u)) DEALLOCATE (u)
if(allocated(name_rap_mode)) deallocate (name_rap_mode)
if(allocated(num_rap_mode)) deallocate (num_rap_mode)
IF(ALLOCATED(dyn)) DEALLOCATE (dyn)
IF(ALLOCATED(dyn00)) DEALLOCATE (dyn00)
IF(ALLOCATED(w2)) DEALLOCATE (w2)
IF(ASSOCIATED(t)) DEALLOCATE (t)
IF(ASSOCIATED(tmq)) DEALLOCATE (tmq)
IF(ALLOCATED(epsi)) DEALLOCATE (epsi)
IF(ALLOCATED(zstar)) DEALLOCATE (zstar)
!
IF(ALLOCATED(npert)) DEALLOCATE (npert)
!
IF(ALLOCATED(int1)) DEALLOCATE (int1)
IF(ALLOCATED(int2)) DEALLOCATE (int2)
IF(ALLOCATED(int3)) DEALLOCATE (int3)
IF(ALLOCATED(int4)) DEALLOCATE (int4)
IF(ALLOCATED(int5)) DEALLOCATE (int5)
IF(ALLOCATED(dpqq)) DEALLOCATE (dpqq)
IF(ALLOCATED(int1_nc)) DEALLOCATE(int1_nc)
IF(ALLOCATED(int3_nc)) DEALLOCATE(int3_nc)
IF(ALLOCATED(int4_nc)) DEALLOCATE(int4_nc)
IF(ALLOCATED(becsum_nc)) DEALLOCATE(becsum_nc)
IF(ALLOCATED(alphasum_nc)) DEALLOCATE(alphasum_nc)
IF(ALLOCATED(int2_so)) DEALLOCATE(int2_so)
IF(ALLOCATED(int5_so)) DEALLOCATE(int5_so)
IF(ALLOCATED(dpqq_so)) DEALLOCATE(dpqq_so)
!
!
IF(ALLOCATED(alphasum)) DEALLOCATE (alphasum)
! RM - code crashed when the 2 lines are not commented out
! IF(ALLOCATED(this_dvkb3_is_on_file)) DEALLOCATE (this_dvkb3_is_on_file)
! IF(ALLOCATED(this_pcxpsi_is_on_file)) DEALLOCATE (this_pcxpsi_is_on_file)
if(allocated(alphap)) then
do ik=1,nks
do ipol=1,3
call deallocate_bec_type ( alphap(ipol,ik) )
enddo
end do
deallocate (alphap)
endif
if(allocated(becp1)) then
do ik=1,size(becp1)
call deallocate_bec_type ( becp1(ik) )
end do
deallocate(becp1)
end if
call deallocate_bec_type ( becp )
starting
IF(ALLOCATED(m_loc)) DEALLOCATE(m_loc)
!
IF(ALLOCATED(drc)) DEALLOCATE(drc)
!
IF(ALLOCATED(dvxc_rr)) DEALLOCATE (dvxc_rr)
IF(ALLOCATED(dvxc_sr)) DEALLOCATE (dvxc_sr)
IF(ALLOCATED(dvxc_ss)) DEALLOCATE (dvxc_ss)
IF(ALLOCATED(dvxc_s)) DEALLOCATE (dvxc_s)
IF(ALLOCATED(grho)) DEALLOCATE (grho)
!
! EPW variables
!
IF(ALLOCATED(el_ph_mat)) DEALLOCATE (el_ph_mat)
IF(ALLOCATED(epmatwp)) DEALLOCATE (epmatwp)
IF(ALLOCATED(epf17)) DEALLOCATE (epf17)
IF(ALLOCATED(etq)) DEALLOCATE (etq)
IF(ALLOCATED(etf)) DEALLOCATE (etf)
IF(ALLOCATED(wf)) DEALLOCATE (wf)
IF(ALLOCATED(xkq)) DEALLOCATE (xkq)
IF(ALLOCATED(xkf)) DEALLOCATE (xkf)
IF(ALLOCATED(wkf)) DEALLOCATE (wkf)
IF(ALLOCATED(xqf)) DEALLOCATE (xqf)
IF(ALLOCATED(wqf)) DEALLOCATE (wqf)
IF(ALLOCATED(xk_all)) DEALLOCATE (xk_all)
IF(ALLOCATED(et_all)) DEALLOCATE (et_all)
IF(ALLOCATED(wslen)) DEALLOCATE (wslen)
!
END SUBROUTINE deallocate_epw
+ then
cd espresso/EPW/src && make
That was what I tried and successfully compiled EPW.
Code: Select all
Program EPW v.4.0.0 starts on 11Apr2016 at 23:29:10
This program is part of the open-source Quantum ESPRESSO suite
for quantum simulation of materials; please cite
"P. Giannozzi et al., J. Phys.:Condens. Matter 21 395502 (2009);
URL http://www.quantum-espresso.org",
in publications or presentations arising from this work. More details at
http://www.quantum-espresso.org/quote
Parallel version (MPI), running on 2 processors
R & G space division: proc/nbgrp/npool/nimage = 2
HTH,
Duc-Long
Graduate Student, Molecular Science and Technology Program, TIGP
Institute of Atomic and Molecular Sciences,
Academia Sinica, Taipei 106, Taiwan
Phone +886 979279073
Last edited by dlnguyen on Tue Apr 12, 2016 1:23 am, edited 1 time in total.
Re: control_lr and several other missing modules for EPW-4
Dear Duc-Long,
The changes worked but I had to remove the following line from the deallocate_epw.f90 which says "starting". Now I have epw.x.
I am very grateful for your input.
Best wishes and good luck with your research.
Vahid
The changes worked but I had to remove the following line from the deallocate_epw.f90 which says "starting". Now I have epw.x.
I am very grateful for your input.
Best wishes and good luck with your research.
Vahid