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

Can't `get_s` be used simultaneously with `out_mat_l`?

Open woyolo990422 opened this issue 2 months ago • 9 comments

Describe the bug

In the develop version, get_s and out_mat_l cannot be used simultaneously.

Expected behavior

No response

To Reproduce

No response

Environment

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).

woyolo990422 avatar Nov 05 '25 08:11 woyolo990422

That's correct.

mohanchen avatar Nov 05 '25 11:11 mohanchen

I think this part of <ϕᵢ^α | Lᶻ | ϕⱼ^β>  does not require self-consistent solution of DFT. It can be written as a distance analytic or interpolation table function, so it can be output directly like an overlap matrix? @mohanchen @kirk0830

woyolo990422 avatar Nov 05 '25 15:11 woyolo990422

Hi, @woyolo990422

If you do not want SCF, you can set the maximal number of SCF steps to zero.

Regards.

kirk0830 avatar Nov 06 '25 01:11 kirk0830

@kirk0830 Thank you. I'll try.

woyolo990422 avatar Nov 06 '25 01:11 woyolo990422

@kirk0830 In the 320-atom large system, there is a problem with this method, whether using mpi or omp parallelism :

run.tar.gz

woyolo990422 avatar Nov 06 '25 03:11 woyolo990422

Hi, @woyolo990422

I find you use ABACUS with a wrong setting of parameters:

  1. why ecutwfc is only 60?
  2. why out_mat_l is assigned as 1 true?

Regards.

kirk0830 avatar Nov 06 '25 10:11 kirk0830

@kirk0830 I set ecutwfc to 60 to get results quickly. Just as a test. When calculating 1000 atoms, I need 100GB of memory. When calculating 2500 atoms and above, I need close to 500GB of memory. out_mat_l When solving large systems, performance and memory may need to be optimized.

woyolo990422 avatar Nov 07 '25 00:11 woyolo990422

@woyolo990422 thanks for feedback. The two-center-integration algorithm, as far as I remember, still have possibility to speed-up. However, your case is relatively scarcely seen. Plus, actually the calculation on L matrix does not rely on the FFT grid set by ecutwfc. So you can set it as low as you can. And the evaluation on matrix element of L does not depend on SOC, so you can switch-off the lspinorb.

kirk0830 avatar Nov 07 '25 01:11 kirk0830

@kirk0830 I found that the indices of the supercell (iRx, iRy, iRz) are different from overlap. Why is this?

out.zip

woyolo990422 avatar Nov 07 '25 15:11 woyolo990422

Hi, @woyolo990422

Could you please tell me what the difference is in short?

Regards.

kirk0830 avatar Nov 10 '25 01:11 kirk0830

@kirk0830 I don't know. I originally wanted to correspond this to the cell shift of the overlap matrix or the Hamiltonian matrix and then restore the Hamiltonian matrix block of each pair of edges as my learning goal.

woyolo990422 avatar Nov 10 '25 07:11 woyolo990422