I have two problems with this. First of all mol is not a number as
dozen. It's a measure of quantity of matter. The idea was created
before the atomistic theory of matter and the only important property
is additivity. You use the Avogadro's constant (again not a pure
number) to connect the two. So to use mols you don't need to know that
matter is made of discreet particles.

Following the definitions of mol and Avogadro's constant and atomic
mass unit according to SI we must have the following identities:

g/amu = avogadro_constant*mol = avogadro_number

At the moment the thing called avogadro in physics.units is the
avogadro's constant. I suggest that we also add avogadros_constant =
avogadro and avogadro_number = avogadro*mol. But IMO it's important to
keep avogadro as it is because it's the standard defined in SI.

Avogadro's constant is the number of atoms per mol. It's "number per
mol" so it should be with the dimensions of mol**-1.

One mol is the quantity of matter in 12 grams of C12. [1] It does not
need atomistic theory to be defined. Just additivity of the quantity
of matter.

atomic mass unit is 1/12 of the mass of one atom of C12 [2]. It's a
mass so it must be in kg.

The fact that the [mass of an atom measured in atomic mass units] is
the same _number_ as the [molar mass of the element measured in
grams/mol] is a nice consequence of those definitions not an intrinsic
property. It would be nice to have a shorthand for that property but
correctness of the basic constructs is more important.

Also wolframalpha agrees with what is currently in the pull request:
http://www.wolframalpha.com/input/?i=atomic+mass+unit
http://www.wolframalpha.com/input/?i=avogardo%27s+constant
[1] http://en.wikipedia.org/wiki/Mole_%28unit%29
[2] http://en.wikipedia.org/wiki/Atomic_mass_unit

On 15 January 2012 21:13, Chris Smith <[email protected]> wrote:
> cross posting again:
>
> OK, then what we should have is amu = amus = g/mol so when you divide
> mass by amu you get mols. If you want the number you multiply by
> avogadro('s constant) to get 6e23 (for 1 mol):
>
>>>> from sympy.physics import units as u
>>>> amu=u.g/u.mol
>>>> u.g/amu
> mol
>>>> _*u.avogadro
> 602214179000000000000000
>
> I think this is all consistent: a mol (like dozen) is a number;
> mass/mass gives a number; when you use SI mass and amu you will get
> the number in terms of mol; if you want to see the actual number (like
> converting dozen to 12) you multiply by avogadro('s constant).
>
> --
> You received this message because you are subscribed to the Google Groups 
> "sympy" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to 
> [email protected].
> For more options, visit this group at 
> http://groups.google.com/group/sympy?hl=en.
>

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sympy?hl=en.

Reply via email to