Skip to content

The magnetic moments becomes increasingly large due to small (1e-11) numerical fluctuations #3527

@hongriTianqi

Description

@hongriTianqi

Describe the bug

As can be seen below in an example, the small magnetic moment in the order of 1e-12 will induce larger and larger magnetic moments in y direction, resulting in difficulty of convergence in the lambda loop

Step (Outer -- Inner) =  6 -- 24          RMS = 3.7238680504e-06
Step (Outer -- Inner) =  6 -- 25          RMS = 7.5230684743e-07
Step (Outer -- Inner) =  6 -- 26          RMS = 5.2305459901e-08
Meet convergence criterion ( < 1.0000000000e-07 ), exit.
after-optimization spin: (print in the inner loop): 
ATOM 1   -4.4782397511e-08 -1.2412521673e-12 1.6999999730e+00
ATOM 2   1.4722431406e+00 -1.2428208289e-12 -8.5000002527e-01
after-optimization lambda: (print in the inner loop): 
ATOM 1   -1.4648089740e-02 0.0000000000e+00 -8.5237087421e-03
ATOM 2   -1.4705793350e-02 0.0000000000e+00 -8.4237631640e-03
Inner optimization for lambda ends.
===============================================================================
 GE7    -6.440357e+03  -1.215134e-03  3.030e-03  1.425e+02  
===============================================================================
Inner optimization for lambda begins ...
Covergence criterion for the iteration: 1.000e-07
initial lambda: 
ATOM 1   -1.4648089139e-02 -1.1764815605e-08 -8.5237089776e-03
ATOM 2   -1.4705793253e-02 1.1765657717e-08 -8.4237625258e-03
initial spin: 
ATOM 1   3.4261262311e-07 1.7520288126e-05 1.6999993302e+00
ATOM 2   1.4722427777e+00 -1.7520323655e-05 -8.4999936841e-01
target spin: 
ATOM 1   0.0000000000e+00 0.0000000000e+00 1.7000000000e+00
ATOM 2   1.4722431864e+00 0.0000000000e+00 -8.5000000000e-01
Step (Outer -- Inner) =  7 -- 1           RMS = 1.7536450148e-05
Step (Outer -- Inner) =  7 -- 2           RMS = 3.3443089017e-02
Step (Outer -- Inner) =  7 -- 3           RMS = 2.5955056083e-02
Step (Outer -- Inner) =  7 -- 4           RMS = 2.5927924763e-02
...
Step (Outer -- Inner) =  9 -- 93          RMS = 4.4377218400e-04
Step (Outer -- Inner) =  9 -- 94          RMS = 4.4377218201e-04
Step (Outer -- Inner) =  9 -- 95          RMS = 4.4377219502e-04
Step (Outer -- Inner) =  9 -- 96          RMS = 4.4377218185e-04
Step (Outer -- Inner) =  9 -- 97          RMS = 4.4377219201e-04
Step (Outer -- Inner) =  9 -- 98          RMS = 4.4377218491e-04
Step (Outer -- Inner) =  9 -- 99          RMS = 4.4377218733e-04
Step (Outer -- Inner) =  9 -- 100         RMS = 4.4377218912e-04
Reach maximum number of steps ( 100 ), exit.
after-optimization spin: (print in the inner loop): 
ATOM 1   3.6933035125e-04 2.3908847039e-04 1.6999417588e+00
ATOM 2   1.4723771494e+00 -2.3916070965e-04 -8.4965105393e-01
after-optimization lambda: (print in the inner loop): 
ATOM 1   -1.5843811389e-02 -1.3502661244e-07 -9.1852863177e-03
ATOM 2   -1.5876420578e-02 1.3625511696e-07 -9.1288001577e-03
Inner optimization for lambda ends.
===============================================================================
 GE10   -6.440358e+03  -9.363864e-05  4.719e-04  5.262e+02  
===============================================================================
Inner optimization for lambda begins ...
Covergence criterion for the iteration: 1.000e-07
initial lambda: 
ATOM 1   -1.5843811430e-02 -1.3505272075e-07 -9.1852863122e-03
ATOM 2   -1.5876420594e-02 1.3628123314e-07 -9.1288001966e-03
initial spin: 
ATOM 1   3.6931028468e-04 2.3912735290e-04 1.6999417913e+00
ATOM 2   1.4723771675e+00 -2.3919959239e-04 -8.4965108754e-01

Expected behavior

fix the bug

To Reproduce

180.tar.gz

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

Metadata

Metadata

Assignees

Labels

BugsBugs that only solvable with sufficient knowledge of DFT

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions