aradi / SCPC-Method

21 stars 14 forks source link

error for scpc-tutorial-o2tio2 #13

Closed shixinxin-XAUAT closed 1 year ago

shixinxin-XAUAT commented 1 year ago

Dear Dr. Aradi,

I am using VASP 6.3 and have compiled the SCPC code. However, when running the CHARGED and SAVE examples in the scpc-tutorial/o2tio2 folder, I encountered errors with the message "call to ZHEGV failed, returncode 63 1 64" and the note "the following floating-point exceptions are signalling: IEEE_INVALID_FLAG STOP1". The NEUTRAL example worked fine without issues.

I wanted to consult you on what could be the potential causes of this error. Based on the information provided, it seems some invalid floating point values are triggering the exception in the ZHEGV LAPACK routine during the dielectric matrix inversion in the CHARGED and SAVE examples.

Could this be related to the different charge states and constraints in these examples? Or are there some thresholds I should adjust in the input files? I am using the default compilation settings for the SCPC code. Please advise if there are any workarounds or solutions to resolve this issue. Your guidance would be greatly appreciated.

Looking forward to hearing back from you. Thank you very much for your time and assistance.

Best regards, Xinxin Shi

isobestico commented 1 year ago

Dear M. Shi,

First of all, I would like to ask you to check the revision you are using. Please check in the src/scpc.F if you are using the revision 7. You should be able to find the line below at the beginning of src/scpc.F fifle

  character(80) :: release = 'release: vasp(6.2.0) scpc(rev7)'

In case you are not using the right last revision, please send me an email at my Univ. Lorraine EMail that I will provide you with the last revision, maybe this could fix your issue.

However, the issue you are relating to is probably associated with your VASP installation. I am not saying it is wrong, I am stating that depending on the compilers and external libraries you have used you might have some issues like this one. Hence 👍

(1) What compiler and version did you use? (2) What math library did you use for BLAS/LAPACK? (3) What version of DLMG and FFTW did you use to build with SCPC? (4) Are you getting the same issue with another example of the tutorial, for example, the VCl(-) defect at NaCl tutorial? Can you find the same issue of the float exempt in the LACPCK routine

shixinxin-XAUAT commented 1 year ago

Dear Dr. Aradi,

Thanks for your fast reply. Please accept my apologies for the late reply.

I'm pleased to let you know that I have gotten the cause of the errors when running CHARGED and SAVE examples. It turned out the problem was with the POTCAR file. I generated the POTCAR by vaspkit and it utilized the Ti POTCAR_sv file, which sets Ti valence electrons to 12 instead of 4. However, in the INCAR, the NELECT was specified based on Ti having 4 valence electrons.

This mismatch between the POTCAR and INCAR specifications was causing the errors. Once I generated the POTCAR properly with the right valence electrons for Ti, I was able to run the examples successfully. Thank you for your suggestions on debugging this issue. I really appreciate you taking the time to provide guidance on using SCPC.

I'm deeply impressed by the novel and useful SCPC method you have introduced for correcting the electrostatic potential in charged periodic supercell calculations. This method provides valuable physical insight and technical guidance for simulating charged defect systems using DFT. Thanks again!

Best wishes :) Xinxin Shi

isobestico commented 1 year ago

Thank you for your time in reporting that this issue was solved. I will close this issue.