Hello,
I am studying a Pd surface with CO adsorbed on it. I have a total of 20 atoms on my cell and I am including a total of 120 bands in the wannierization. I have evaluated the ep matrix elements and I have been able to interpolate them starting from a 12x12x1 and 1x1x1 coarse k and q grids.
I was testing the convergence of my calculations so I've used another nscf calculation with a 16x16x1 k-grid as input. In this case, I am obtaining this error on the "epw_write" routine when the ep-matrix elements are computed on the wannier respresentation:
Error in routine epw_write (1):
error opening Pdsur.epmatwp (Pdsur is the prefix that I am using)
Here is the EPW input that I am using:
&inputepw
prefix = 'Pdsur',
outdir = './'
dvscf_dir = './save'
elph = .true.
kmaps = .false.
epbwrite = .true.
epbread = .false.
epwwrite = .true.
epwread = .false.
prtgkk =.true.
iverbosity = 1
wannierize = .false.
nbndsub = 110
etf_mem = 0
elecselfen = .false.
phonselfen = .false.
a2f = .false.
fsthick = 35. ! eV
temps = 0.075! Ki
nstemp = 1
degaussw = 0.1 ! eV
nkf1 = 16
nkf2 = 16
nkf3 = 1
nqf1 = 1
nqf2 = 1
nqf3 = 1
nk1 = 16
nk2 = 16
nk3 = 1
nq1 = 1
nq2 = 1
nq3 = 1
/
1
0.000000000000000E+00 0.000000000000000E+00 0.000000000000000E+00
Before this run, I performed another one wit etf_mem = 1 and I obtained a similar error message but when the code tries to write the file Pdsur.epmatwe1 file. That is why I have performed this one with etf_mem=0, as the file XXX.epmatew1 is not written in this case.
If anyone else have any idea of what is happening or it has happened the same to him/her, I'll be grateful to hear about it.
I also have a question: is it possible to start a calulation with epbread = .true. to read the matrix elements in the block representation and interpolate them directly to a finer k-grid without writing the ‘XX.epmatwpX’ files?. Actually, this will be perfect for me.
Or is is strictly necessary to compute the matrix elements in wannier representation in the initial grid and then interpolate them in a finer grid in a second run?
error writing ep
Moderator: stiwari
Re: error writing ep
Dear rbombin:
Could you let me know which version of EPW you are using? In addition, could you provide epw.out?
Sincerely,
H. Lee
Could you let me know which version of EPW you are using? In addition, could you provide epw.out?
You can restart from prefix.epbX files instead of the restart with prefix.epmatwp file and I think (however, I always restart with prefix.epmatwp file since with it we can restart using the different number of cores) that you can skip writing prefix.epmatwp file by adding "epwwrite = .false.", but even in this case, EPW calculates the e-ph matrix elements in the Wannier representaion which is essential in the interpolation onto fine grids.I also have a question: is it possible to start a calulation with epbread = .true. to read the matrix elements in the block representation and interpolate them directly to a finer k-grid without writing the ‘XX.epmatwpX’ files?. Actually, this will be perfect for me.
Or is is strictly necessary to compute the matrix elements in wannier representation in the initial grid and then interpolate them in a finer grid in a second run?
Sincerely,
H. Lee
Re: error writing ep
Dear H. Lee,
Thank you so much for the fast answer. I attach the output of the EPW run (https://drive.google.com/file/d/1tpy5wR ... sp=sharing) As I was using iverbosity=1 the output is large.
In order to skip writing the prefix.epmatwp file I need to set epwread=true isn't that? But I cannot do this as I still don't have these files on the disk. Do you suggest me to simply comment the line in which the the routine epw_write is called in the code?
Raúl Bombín
Thank you so much for the fast answer. I attach the output of the EPW run (https://drive.google.com/file/d/1tpy5wR ... sp=sharing) As I was using iverbosity=1 the output is large.
In order to skip writing the prefix.epmatwp file I need to set epwread=true isn't that? But I cannot do this as I still don't have these files on the disk. Do you suggest me to simply comment the line in which the the routine epw_write is called in the code?
Raúl Bombín
Re: error writing ep
Dear Raúl Bombín:
I guess that your issue is related to the fact that the record length of file of prefix.epmatwp is beyond 2GB; in your case, the record length in the direct access of prefix.epmatwp file is 16 (complex valued) * 110 (nbndsub) * 110 (nbndsub) * 60 (nmodes) * 289 (# of WS vectors) = 3357024000 Bytes.
So with the current version of EPW, you can't use etf_mem=0 for your calculation.
I have no experience with it, but could you try etf_mem=2?
PS) I guess that you have no issue when using 12x12x1 coarse k grids. What is the value of "Number of WS vectors for electrons" in this case? You can find it in epw.out by searching for the line including "Number of WS vectors for electrons".
Sincerely,
H. Lee
I guess that your issue is related to the fact that the record length of file of prefix.epmatwp is beyond 2GB; in your case, the record length in the direct access of prefix.epmatwp file is 16 (complex valued) * 110 (nbndsub) * 110 (nbndsub) * 60 (nmodes) * 289 (# of WS vectors) = 3357024000 Bytes.
So with the current version of EPW, you can't use etf_mem=0 for your calculation.
I have no experience with it, but could you try etf_mem=2?
What I mean by was to try "epwread=.false." and "epwwrite=.false.", but I realized that in the current version of EPW it is necessary to set either epwread or epwwirte to .true.In order to skip writing the prefix.epmatwp file I need to set epwread=true isn't that? But I cannot do this as I still don't have these files on the disk. Do you suggest me to simply comment the line in which the the routine epw_write is called in the code?
PS) I guess that you have no issue when using 12x12x1 coarse k grids. What is the value of "Number of WS vectors for electrons" in this case? You can find it in epw.out by searching for the line including "Number of WS vectors for electrons".
Sincerely,
H. Lee
Re: error writing ep
Dear H. Lee,
I have tried running it with etf_mem=2 and I obtain a similar error but for the file prefix.epmatwe1, that is written in an intermediate step.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Error in routine diropn (116):
error opening ./Pdsur.epmatwe1
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
When I run it in a 12x12x1 k-grid the number of WS vectors for electrons is 169, so in that case the size of the prefix.epmatwp fileto be written is 1.83 GB. It seems that I was close to the 2 GB limit that you indicate me. Is there any way of avoiding this limit?
Thank you so much for your time, sincerely,
Raúl Bombín
I have tried running it with etf_mem=2 and I obtain a similar error but for the file prefix.epmatwe1, that is written in an intermediate step.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Error in routine diropn (116):
error opening ./Pdsur.epmatwe1
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
When I run it in a 12x12x1 k-grid the number of WS vectors for electrons is 169, so in that case the size of the prefix.epmatwp fileto be written is 1.83 GB. It seems that I was close to the 2 GB limit that you indicate me. Is there any way of avoiding this limit?
Thank you so much for your time, sincerely,
Raúl Bombín