rmgpy.statmech.
IdealGasTranslation
(mass=None, quantum=False)¶A statistical mechanical model of translation in an 3-dimensional infinite square well by an ideal gas. The attributes are:
Attribute | Description |
---|---|
mass | The mass of the translating object |
quantum | True to use the quantum mechanical model, False to use the classical model |
Translational energies are much smaller than \(k_\mathrm{B} T\) except for temperatures approaching absolute zero, so a classical treatment of translation is more than adequate.
The translation of an ideal gas – a gas composed of randomly-moving, noninteracting particles of negligible size – in three dimensions can be modeled using the particle-in-a-box model. In this model, a gas particle is confined to a three-dimensional box of size \(L_x L_y L_z = V\) with the following potential:
The time-independent Schrodinger equation for this system (within the box) is given by
where \(M\) is the total mass of the particle. Because the box is finite in all dimensions, the solution of the above is quantized with the following energy levels:
Above we have introduced \(n_x\), \(n_y\), and \(n_z\) as quantum numbers. The quantum mechanical partition function is obtained by summing over the above energy levels:
In almost all cases the temperature of interest is large relative to the energy spacing; in this limit we can obtain a closed-form analytical expression for the translational partition function in the classical limit:
For a constant-pressure problem we can use the ideal gas law to replace \(V\) with \(k_\mathrm{B} T/P\). This gives the partition function a temperature dependence of \(T^{5/2}\).
getDensityOfStates
(self, ndarray Elist, ndarray densStates0=None) → ndarray¶Return the density of states \(\rho(E) \ dE\) at the specified energies Elist in J/mol above the ground state. If an initial density of states densStates0 is given, the rotor density of states will be convoluted into these states.
getEnthalpy
(self, double T) → double¶Return the enthalpy in J/mol for the degree of freedom at the specified temperature T in K.
getEntropy
(self, double T) → double¶Return the entropy in J/mol*K for the degree of freedom at the specified temperature T in K.
getHeatCapacity
(self, double T) → double¶Return the heat capacity in J/mol*K for the degree of freedom at the specified temperature T in K.
getPartitionFunction
(self, double T) → double¶Return the value of the partition function \(Q(T)\) at the specified temperature T in K.
getSumOfStates
(self, ndarray Elist, ndarray sumStates0=None) → ndarray¶Return the sum of states \(N(E)\) at the specified energies Elist in J/mol above the ground state. If an initial sum of states sumStates0 is given, the rotor sum of states will be convoluted into these states.
mass
¶The mass of the translating object.
quantum
¶quantum: ‘bool’