rmgpy.statmech.
Conformer
(E0=None, modes=None, spinMultiplicity=1, opticalIsomers=1, number=None, mass=None, coordinates=None)¶A representation of an individual molecular conformation. The attributes are:
Attribute | Description |
---|---|
E0 | The ground-state energy (including zero-point energy) of the conformer |
modes | A list of the molecular degrees of freedom |
spinMultiplicity | The degeneracy of the electronic ground state |
opticalIsomers | The number of optical isomers |
number | An array of atomic numbers of each atom in the conformer |
mass | An array of masses of each atom in the conformer |
coordinates | An array of 3D coordinates of each atom in the conformer |
Note that the spinMultiplicity reflects the electronic mode of the molecular system.
E0
¶The ground-state energy (including zero-point energy) of the conformer.
coordinates
¶An array of 3D coordinates of each atom in the conformer.
getActiveModes
(self, bool activeJRotor=False, bool activeKRotor=True) → list¶Return a list of the active molecular degrees of freedom of the molecular system.
getCenterOfMass
(self, atoms=None) → ndarray¶Calculate and return the [three-dimensional] position of the center of mass of the conformer in m. If a list atoms of atoms is specified, only those atoms will be used to calculate the center of mass. Otherwise, all atoms will be used.
getDensityOfStates
(self, ndarray Elist) → ndarray¶Return the density of states \(\rho(E) \ dE\) at the specified energies Elist above the ground state.
getEnthalpy
(self, double T) → double¶Return the enthalpy in J/mol for the system at the specified temperature T in K.
getEntropy
(self, double T) → double¶Return the entropy in J/mol*K for the system at the specified temperature T in K.
getFreeEnergy
(self, double T) → double¶Return the Gibbs free energy in J/mol for the system at the specified temperature T in K.
getHeatCapacity
(self, double T) → double¶Return the heat capacity in J/mol*K for the system at the specified temperature T in K.
getInternalReducedMomentOfInertia
(self, pivots, top1, option=3) → double¶Calculate and return the reduced moment of inertia for an internal torsional rotation around the axis defined by the two atoms in pivots. The list top1 contains the atoms that should be considered as part of the rotating top; this list should contain the pivot atom connecting the top to the rest of the molecule. The procedure used is that of Pitzer [1], which is described as \(I^{(2,option)}\) by East and Radom [2]. In this procedure, the molecule is divided into two tops: those at either end of the hindered rotor bond. The moment of inertia of each top is evaluated using an axis determined by option. Finally, the reduced moment of inertia is evaluated from the moment of inertia of each top via the formula (I1*I2)/(I1+I2).
option corresponds to 3 possible ways of calculating the internal reduced moment of inertia as discussed in East and Radom [2]
option = 1 -> moments of inertia of each rotating group calculated about the axis containing the twisting bond option = 2 (unimplemented) -> each moment of inertia of each rotating group is calculated about an axis parallel to the
twisting bond and passing through its center of mass
[1] | Pitzer, K. S. J. Chem. Phys. 14, p. 239-243 (1946). |
[2] | East, A. L. L. and Radom, L. J. Chem. Phys. 106, p. 6655-6674 (1997). |
getMomentOfInertiaTensor
(self) → ndarray¶Calculate and return the moment of inertia tensor for the conformer in kg*m^2. If the coordinates are not at the center of mass, they are temporarily shifted there for the purposes of this calculation.
getNumberDegreesOfFreedom
(self)¶Return the number of degrees of freedom in a species object, which should be 3N, and raises an exception if it is not.
getPartitionFunction
(self, double T) → double¶Return the partition function \(Q(T)\) for the system at the specified temperature T in K.
getPrincipalMomentsOfInertia
(self)¶Calculate and return the principal moments of inertia and corresponding principal axes for the conformer. The moments of inertia are in kg*m^2, while the principal axes have unit length.
getSumOfStates
(self, ndarray Elist) → ndarray¶Return the sum of states \(N(E)\) at the specified energies Elist in kJ/mol above the ground state.
getSymmetricTopRotors
(self)¶Return objects representing the external J-rotor and K-rotor under the symmetric top approximation. For nonlinear molecules, the J-rotor is a 2D rigid rotor with a rotational constant \(B\) determined as the geometric mean of the two most similar rotational constants. The K-rotor is a 1D rigid rotor with a rotational constant \(A-B\) determined by the difference between the remaining molecular rotational constant and the J-rotor rotational constant.
getTotalMass
(self, atoms=None) → double¶Calculate and return the total mass of the atoms in the conformer in kg. If a list atoms of atoms is specified, only those atoms will be used to calculate the center of mass. Otherwise, all atoms will be used.
mass
¶An array of masses of each atom in the conformer.
modes
¶modes: list
number
¶An array of atomic numbers of each atom in the conformer.
opticalIsomers
¶opticalIsomers: ‘int’
spinMultiplicity
¶spinMultiplicity: ‘int’