def create_new_TS_input(mol, args, name):
    """Returns new input file with right kwards."""
    TS_inp = gaussian.TS_input()
    with open(mol, 'rb') as f:
        TS_inp.provide_existing_input_file(f.read())
    TS_inp.kwards = replace(args, TS_inp.kwards)
    TS_inp.set_chk(fileutil.get_filename(name))
    print TS_inp.kwards
    return TS_inp.write()
예제 #2
0
def handle_TS(mol_lst, args):
    """ Writes replaced TS input files"""
    inp = gaussian.TS_input()
    for mol in mol_lst:
        with open(mol, 'rb') as f:
            old_input = f.read()
        new_mol_name = atom_replace(mol, args)
        inp.provide_existing_input_file(old_input)
        inp.set_chk(fileutil.get_filename(new_mol_name))
        inp.descript[0] = atom_replace(inp.descript[0], args)
        inp.descript[1] = atom_replace(inp.descript[1], args)
        inp.geom[0] = atom_replace(inp.geom[0], args)
        inp.geom[1] = atom_replace(inp.geom[1], args)
        inp.add_custom_basis_from_dic(CUSTOM_BASIS_LOCATION)
        with open(new_mol_name, 'wb') as f:
            inp.write(f)
def handle_TS(args, mol, name, output_dir):
    input_ = gaussian.TS_input()
    with open(mol, 'rb') as f:
        input_txt = f.read()
    input_.provide_existing_input_file(input_txt)
    if args.kwards:
        kwards = args.kwards
    else:
        kwards = TS_KWRDS.format(args.solvent)
    if args.ECP:
        kwards += ' pseudo=read'
    input_.set_kwards(kwards)
    descrip = input_.descript[0] + ' ' + args.descrip.format(args.solvent)
    input_.set_description(descrip, 1)
    input_.set_chk(name)
    with open(output_dir + '/' + name + '.com', 'wb') as f:
        input_.write(f)
def write_gau_TS_file(folder_name, pypair, name, ts_kwards, args):
    """Writes gaussian input TS file"""
    inp = gaussian.TS_input()
    inp.provide_pymol(pypair[0], 1)
    inp.provide_pymol(pypair[1], 2)
    inp.set_proc(args.proc)
    inp.set_memory(args.memory)   
    inp.set_chk(name)
    inp.set_kwards(ts_kwards)
    inp.set_description(name, 1)    
    inp.set_description(name, 2)    
    inp.set_charge(args.charge, 1)
    inp.set_charge(args.charge, 2)
    inp.set_mult(args.mult, 1)
    inp.set_mult(args.mult, 2)
    inp.add_custom_basis_from_dic(BASIS[args.basis])
    with open(folder_name + '/' + name + '.com', 'wb') as f:
        inp.write(f)
def write_TS_mol(pymol1, pymol2, args, name):
    inp = gaussian.TS_input()
    inp.provide_pymol(pymol1, 1)
    inp.provide_pymol(pymol2, 2)
    inp.set_proc(8)
    inp.set_memory(4000)
    inp.set_chk(name)
    kwards = TS_KWRDS.format(args.solvent)
    if args.ECP:
        kwards += ' pseudo=read'
    inp.set_kwards(kwards)
    inp.set_description(name, 1)
    inp.set_description(name, 2)
    inp.set_charge('0', 1)
    inp.set_charge('0', 2)
    inp.set_mult(args.mult, 1)
    inp.set_mult(args.mult, 2)
    inp.add_custom_basis_from_dic(args.basis)
    with open(name + '.com', 'wb') as f:
        inp.write(f)
예제 #6
0
def write_gau_file(pypair, name, args):
    """Writes gaussian input TS file"""
    inp = gaussian.TS_input()
    inp.provide_pymol(pypair[0], 1)
    inp.provide_pymol(pypair[1], 2)
    inp.set_proc(args.proc)
    inp.set_memory(4000)
    inp.set_chk(name)
    kwards = TS_KWRDS.format(args.solvent)
    if gaussian.is_ECP(args.catalyst[:-1]):
        kwards += ' pseudo=read'
    inp.set_kwards(kwards)
    inp.set_description(name, 1)
    inp.set_description(name, 2)
    inp.set_charge(args.charge, 1)
    inp.set_charge(args.charge, 2)
    inp.set_mult(args.mult, 1)
    inp.set_mult(args.mult, 2)
    inp.add_custom_basis_from_dic(DEFAULT_BASIS)
    with open(name + '.com', 'wb') as f:
        inp.write(f)