def _deleteJVMOutputFiles(self): """ Deletes JVM output files. """ try: IO.removeFile(self._globJVMOutPath) IO.removeFile(self._globJVMErrPath) except: Messages.warning(__name__, "Cannot remove JVM output files!", verbose=2)
def getSymmetry(self, clusterO): """ Evaluates the symmetry (point group) of a cluster. """ success = True error = "" symmetry = "" if not self._globJVMOn: success = False error = "JVM is has not been initialized" return success, error, symmetry # Saves a cluster in to an xyz file. cwd = os.getcwd() tempClusterFile = "%s/%s.xyz" % (cwd, Utilities.get_random_name(10)) success, error = IO.writeXYZ(clusterO, tempClusterFile, scfDone=False) if not success: return success, error, symmetry # Runs the symmetrizer to get the point group try: self._globJVMSymm.main(["-v", _verbose, "-t", _tolerance, tempClusterFile]) except: #TODO: catch the Symmetrizer error success = False error = "error while running Symmetrizer" return success, error, symmetry IO.removeFile(tempClusterFile) #TODO: In future this should be done via streams success, error, symmetry = _getSymmetryFromFile(self._globJVMOutPath, self._globJVMErrPath) self._clearJVMOutputFiles() return success, error, symmetry