abacus-develop icon indicating copy to clipboard operation
abacus-develop copied to clipboard

Wavefunction reading cannot be normally skipped when file not exist and `init_wfc file`

Open QuantumMisaka opened this issue 7 months ago • 4 comments

Describe the bug

After #3140 , We can use init_wfc file and init_chg file when the file is not exist, ABACUS will skip the reading process and do calculation. But in the 3.7.0 version, the wavefunction part have problem and cannot skip properly:

 Read in wave functions files: 8
Can't find the wave function file: WFC_NAO_K1.txt
 
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                         NOTICE                           
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
 Failed to read in wavefunction.
 CHECK IN FILE : OUT.ABACUS/warning.log
 
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                         NOTICE                           
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
TIME STATISTICS

while the charge part maintained.

 START CHARGE      : file
 WARNING: Failed to read charge density from file. Possible reasons: 
 - not found: The default directory of SPIN1_CHG.cube is OUT.suffix, 
or you must set read_file_dir to a specific directory. 
 - parameter mismatch: check the previous warning.
 Use atomic initialization instead.
 DONE(13.1617    SEC) : INIT SCF
 * * * * * *
 << Start SCF iteration.

Expected behavior

The init_wfc file function should work like init_chg file , when the wavefunction file not exist, the init part should skip back to atomic.

To Reproduce

Run with init_wfc file

No response

Environment

ABACUS 3.7.0 Commit: a33935612 (Thu Jun 27 16:40:42 2024 +0800) installed by Intel-toolchain Hardware: intel-8358

No response

Additional Context

No response

Task list for Issue attackers (only for developers)

  • [ ] Verify the issue is not a duplicate.
  • [ ] Describe the bug.
  • [ ] Steps to reproduce.
  • [ ] Expected behavior.
  • [ ] Error message.
  • [ ] Environment details.
  • [ ] Additional context.
  • [ ] Assign a priority level (low, medium, high, urgent).
  • [ ] Assign the issue to a team member.
  • [ ] Label the issue with relevant tags.
  • [ ] Identify possible related issues.
  • [ ] Create a unit test or automated test to reproduce the bug (if applicable).
  • [ ] Fix the bug.
  • [ ] Test the fix.
  • [ ] Update documentation (if necessary).
  • [ ] Close the issue and inform the reporter (if applicable).

QuantumMisaka avatar Jul 04 '24 02:07 QuantumMisaka