ReliaSolve / cctbx_project

Computational Crystallography Toolbox
https://cctbx.github.io
Other
0 stars 0 forks source link

Behavior of ACT #257

Closed russell-taylor closed 1 year ago

russell-taylor commented 1 year ago

When we extract a single ACT from 1zz0, with or without its hydrogens, and run reduce2 on it we get a broken molecule with its atoms moved around.

CRYST1   93.586  127.886  251.681  90.00  90.00  90.00 I 2 2 2      32
ORIGX1      1.000000  0.000000  0.000000        0.00000
ORIGX2      0.000000  1.000000  0.000000        0.00000
ORIGX3      0.000000  0.000000  1.000000        0.00000
SCALE1      0.010685  0.000000  0.000000        0.00000
SCALE2      0.000000  0.007819  0.000000        0.00000
SCALE3      0.000000  0.000000  0.003973        0.00000
HETATM11061  C   ACT A1452       6.494 -47.273 -37.006  1.00 16.65           C
HETATM11062  O   ACT A1452       5.654 -47.981 -37.645  1.00 15.33           O
HETATM11063  OXT ACT A1452       7.110 -46.425 -37.699  1.00 17.05           O
HETATM11064  CH3 ACT A1452       6.790 -47.410 -35.548  1.00 17.13           C
END

The molecules also get broken in 2xud when run without flips. Also, the resulting hydrogen placement is not perpendicular to the ring.

russell-taylor commented 1 year ago

If we skip optimization and only add hydrogens, the single ACT does not get broken.

russell-taylor commented 1 year ago

If comment out the optimization portions, the molecule is still broken. The same is true if we comment out everything after placing the Movers.

If we comment out placing the Movers, it is not broken.

@todo: Why is placing the Mover breaking the molecule? This is a MoverAromaticMethylRotator placed on the CH3.

russell-taylor commented 1 year ago

The initial _rotateAroundAxis() in the _Mover base class must be using an incorrect axis.

russell-taylor commented 1 year ago

It is not broken when we revert to before the switch to using native-code rotation function.

russell-taylor commented 1 year ago

Repaired the rotation code, which fixed this.