def dump(path, logfilename=sys.stdout, do_clyde_sort=False): print("outputfiles:", path) if do_clyde_sort: xyzfiles = clyde_sort(get_outputfiles_from_path(path, ext=".xyz")) else: xyzfiles = get_outputfiles_from_path(path, ext=".xyz") with open(logfilename, "w") as fh: fh.write("{}\n".format(path)) for xyzfilename in xyzfiles: coords_CO2 = get_coords_CO2(xyzfilename) d1, d2 = calc_bond_lengths(coords_CO2) theta = calc_theta(coords_CO2) fh.write("{} {} {}\n".format(theta, d1, d2)) return
# 5. n_mm BASEDIR = "/home/eric/Chemistry/calc.sgr/droplets/snapshot_method_dependence_4fs" if args.file_operation == "save": print("Trying to find output files...") outputfiles = dict() for CO2_type in CO2_types: outputfiles[CO2_type] = dict() for method in methods: outputfiles[CO2_type][method] = dict() for basis_set in basis_sets: outputfiles[CO2_type][method][basis_set] = dict() # hacky hack hack for n_qm in (0, ): outputfiles[CO2_type][method][basis_set][n_qm] = get_outputfiles_from_path(os.path.join(BASEDIR, "inputs_freq_{CO2_type}_0qm_{method}_{basis_set}".format(**locals()))) outputfiles[CO2_type][method][basis_set][n_qm] = filter_n_mm_into_dict(outputfiles[CO2_type][method][basis_set][n_qm]) with open('outputfiles.pypickle', 'wb') as picklefile: pickle.dump(outputfiles, picklefile) elif args.file_operation == "read": print("Reading list of output files from: {}".format(os.path.abspath("outputfiles.pypickle"))) with open("outputfiles.pypickle", "rb") as picklefile: outputfiles = pickle.load(picklefile) elif args.file_operation == "none": pass else: raise Exception if args.parse_operation == "save":
# 1. method # 2. basis set # 3. n_qm # 4. n_mm if args.file_operation == "save": print("Trying to find output files...") basedir = "/home/eric/Chemistry/calc.sgr/droplets/snapshot_method_dependence" outputfiles = dict() for method in methods: outputfiles[method] = dict() for basis_set in basis_sets: outputfiles[method][basis_set] = dict() # hacky hack hack for n_qm in (0, ): outputfiles[method][basis_set][n_qm] = get_outputfiles_from_path(os.path.join(basedir, "inputs_freq_0qm_{method}_{basis_set}".format(method=method, basis_set=basis_set))) outputfiles[method][basis_set][n_qm] = filter_n_mm_into_dict(outputfiles[method][basis_set][n_qm]) with open('outputfiles.pypickle', 'wb') as picklefile: pickle.dump(outputfiles, picklefile) elif args.file_operation == "read": print("Reading list of output files from: {}".format(os.path.abspath("outputfiles.pypickle"))) with open("outputfiles.pypickle", "rb") as picklefile: outputfiles = pickle.load(picklefile) elif args.file_operation == "none": pass else: raise Exception if args.parse_operation == "save":
# pairs treated quantum mechanically (as opposed to using point # charges). outputs_freq_0qm = [] outputs_freq_1qm = [] outputs_freq_2qm = [] outputs_freq_3qm = [] outputs_freq_noCT_1qm = [] outputs_freq_noCT_2qm = [] outputs_freq_noCT_3qm = [] outputs_eda_covp_1qm = [] outputs_eda_covp_2qm = [] outputs_eda_covp_3qm = [] if args.file_operation == "save": print("Trying to find output files...") outputfiles = get_outputfiles_from_path(args.dir_to_search) with open(args.logfilename, 'w') as logfile: for outputfilename in outputfiles: logfile.write("{}\n".format(outputfilename)) elif args.file_operation == "read": print("Reading list of output files from: {}".format(os.path.abspath(args.logfilename))) with open(args.logfilename) as logfile: content = logfile.read() outputfiles = content.splitlines() elif args.file_operation == "none": pass else: raise Exception if args.debug: print("len(outputfiles)")
from __future__ import print_function import os import numpy as np import scipy.stats as sps from analysis_utils import filter_outputfiles from analysis_utils import get_CO2_frequencies from analysis_utils import get_outputfiles_from_path if __name__ == "__main__": outputfiles = get_outputfiles_from_path(os.getcwd()) outputfiles_0mm = filter_outputfiles(outputfiles) # B3LYP/6-31G** weights_map = { 1: 0.06060606, 2: 0.24747475, 3: 0.4010101, 4: 0.22626263, 5: 0.06464646, } print('sum of weights: {}'.format(sum(weights_map.values()))) bins_outputfiles = dict() bins_f = dict() bins_i = dict()