I'm trying to find the nuclear mass of $^{238}\text{U}$. To do this, I subtract the electron mass from the atomic mass. I'd like to find the final answer in kilograms. I'd also like to use Mathematica's fancy built-in functions to do so.

The problem is that, when I do so, the units don't match.

U238Mass = Convert[IsotopeData["Uranium238", "AtomicMass"] AMU, Kilogram]
electronMass = UnitConvert[Quantity["ElectronMass"]]

(* Out: 
3.95293*10^-25 Kilogram
Quantity[9.109383*10^-31, "Kilograms"]

U238Mass - electronMass

(* Out: 3.95293*10^-25 Kilogram + Quantity[-9.109383*10^-31, "Kilograms"] *)

The atomic mass is in Kilograms, but the electron mass is in kg (for some reason it shows up in the copy-paste as "Kilograms".

Any ideas on how to get both of these matching up?

  • $\begingroup$ Are you using some extra package? Convert is not currently a built-in function in Mathematica (v10.3). Perhaps you meant: UnitConvert[IsotopeData["Uranium238", "AtomicMass"], "Kilograms"]. From the physical standpoint, why would subtracting the mass of one electron give you the mass of the nucleus? A neutral uranium atom contains 92 electrons. Also, the mass of an electron is so small when compared to that of a baryon that even 92 of them only account for a fraction of a percentage of the mass of an U nucleus. $\endgroup$
    – MarcoB
    Jan 29 '16 at 21:26
  • $\begingroup$ Sorry, I forgot to mention. My top line is: << Units` And yes, it should be 92 e- $\endgroup$ Jan 29 '16 at 21:28
  • $\begingroup$ What version of Mathematica are you running? Newer versions have the Units functionality built-in. $\endgroup$
    – MarcoB
    Jan 29 '16 at 21:30
  • $\begingroup$ Version 9.0.1 I haven't been a mathematica user for long - can you comment on the distinction? There appears to have been some sort of revamp of the units system or something like this? $\endgroup$ Jan 29 '16 at 21:38
  • 1
    $\begingroup$ Functionality from the Units package has been built-in to the main system since v.9 actually (see the documentation for Units), so you should be able to use the built-ins. See my answer below as well. $\endgroup$
    – MarcoB
    Jan 29 '16 at 22:36

You should try the following after restarting Mathematica to make sure that you don't run into conflicts with the Units package you had loaded.

U238Mass = UnitConvert[IsotopeData["Uranium238", "AtomicMass"], "Kilograms"]
electronMass = UnitConvert[Quantity["ElectronMass"], "Kilograms"]

U238Mass - 92 electronMass

(* Out:
Quantity[3.952926*10^-25, "Kilograms"]
Quantity[9.109383*10^-31, "Kilograms"]
Quantity[3.952088*10^-25, "Kilograms"]

Alternatively, you can let the system deal with some conversions, and only convert at the end to the unit you desire for your answer:

 IsotopeData["Uranium238", "AtomicMass"] - 92 Quantity["ElectronMass"], 
(* Out: Quantity[3.95209*10^-25, "Kilograms"] *)

You will notice that the contributions of the electrons to the mass of the atom is very very small.

  • $\begingroup$ I did this, but it didn't like the input. I copied and pasted the line. imgur.com/mp7IaVu What's the difference between having the units in quotes and not in quotes? $\endgroup$ Feb 1 '16 at 21:08
  • $\begingroup$ Okay, I get it, the arguement should have been UnitConvert[Quanity[IsotopeData[.... Not ust UnitCovert[Isotopdat[.... $\endgroup$ Feb 1 '16 at 21:17
  • $\begingroup$ @TerryPrice Perhaps this may be a limitation of your current version. Here is what I get when I run the code I posted:results. Have you tried to restart the kernel, if you haven't already? $\endgroup$
    – MarcoB
    Feb 1 '16 at 21:18
  • $\begingroup$ @TerryPrice - you are right, in version 9 IsotopeData does not return quantities. $\endgroup$
    – Jason B.
    Oct 16 '18 at 13:55

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.