Calculation in Theseus is done correctly.
But the transformation afterwards is not done correctly.
Maybe the transformation matrix is not right.
Test with 6HG4 and 6HG9 on current master branch:
Command: superposer 6hg4 6hg9 --method theseus
Results:
results for alignment #1 between `6hg4`and `6hg9`:
RMSD: 1.540 Å
coverage: 527
lenght of structures: 6hg4 has 531 residues; 6hg9 has 532 residues
Reading in the structures in ChimeraX V 1.2.5 shows, that they are shifted a little bit.
It is easy to see, that the RMSD of the superposed structures cannot be 1.5 Angström.
Aligning them with ChimeraX again results also in an RMSD of 1.5 Angström.
Command used in ChimeraX: mmaker #1 to #2 cut None showAlignment true
Similar behavior for other structures.
|
# 4th reapply transformation to the mobile model |
|
mobile = structures[1] |
|
transformation = results["metadata"]["transformation"] |
|
rotation = transformation[:, :3] |
|
translation = transformation[:, 3:].reshape((3,)) |
|
mobile.atoms.translate(translation) |
|
mobile.atoms.rotate(rotation) |
|
results["superposed"] = structures |
Calculation in Theseus is done correctly.
But the transformation afterwards is not done correctly.
Maybe the transformation matrix is not right.
Test with 6HG4 and 6HG9 on current master branch:
Command:
superposer 6hg4 6hg9 --method theseusResults:
Reading in the structures in ChimeraX V 1.2.5 shows, that they are shifted a little bit.
It is easy to see, that the RMSD of the superposed structures cannot be 1.5 Angström.
Aligning them with ChimeraX again results also in an RMSD of 1.5 Angström.
Command used in ChimeraX:
mmaker #1 to #2 cut None showAlignment trueSimilar behavior for other structures.
opencadd/opencadd/structure/superposition/engines/theseus.py
Lines 160 to 167 in ce20b50