def make_no_h_crd_input(self, amber=False, firstter=None, lastter=None): if self.type_na == 'arna+arna': supplement1 = None supplement2 = None elif self.type_na == 'bdna+bdna': supplement1 = get_patch(self.seq1, 1) supplement2 = get_patch(self.seq2, 2) f_inp = path.join(self.inp_folder, 'write_no_h_crd.inp') crd_inp = path.join(self.mkcrd_folder, '{0}.crd'.format(self.type_na)) crd_out = path.join(self.heavy_folder, '{0}.nohydrogen.crd'.format(self.type_na)) inp = Script(f_inp) inp.write_bomlev() inp.initialize_rtf_prm(amber=amber) inp.write_seq(self.seq1, firstter=firstter, lastter=lastter, segid='strand1') if supplement1 is not None: inp.write_supplement(supplement1) inp.write_seq(self.seq2, firstter=firstter, lastter=lastter, segid='strand2') if supplement2 is not None: inp.write_supplement(supplement2) inp.gen_angle_dihedral() inp.read_crd(crd_inp) inp.delete_selection() inp.write_crd(crd_out) inp.end()
def make_avg_crd_input(self, selection='all', amber=False, firstter=None, lastter=None): if self.type_na == 'arna+arna': supplement1 = None supplement2 = None else: supplement1 = get_patch(self.seq1, 1) supplement2 = get_patch(self.seq2, 2) f_inp = path.join(self.charmminp_folder, 'write_no_h_avg_crd.inp') inp = Script(f_inp) inp.write_bomlev() inp.initialize_rtf_prm(amber=amber) inp.write_seq(self.seq1, firstter=firstter, lastter=lastter, segid='strand1') if supplement1 is not None: inp.write_supplement(supplement1) inp.write_seq(self.seq2, firstter=firstter, lastter=lastter, segid='strand2') if supplement2 is not None: inp.write_supplement(supplement2) inp.gen_angle_dihedral() inp.delete_selection() inp.read_crd(self.crd) inp.read_traj(self.dcd_out) inp.calculate_avg(selection=selection) inp.coor_copy() inp.write_crd(self.avg_crd, comp=True) inp.end()
def write_make_enm_crd_input(self, amber=True, firstter=None, lastter=None): rtfprm_folder = '/Users/alayah361/fluctmatch' inp_file = path.join(self.charmminp_folder, 'make_enm_crd.inp') outcrd = path.join(self.input_folder, 'na_enm.crd') na = 'bdna' supplement1 = get_patch(self.seq1, 1) supplement2 = get_patch(self.seq2, 2) inp = Script(inp_file) inp.write_bomlev() inp.initialize_rtf_prm(rtfprm_folder=rtfprm_folder, amber=amber) inp.write_seq(self.seq1, firstter=firstter, lastter=lastter, segid='strand1') inp.write_supplement(supplement1) inp.write_seq(self.seq2, firstter=firstter, lastter=lastter, segid='strand2') inp.write_supplement(supplement2) inp.gen_angle_dihedral() inp.delete_selection() inp.read_crd(self.crd) inp.proc_enm_topology_from_allatom() inp.write_crd(outcrd) inp.end()
def make_crd_input(self, amber=False, firstter=None, lastter=None): if self.type_na == 'arna+arna': na = 'arna' supplement1 = None supplement2 = None elif self.type_na == 'bdna+bdna': na = 'bdna' supplement1 = get_patch(self.seq1, 1) supplement2 = get_patch(self.seq2, 2) crd1 = path.join(self.mkcrd_folder, '{0}1.crd'.format(na)) inp1 = Script(path.join(self.mkcrd_folder, '{0}1.inp'.format(na))) inp1.write_bomlev() inp1.initialize_rtf_prm(amber=amber) inp1.write_seq(self.seq1, firstter=firstter, lastter=lastter, segid='strand1') if supplement1 is not None: inp1.write_supplement(supplement1) inp1.gen_angle_dihedral() inp1.read_pdb(path.join(self.mkcrd_folder, '{0}1.1.pdb'.format(na))) inp1.write_crd(crd1) inp1.end() crd2 = path.join(self.mkcrd_folder, '{0}2.crd'.format(na)) inp2 = Script(path.join(self.mkcrd_folder, '{0}2.inp'.format(na))) inp2.write_bomlev() inp2.initialize_rtf_prm(amber=amber) inp2.write_seq(self.seq2, firstter=firstter, lastter=lastter, segid='strand2') if supplement2 is not None: inp2.write_supplement(supplement2) inp2.gen_angle_dihedral() inp2.read_pdb(path.join(self.mkcrd_folder, '{0}2.1.pdb'.format(na))) inp2.write_crd(crd2) inp2.end() inp3 = Script(path.join(self.mkcrd_folder, '{0}.inp'.format(self.type_na))) inp3.write_bomlev() inp3.initialize_rtf_prm(amber=amber) inp3.write_seq(self.seq1, firstter=firstter, lastter=lastter, segid='strand1') if supplement1 is not None: inp3.write_supplement(supplement1) inp3.write_seq(self.seq2, firstter=firstter, lastter=lastter, segid='strand2') if supplement2 is not None: inp3.write_supplement(supplement2) inp3.gen_angle_dihedral() inp3.read_crd(crd1, selection='segid strand1', ignore=True) inp3.read_crd(crd2, selection='segid strand2', ignore=True) inp3.write_crd(path.join(self.mkcrd_folder, '{0}.crd'.format(self.type_na))) inp3.end()