Some notes about the Jeans mass scale using astropy's units.
Simple approaches to determining mass scales:
Isothermal equation of state:
Setting \(v_{esc} = c_s\) yields the mass scale:
Using \(\rho = \frac{M}{ 4/3 \pi R^{3} }\),
so
which rearranges to
where \(M\) is now \(M_J\), the Jeans mass. In terms of temperature, this is:
where \(m\) is the particle mass, usually assumed to be 2.8 amu. (actually, 2.8 is for mass per H$_2$ particle, it should really be 2.3 amu)
In[1]:
# astropy imports
import astropy.units as u
import astropy.constants as c
# turn off verbose but unnecessary information
import warnings
warnings.filterwarnings('ignore')
warnings.filterwarnings('ignore', category=u.UnitsWarning, append=True)
WARNING: ConfigurationDefaultMissingWarning: Requested default configuration file /Users/adam/repos/astropy/astropy/astropy.cfg is not a file. Cannot install default profile. If you are importing from source, this is expected. [astropy]
In[7]:
amu = c.m_p
temperature = 10 * u.K
m = (((2 * c.k_B * temperature)**1.5 / ((2.8*c.m_p*c.G)**1.5 * (2.8*1e4*amu / u.cm**3)**(1/2.)))).cgs
In[5]:
m.to(u.solMass)
Out[5]:
<Quantity 1.92902547696 solMass>