Conversation
Signed-off-by: Christian Selzer <[email protected]>
Signed-off-by: Christian Selzer <[email protected]>
Codecov Report✅ All modified and coverable lines are covered by tests.
Additional details and impacted files@@ Coverage Diff @@
## main #101 +/- ##
===========================================
- Coverage 72.46% 11.96% -60.51%
===========================================
Files 86 5 -81
Lines 12944 209 -12735
Branches 3783 95 -3688
===========================================
- Hits 9380 25 -9355
+ Misses 776 174 -602
+ Partials 2788 10 -2778 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
Maybe we can find a better ground truth for the atomic masses than the xtb source code like example codata. While I like to stay consistent with xtb having properly verified values in mctc-lib has higher priority. |
|
Hi @awvwgk, thank you for looking into my PR. I agree with you that the xTB source code itself is probably not the best source for such information. I took some time to look a little bit closer at this topic, and it is a little bit more complex than I hoped it to be. (as always XD) The main problem seems to me that there is not one single defined value for the isotopic composition of an element, as abundances vary for different terrestrial sources.
As for several elements (many of the radioactive ones), no "standard atomic weight" can be given IUPAC has not published any values for them (https://www.ciaaw.org/atomic-weights.htm). My best idea going forward is to use these values by NIST (https://www.nist.gov/pml/atomic-weights-and-isotopic-compositions-relative-atomic-masses) and calculate an isotope-averaged value based on the isotopic composition values given there, i.e. Where:
|
I implemented the atomic masses. This helps to assimilate tad-mctc (https://github.com/tad-mctc/tad-mctc/tree/main) and mctc-lib. the code is covered by tests.
The masses are taken from the xtb repository (commit 7618f60). build with fpm 0.11.0 and gfortran 11.4.0.
I found differences between the masses implemented in xtb and tad-mctc. this will likely lead to small differences in e.g. mass-weighted hessians between dxtb and xtb.