if homol.split()[0] == sid: exclude = homol.split()[1:] break # do it on local directories odir = os.getcwd() ldir = General.createLocalSpace() # copy .match and .seq sub.call(['cp', matchf, seqf, ldir]) os.chdir(ldir) tmphead = args.head if args.rmsd != None: if noHomoNow == 0: tmphead = Analyze.trimByRMSD(matchf, -1, tmphead, 'th1', args.rmsd, sorted = False, h**o = exclude, homo_log = True) noHomoNow = 1 else: tmphead = Analyze.trimByRMSD(matchf, -1, tmphead, 'th1', args.rmsd, sorted = False) if args.smart: if len(segments) == 1: smartcut = mustpress.rmsdEff(segments, 20, 0.9) else: if max(resnums) - min(resnums) < 8: # this is considered close, even there is gap between two segments smartcut = mustpress.rmsdEff(segments, 20, 0.9) - 0.2 # this is about 0.5 else: smartcut = mustpress.rmsdEff(segments, 15, 1.1) # this is about 0.9 if noHomoNow == 0: tmphead = Analyze.trimByRMSD(matchf.replace(args.head, tmphead), 0, tmphead, 'ts', smartcut, h**o = exclude, homo_log = True) noHomoNow = 1 else: