| import subprocess |
| import re |
| from tqdm import tqdm |
| import os |
|
|
|
|
| RUNNER = '/datapool/data2/home/jiahan/Tool/TMalign-20180426/MMalign' |
|
|
| def align_pdb(pdb1,pdb2,pdb1_out): |
| subprocess.run([RUNNER,pdb1,pdb2,'-o',pdb1_out],stdout=subprocess.PIPE) |
|
|
| def get_tm_score(pdb1,pdb2): |
| cmd = subprocess.run(['TMscore',pdb1,pdb2],stdout=subprocess.PIPE) |
| out = cmd.stdout.decode() |
| tm_score = re.search(r"TM-score\s+=\s+(\d+\.\d+)", out) |
| rmsd = re.search(r"RMSD of the common residues=\s+(\d+\.\d+)", out) |
| return float(rmsd.group(1)),float(tm_score.group(1)) |