[ase-users] Update to IUPAC 2016 elemental weights - discussion
ehermes at chem.wisc.edu
Wed Dec 7 19:10:17 CET 2016
On Wed, 2016-12-07 at 13:27 +0000, Jakob Schiøtz via ase-users wrote:
> > On 07 Dec 2016, at 13:12, Tom Daff via ase-users <ase-users at listser
> > v.fysik.dtu.dk> wrote:
> > Dear Users,
> > As suggested by Jens, feedback is greatly welcomed on a merge
> > request
> > that I submitted recently:
> > https://gitlab.com/ase/ase/merge_requests/360
> > IUPAC regularly revises the names and atomic weights of the
> > elements.
> > Their most recent publication on the weights can be found in Pure
> > and
> > Applied chemistry (https://doi.org/10.1515/pac-2015-0305). The
> > masses
> > in ase have been the same since the beginning, but I have proposed
> > updating them to be in line with the most up-to-date values. There
> > are a
> > few issues which should probably be discussed first:
> > * Changing the weights will change the results of some
> > calculations.
> > Most values are the same to 4 or 5 significant figures, however
> > changing
> > the weights will cause slight changes in things like MD, centre of
> > mass,
> > phonons. Should anything be done about this? Some of the calculator
> > tests may be affected too.
> My personal opinion is that ASE should be updated to reflect the
> modern values, and the affected tests should be updated as well. If
> the test was passing before, and we know why the values change a bit,
> then this should be OK.
I agree that ASE should include up-to-date values for physical
constants, including atomic masses. However, since this constitutes a
potentially breaking change, it should be done in such a way so as not
to surprise users. This means it might justify a major version number
increment, and should be front-and-center in the release notes
(alongside all other compatibility-breaking changes).
> > * Some atomic weights are expressed as intervals. The masses of
> > isotopes can be measured more precisely than their relative
> > abundances
> > so a range of expected values is given. IUPAC also has
> > "conventional"
> > values which are to be used where an interval can't be used. In
> > some
> > cases these end up with fewer digits of precision than ase already
> > included (e.g H was previously 1.00794 but is actually defined as
> > the
> > interval [1.00784, 1.00811], with a conventional value of 1.008). I
> > think that the conventional values are the correct ones to use for
> > these
> > cases.
> > * How should these be updated in future? The weight of Ytterbium
> > will
> > be changed next year, and the weights could be revised every few
> > years.
> I think we should occasionally update the weights. Most of them
> probably will not change.
These kinds of updates should most certainly be done regularly.
Sporadic and unexpected changes in ASE's physical constants will only
cause problems for users. I think updates in the values of physical
constants should be made a regular part of the release cycle, to the
point that even if no values are changed it is still mentioned (e.g.
"In ASE version X.Y.Z, no physical constant values have been
> > * Is NaN still the correct value to use for elements without a
> > statistically defined weight? Since NaN's can propagate silently,
> > you
> > can end up with nonsense results which are hard to track down. None
> > would be more likely to raise an error, or errors could be raised
> > when
> > accessing missing weights, or the mass of an isotope could be added
> > as a
> > place-holder instead.
> NaN is evil :-)
> For elements that does not exist in nature, using the value for the
> most long-lived isotope must be the most sensible, just like most
> periodic tables usually do.
NaN should indeed be avoided, and this sounds like a good suggestion.
Moreover, I would like to suggest that the most common isotopic mass be
made available for *all* elements. In many situations, it does not make
sense to use the isotopically averaged masses for elements. For
example, when calculating vibrational/phonon spectra, the use of
isotopically averaged masses will result in subtly different normal
modes and frequencies than one would find from isotopically pure
masses. While these differences are typically small (order 10
wavenumbers for frequencies), the normal modes and frequencies obtained
using isotopically averaged masses *don't have any physical meaning*,
since they don't represent a real system of atoms.
I think it would make sense if the ASE Vibrations and Phonons modules
were to use the most common isotope mass for all elements by default.
Currently, I have to manually set the mass of all my atoms from a self-
maintained dictionary of most common isotope masses (something like
foo.set_masses([my_masses[atom.symbol] for atom in foo])). I can't
think of a great way to make this the default behavior while still
allowing the user to specify their own isotope masses (and while
retaining isotopically-averaged masses as the default in ASE).
> Best regards
> > Thanks,
> > Tom
> > _______________________________________________
> > ase-users mailing list
> > ase-users at listserv.fysik.dtu.dk
> > https://listserv.fysik.dtu.dk/mailman/listinfo/ase-users
> Jakob Schiøtz, professor, Ph.D.
> Department of Physics
> Technical University of Denmark
> DK-2800 Kongens Lyngby, Denmark
> ase-users mailing list
> ase-users at listserv.fysik.dtu.dk
More information about the ase-users