8
$\begingroup$

The following code throws an error:

UnitConvert[Quantity["Daltons"], "Grams"/"Moles"]

Why?

$\endgroup$
2
  • 2
    $\begingroup$ This answer to an older question by the OP has an apropos discussion. $\endgroup$ Sep 1, 2017 at 2:52
  • $\begingroup$ @J.M. I had forgotten that :) Thanks. $\endgroup$
    – becko
    Sep 1, 2017 at 7:13

3 Answers 3

5
$\begingroup$

As nikie has pointed out, Mathematica considers the Dalton to be a unit of mass. It is also synonymous with the unified atomic mass unit (u).

UnitConvert[Quantity["Daltons"], "u"]

1.0000000u

Mathematica also distinguishes between Molecular Mass and Molar Mass and the default unit for MolecularMass appears to be unified atomic mass unit (u) rather than the Dalton

{#, UnitConvert[#, "Daltons"]}& @ ChemicalData["Water", "MolecularMass"] 

{18.0153u,18.0153daltons}

Compare with:

{#, UnitConvert[#, "Daltons"], UnitConvert[#, "u"]}& ChemicalData["Water", "MolarMass"]

{18.0153g/mol,1.08491*10^25daltons/mol,1.08491*10^25u/mol}

In addition:

{#, UnitConvert[#, "Daltons"]} &@ ChemicalData["Water", "MolecularMass"]    // QuantityUnit

$\{\text{AtomicMassUnit},\text{Daltons}\}$

and

{#, UnitConvert[#, "Daltons"], UnitConvert[#, "u"]} & @
ChemicalData["Water", "MolarMass"] // QuantityUnit

$\left\{\frac{\text{Grams}}{\text{Moles}},\frac{\text{Daltons}}{\text{Moles}},\frac{\text{AtomicMassUnit}}{\text{Moles}}\right\}$

There is also Kilodaltons, of course:

ProteinData[6400, "MolecularWeight"] // UnitConvert[#, "Kilodaltons"] &

33.02400kDa

Despite the wikipedia quote, I don't think biochemists use the definition 1 Da = 1 g/mol. For a good discussion of the Dalton and the confusion it can cause, see To land on a dalton by Susan Dewhurst, available here

$\endgroup$
1
6
$\begingroup$

I never heard the unit "dalton" before, but according to Wikipedia, 1 dalton equals $1.66053904\times 10^{−27}\, \mathrm{kg}$. That's what Mathematica says, too:

UnitConvert[Quantity["Daltons"], "Kilograms"]

1.6605390*10^-27 kg

But it's weird that neither UnitConvert nor UnitSimplify seem to know that mol is a dimensionless unit, so it could be replaced with a dimensionless constant.

If I explicitly ask for a unitless value using UnitSimplify with the option UnityDimensions, I get 1 as a result, which seems strange to me:

UnitSimplify[Quantity[1, "Moles"], UnityDimensions -> {"AmountUnit"}]

1

$\endgroup$
6
  • 2
    $\begingroup$ See also this, under Molar Mass: "The dalton, symbol Da, is also sometimes used as a unit of molar mass, especially in biochemistry, with the definition 1 Da = 1 g/mol, despite the fact that it is strictly a unit of mass" $\endgroup$
    – b3m2a1
    Aug 31, 2017 at 18:40
  • $\begingroup$ @b3m2a1 Ah, that's the answer then. Mathematica is using the definition of Dalton as a mass unit. $\endgroup$
    – becko
    Aug 31, 2017 at 18:46
  • 1
    $\begingroup$ I wouldn't like my moles to be simplified away as dimensionless constants (even if they are). I prefer Mathematica to carry them around. $\endgroup$
    – becko
    Aug 31, 2017 at 18:47
  • 1
    $\begingroup$ Da is commonly used in the (biological) mass spectrometry world (that I was in for about 19 years), $\endgroup$ Sep 1, 2017 at 1:59
  • 1
    $\begingroup$ As @Peter says, it's a common unit in biochemistry; one would often see entries in the PDB giving the molecular mass in kilodaltons. $\endgroup$ Sep 1, 2017 at 2:50
3
$\begingroup$

Yes, they are:

   << Units`
    Convert[1 Dalton, Gram/Mole]
$\endgroup$
1
  • 1
    $\begingroup$ It should be noted that the above uses the old Units package, which is obsolete. $\endgroup$
    – theorist
    Jan 10, 2020 at 2:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.