biotite-dev / biotite

A comprehensive library for computational molecular biology
https://www.biotite-python.org
BSD 3-Clause "New" or "Revised" License
685 stars 102 forks source link

Implement structural superimposition and TM-score #705

Open padix-key opened 5 days ago

padix-key commented 5 days ago

This PR implements the tm_score() function to compute the TM score on two given protein structures (monomeric or multimeric).

In addition superimpose_structural_homology() takes inspiration from TM-align to find corresponding CA atoms (required as input to tm_score()) and to transform the mobile structure minimizing the TM-score.

codspeed-hq[bot] commented 5 days ago

CodSpeed Performance Report

Merging #705 will not alter performance

Comparing padix-key:structural-superimpose (5bf6cd2) with main (77cf0f6)

Summary

✅ 47 untouched benchmarks
🆕 4 new benchmarks

Benchmarks breakdown

Benchmark main padix-key:structural-superimpose Change
🆕 benchmark_superimpose[superimpose] N/A 2.6 ms N/A
🆕 benchmark_superimpose[superimpose_homologs] N/A 23.8 ms N/A
🆕 benchmark_superimpose[superimpose_structural_homologs] N/A 40.8 ms N/A
🆕 benchmark_superimpose[superimpose_without_outliers] N/A 16.9 ms N/A