def _run_c_thermal_properties(self): import phonopy._phonopy as phonoc props = np.zeros((len(self._temperatures), 3), dtype='double', order='C') phonoc.thermal_properties(props, self._temperatures, self._frequencies, self._weights) fe = props[:, 0] * EvTokJmol + self._zero_point_energy entropy = props[:, 1] * EvTokJmol * 1000 cv = props[:, 2] * EvTokJmol * 1000 self._thermal_properties = [self._temperatures, fe, entropy, cv]
def _get_c_thermal_properties(self, t): import phonopy._phonopy as phonoc if t > 0: return phonoc.thermal_properties(t, self._frequencies, self._weights) else: return (0.0, 0.0, 0.0)
def get_c_thermal_properties(self): import phonopy._phonopy as phonoc if self.temperature > 0: return phonoc.thermal_properties(self.temperature, self.eigenvalues, self.weights, self.factor * Constants.THzToEv, self.cutoff_eigenvalue) else: return (0.0, 0.0, 0.0)
def get_c_thermal_properties(self): import phonopy._phonopy as phonoc if self.temperature > 0: return phonoc.thermal_properties( self.temperature, self.eigenvalues, self.weights, self.factor * Constants.THzToEv, self.cutoff_eigenvalue ) else: return (0.0, 0.0, 0.0)
def _run_c_thermal_properties(self): import phonopy._phonopy as phonoc props = np.zeros((len(self._temperatures), 3), dtype='double', order='C') phonoc.thermal_properties(props, self._temperatures, self._frequencies, self._weights, self._cutoff_frequency) # for f, w in zip(self._frequencies, self._weights): # phonoc.thermal_properties( # props, # self._temperatures, # np.array(f, dtype='double', order='C')[None, :], # np.array([w], dtype='intc'), # cutoff_frequency) props /= np.sum(self._weights) fe = props[:, 0] * EvTokJmol + self._zero_point_energy entropy = props[:, 1] * EvTokJmol * 1000 cv = props[:, 2] * EvTokJmol * 1000 self._thermal_properties = [self._temperatures, fe, entropy, cv]