6
$\begingroup$

In chemistry is very common to use the units grams/mol for the atomic weight, so the mass of one atom (of Tin, for example) is calculated as :

massOfOneAtom = (0.11871 (Kg/mol))/(AvogadroConstant (1/mol))= 1.97123*10^-25 Kg

When I try to do that with Mathematica, the Output is:

ma = ElementData["Tin", "AtomicWeight"]
Na = Quantity["AvogadroConstant"]

massOfOneAtom = ma/Na

118.710u

1 Avogadro constant

118.710 u/Avogadro constant

How can I express this calculation to have a numeric result of the mass of one atom in standard SI units?

$\endgroup$
2
  • 1
    $\begingroup$ Quite ugly: UnitConvert[ElementData["Tin", "AtomicWeight"], "Grams"] UnitConvert[Quantity[1, "AvogadroConstant"]] $\endgroup$ Jun 16, 2016 at 9:13
  • $\begingroup$ Thank you very much. Very useful answer: I just defined the gmol[element_] function as : gmol[element_] := UnitConvert[ElementData[element, "AtomicWeight"], "Grams"]* UnitConvert[Quantity[1, "AvogadroConstant"]] Then I use gmol["Tin"] with this result: 118.710 g/mol $\endgroup$
    – R. Ibañez
    Jun 17, 2016 at 10:21

2 Answers 2

3
$\begingroup$

Since you ask "How can I express this calculation to have a numeric result ..."

myQ = Quantity["AvogadroConstant"] Quantity[1, "Mol"]

6.022141*10^23

myM = QuantityMagnitude[ElementData["Tin", "AtomicWeight"]]

118.710

myM/myQ

1.97123*10^-22

Have a test on Board:

UnitConvert[ElementData["Tin", "AtomicWeight"], "Grams"]

1.97123*10^-22 g

$\endgroup$
1
$\begingroup$

To calculate the mass of one tin atom as the OP suggests, it is probably more convenient to obtain the Molar Mass, and then divide by the Avogadro constant.

ElementData["Tin", "MolarMass"] / Quantity["AvogadroConstant"] // UnitConvert

1.97123 × 10-25 kg

The default output for MolarMass is (conveniently) g.mol-1 (rather than Kg.mol-1)

ElementData["Tin", "MolarMass"]

118.710g/mol

Mathematica (apparently) makes no distinction between AtomicWeight and AtomicMass (IUPAC discussion), (the default output (v11) is unified atomic mass units, u), and the result the OP requires may also be obtained as follows:

ElementData["Tin", #] & /@ {"AtomicWeight",  "AtomicMass"} // UnitConvert

{1.97123 × 10-25 kg, 1.97123 × 10-25 kg}

Although the default output for MolarMass is g.mol-1, Mathematica is clever enough to evaluate the following as true

(ElementData["Tin", "MolarMass"]/Quantity["AvogadroConstant"]) == 
ElementData["Tin", "AtomicWeight"]

True

$\endgroup$
2
  • $\begingroup$ I think we had a discussion on this subject before... :) $\endgroup$ Nov 14, 2017 at 0:58
  • $\begingroup$ @ J.M. True! ... :) $\endgroup$
    – user1066
    Nov 14, 2017 at 21:01

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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