def make_quasi_mode_input(self, mode=1, firstter=None, lastter=None): f_inp = path.join(self.inp_folder, 'quasi_mode.inp') crd_inp = path.join(self.heavy_folder, '{0}.nohydrogen.avg.crd'.format(self.type_na)) dcd_inp = path.join(self.mode_traj_folder, 'mode.{0}.dcd'.format(str(mode))) inp = Script(f_inp) inp.write_bomlev() inp.initialize_rtf_prm() inp.write_seq(self.seq1, firstter=firstter, lastter=lastter, segid='strand1') inp.write_seq(self.seq2, firstter=firstter, lastter=lastter, segid='strand2') inp.gen_angle_dihedral() inp.delete_selection() inp.read_crd(crd_inp) inp.read_traj(dcd_inp) inp.calculate_avg() inp.coor_copy() inp.write_quasi(vect=False) inp.quasi_end() inp.close_unit(21) inp.end()
def make_get_eigenvector_input(self, modeid=1, firstter=None, lastter=None): f_inp = path.join(self.inp_folder, 'get_eigenvectors.inp') crd_inp = path.join(self.heavy_folder, '{0}.nohydrogen.avg.crd'.format(self.type_na)) mode_inp = path.join(self.nm_folder, 'quasi.nmvector.crd') inp = Script(f_inp) inp.write_bomlev() inp.initialize_rtf_prm() inp.write_seq(self.seq1, firstter=firstter, lastter=lastter, segid='strand1') inp.write_seq(self.seq2, firstter=firstter, lastter=lastter, segid='strand2') inp.gen_angle_dihedral() inp.delete_selection() inp.read_crd(crd_inp) inp.read_normal_mode(mode_inp) inp.print_eigenvector(modeid) inp.quasi_end() inp.end()
def make_gen_mode_input(self, modeid, phase='3.6', ncyc=10, temp=310, tfre=1, amber=False, supplement1=None, supplement2=None, firstter=None, lastter=None): f_inp = path.join(self.inp_folder, 'gen_mode.inp') crd_inp = path.join(self.heavy_folder, '{0}.nohydrogen.avg.crd'.format(self.type_na)) mode_inp = path.join(self.nm_folder, 'quasi.nmvector.crd') dcd_out = path.join(self.mode_traj_folder, 'mode.{0}.dcd'.format(str(modeid))) inp = Script(f_inp, mode='write', description='generate mode {0}'.format(modeid)) 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(crd_inp) inp.read_normal_mode(mode_inp) inp.write_quasi_mode_dcd(dcd_out, modeid, phase=phase, ncyc=ncyc, temp=temp, tfre=tfre) inp.quasi_end() inp.end()
def make_quasi_input(self, mass_all_same=False, amber=False, supplement1=None, supplement2=None, begin=1, stop=10000, firstter=None, lastter=None): f_inp = path.join(self.inp_folder, 'quasi.inp') crd_inp = path.join(self.heavy_folder, '{0}.nohydrogen.avg.crd'.format(self.type_na)) dcd_inp = path.join(self.heavy_folder, '{0}.nohydrogen.fitavg.dcd'.format(self.type_na)) crd_out = path.join(self.nm_folder, 'quasi.nmvector.crd') 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() if mass_all_same: inp.set_all_mass_same() inp.read_crd(crd_inp) inp.read_traj(dcd_inp) inp.calculate_avg(begin=begin, stop=stop) inp.coor_copy() inp.write_quasi() inp.write_quasi_mode_crd(crd_out) inp.quasi_end() inp.close_unit(21) inp.end()
def make_gen_mode_superimpose_input(self, modeid): f_inp = path.join(self.inp_folder, 'gen_mode.inp') crd_inp = path.join(self.heavy_folder, '{0}.nohydrogen.avg.crd'.format(self.type_na)) mode_inp = path.join(self.nm_folder, 'quasi.nmvector.crd') dcd_out = path.join(self.mode_traj_folder, 'mode.1to{0}.dcd'.format(str(modeid))) inp = Script(f_inp, mode='write', description='generate mode {0}'.format(modeid)) inp.write_bomlev() inp.initialize_rtf_prm() inp.write_seq(self.seq1, segid='strand1') inp.write_seq(self.seq2, segid='strand2') inp.gen_angle_dihedral() inp.delete_selection() inp.read_crd(crd_inp) inp.read_normal_mode(mode_inp) inp.write_quasi_mode_supe_dcd(dcd_out, modeid) inp.quasi_end() inp.end()
def make_proj_md_to_mode_input(self, mode): f_inp = path.join(self.inp_folder, 'proj_md_to_mode.inp') crd_inp = path.join(self.heavy_folder, '{0}.nohydrogen.avg.crd'.format(self.type_na)) mode_inp = path.join(self.nm_folder, 'quasi.nmvector.crd') dcd_inp = path.join(self.diff_folder, 'mode.0.dcd') crd_out = path.join(self.coef_folder, 'proj.md.onto.mode.{0}.crd'.format(str(mode))) inp = Script(f_inp) inp.write_bomlev() inp.initialize_rtf_prm() inp.write_seq(self.seq1, segid='strand1') inp.write_seq(self.seq2, segid='strand2') inp.gen_angle_dihedral() inp.delete_selection() inp.read_crd(crd_inp) # inp.coor_copy() inp.read_traj(dcd_inp) inp.read_normal_mode(mode_inp) inp.write_proj_mode_crd(crd_out, mode) inp.quasi_end() inp.close_unit(21) inp.end()
def make_get_eigenvector_input_v1(self, modeid=1, amber=False, supplement1=None, supplement2=None, firstter=None, lastter=None): f_inp = path.join(self.inp_folder, 'get_eigenvectors.inp') crd_inp = path.join(self.heavy_folder, '{0}.nohydrogen.avg.crd'.format(self.type_na)) mode_inp = path.join(self.nm_folder, 'quasi.nmvector.crd') crd_out = path.join(self.nm_single_folder, 'mode.{0}.crd'.format(modeid)) 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(crd_inp) inp.read_normal_mode(mode_inp) inp.write_quasi_single_mode_crd(modeid, crd_out) inp.quasi_end() inp.end()