PrecisIon tests and corresponding annotation for each calculation module are needed for future development
Describe the Testing Issue
In ABACUS there are may modules calculate on data and those calculations usually have clear physical meaning and analytical reference. For example the most general one, $HC=ESC$ the eigenvalue problem, a backcheck of precision of this diagonalization operation is needed, say the orthonoramlity of $C$. In unittest we can build up many model matrices and do test, then we will have an estimation of error of this function. Another example is a simple multiplication operation like $D^\dagger SD = D$, in principle the left should be exactly equal to the right one but precison would lose in actual.
Not sure about how many modules can have this precision estimation but this is very important for the overall precision of ABACUS.
Additional Context
No response
Task list for Issue attackers (only for developers)
- [ ] Understand the testing issue described by the developer.
- [ ] Review the specific test case, expected and actual results, and any error messages.
- [ ] Identify the root cause of the test failure or issue.
- [ ] If a possible solution is suggested, evaluate its feasibility and effectiveness.
- [ ] Implement a fix for the test failure or issue, or create a new test case if needed.
- [ ] Verify that the fix resolves the testing issue and the test case passes.
- [ ] Review and update any relevant documentation, such as test plans or user guides.
- [ ] Ensure the testing issue is resolved and close the ticket.
- [ ] Share any lessons learned or best practices with the team to prevent similar issues in the future.