deepmodeling / abacus-develop

An electronic structure package based on either plane wave basis or numerical atomic orbitals.
http://abacus.ustc.edu.cn
GNU Lesser General Public License v3.0
174 stars 136 forks source link

abacus 3.8.2 gives errors in SCF calculations that were not encountered in abacus3.5.3. #5502

Open yycx1111 opened 1 week ago

yycx1111 commented 1 week ago

Describe the bug

I use abacus3.8.2 to do SCF calculations for water molecules and the following error occurs. Changing the nbands in INPUT to be larger makes the calculation to proceed successfully, but the energy in running_scf.log is wrong. These did not occur when doing the same calculations previously using abacus 3.5.3.

Here is the warning message.

                              ABACUS v3.8.2

               Atomic-orbital Based Ab-initio Computation at UStc                    

                     Website: http://abacus.ustc.edu.cn/                             
               Documentation: https://abacus.deepmodeling.com/                       
                  Repository: https://github.com/abacusmodeling/abacus-develop       
                              https://github.com/deepmodeling/abacus-develop         
                      Commit: 9a2dcbd (Sun Nov 10 00:39:55 2024 -0500)

 Fri Nov 15 11:05:35 2024
 MAKE THE DIR         : OUT.abacus/
 RUNNING WITH DEVICE  : CPU / Genuine Intel(R) CPU $0000%@

 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                         NOTICE                           
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

 Too few bands!
 CHECK IN FILE : OUT.abacus/warning.log

 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                         NOTICE                           
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
TIME STATISTICS
------------------------------------------------------------------
   CLASS_NAME           NAME        TIME/s  CALLS   AVG/s  PER/%  
------------------------------------------------------------------
                 total              0.04   1        0.04   100.00 
 Driver          reading            0.02   1        0.02   47.71  
 Input_Conv      Convert            0.00   1        0.00   1.07   
 Driver          driver_line        0.00   1        0.00   0.00   
 UnitCell        check_tau          0.00   1        0.00   0.01   
 ESolver_KS_LCAO before_all_runners 0.00   1        0.00   0.00   
------------------------------------------------------------------

See output information in : OUT.abacus/

INPUT

INPUT_PARAMETERS
#Parameters (1.General)
suffix                  abacus
ntype                   2
pseudo_dir              ./
orbital_dir             ./
calculation             scf
nbands                  16
symmetry                0

#Parameters (2.Iteration)
ecutwfc                 50
scf_thr                     1e-8
scf_nmax                   50

#Parameters (3.Basis)
basis_type              lcao 
gamma_only              1

#Parameters (4.Smearing)
smearing_method                gaussian
smearing_sigma                   0.02

#Parameters (5.Mixing)
mixing_type             broyden
mixing_beta             0.4

Expected behavior

ABACUS 3.8.2 completes the SCF calculations for water molecules and the energy calculations are correct, like they were before with abacus 3.5.3. Calculations using LDA, PBE can have differences in calculation time and energy results.

To Reproduce

No response

Environment

No response

Additional Context

No response

Task list for Issue attackers (only for developers)

WHUweiqingzhou commented 1 week ago

@yycx1111 could you upload your input and output files?

yycx1111 commented 1 week ago

input files: INPUT.txt KPT.txt STRU.txt

outputfiles: running_scf.log warning.log

yycx1111 commented 4 days ago

Doing calculations with abacus 3.5.3 also gives the following error. Why do I get this error when doing calculations with PBE?

ABACUS v3.5.3

           Atomic-orbital Based Ab-initio Computation at UStc                    

                 Website: http://abacus.ustc.edu.cn/                             
           Documentation: https://abacus.deepmodeling.com/                       
              Repository: https://github.com/abacusmodeling/abacus-develop       
                          https://github.com/deepmodeling/abacus-develop         
                  Commit: 2d6fd2d (Tue Feb 20 18:09:33 2024 +0800)

Mon Nov 18 09:32:40 2024 MAKE THE DIR : OUT.abacus/ RUNNING WITH DEVICE : CPU / Genuine Intel(R) CPU $0000%@ UNIFORM GRID DIM : 64 64 64 UNIFORM GRID DIM(BIG) : 16 16 16 DONE(0.0761271 SEC) : SETUP UNITCELL DONE(0.0764796 SEC) : INIT K-POINTS

Self-consistent calculations for electrons

SPIN KPOINTS PROCESSORS NBASE
1 Gamma 1 276

Use Systematically Improvable Atomic bases

ELEMENT ORBITALS NBASE NATOM XC
H 2s1p-6au 5 24
O 2s2p1d-6au 13 12

Initial plane wave basis and FFT box

DONE(0.0848662 SEC) : INIT PLANEWAVE

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! NOTICE
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Too few bands! CHECK IN FILE : OUT.abacus/warning.log

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! NOTICE
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! TIME STATISTICS

 CLASS_NAME              NAME         TIME(Sec)  CALLS   AVG(Sec) PER(%)

                 total                  0.14           7   0.02   100.00

Driver reading 0.02 1 0.02 11.58 Input Init 0.01 1 0.01 9.60 Input_Conv Convert 0.00 1 0.00 0.64 Driver driver_line 0.00 1 0.00 0.00 UnitCell check_tau 0.00 1 0.00 0.00 PW_Basis_Sup setuptransform 0.01 1 0.01 7.42 PW_Basis_Sup distributeg 0.00 1 0.00 1.18 mymath heapsort 0.01 3 0.00 10.59 PW_Basis_K setuptransform 0.01 1 0.01 5.15 PW_Basis_K distributeg 0.00 1 0.00 0.63 PW_Basis setup_struc_factor 0.05 1 0.05 38.28

See output information in : OUT.abacus/