Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ABACUS esolver_type lj can only be applied to one element, it would be better to support more elements #4444

Closed
16 tasks
kirk0830 opened this issue Jun 20, 2024 · 0 comments · Fixed by #4659
Closed
16 tasks
Assignees
Labels
Features Needed The features are indeed needed, and developers should have sophisticated knowledge

Comments

@kirk0830
Copy link
Collaborator

Describe the bug

ABACUS Esolver_LJ can support only single atom type run. If there are multiple types of atoms, the coefficients should be combined by either "rule 1" or "rule 2", see manual of GROMACS:
https://manual.gromacs.org/2024.2/reference-manual/topologies/parameter-files.html#non-bonded-parameters
However in ABACUS, the present implementation is like:

        else if (strcmp("lj_rcut", word) == 0)
        {
            read_value(ifs, mdp.lj_rcut);
        }
        else if (strcmp("lj_epsilon", word) == 0)
        {
            read_value(ifs, mdp.lj_epsilon);
        }
        else if (strcmp("lj_sigma", word) == 0)
        {
            read_value(ifs, mdp.lj_sigma);
        }
        lj_rcut = 8.5;
        lj_epsilon = 0.01032;
        lj_sigma = 3.405;

This is, a toy implemented rather than a function can use. If the correct version is not implemented, the esolver_lj will not be ready for practical use.
Additionally, there are redundant information print on screen:


                              ABACUS v3.6.5

               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: 5413d23bc (Sun Jun 16 16:17:42 2024 +0800)

 Thu Jun 20 09:53:33 2024
 MAKE THE DIR         : OUT.ABACUS/
 RUNNING WITH DEVICE  : CPU / 13th Gen Intel(R) Core(TM) i7-13700KF
 -------------------------------------------
 SELF-CONSISTENT :
 -------------------------------------------
TIME STATISTICS
--------------------------------------------------------
  CLASS_NAME     NAME     TIME/s  CALLS   AVG/s  PER/%
--------------------------------------------------------
              total       0.01   48       0.00   100.00
 Driver       reading     0.00   1        0.00   52.97
 Input        Init        0.00   1        0.00   21.70
 Input_Conv   Convert     0.00   1        0.00   16.55
 Driver       driver_line 0.00   1        0.00   46.66
 UnitCell     check_tau   0.00   1        0.00   0.06
 Ions         opt_ions    0.00   1        0.00   16.12
 atom_arrange search      0.00   1        0.00   12.66
 Grid_Driver  Find_atom   0.00   51       0.00   0.40
--------------------------------------------------------


 START  Time  : Thu Jun 20 09:53:33 2024
 FINISH Time  : Thu Jun 20 09:53:33 2024
 TOTAL  Time  : 0
 SEE INFORMATION IN : OUT.ABACUS/

Plus, seems we dont have example for this kind of run in the example/ folder

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).
@kirk0830 kirk0830 added the Bugs Bugs that only solvable with sufficient knowledge of DFT label Jun 20, 2024
@kirk0830 kirk0830 changed the title Bug: ABACUS esolver_type lj is not practically usable Bug: ABACUS esolver_type lj is not implemented correctly thus not practically usable Jun 20, 2024
@mohanchen mohanchen added Features Needed The features are indeed needed, and developers should have sophisticated knowledge and removed Bugs Bugs that only solvable with sufficient knowledge of DFT labels Jul 11, 2024
@mohanchen mohanchen changed the title Bug: ABACUS esolver_type lj is not implemented correctly thus not practically usable ABACUS esolver_type lj can only be applied to one element, it would be better to support more elements Jul 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Features Needed The features are indeed needed, and developers should have sophisticated knowledge
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants