Hi Alister,
thanks a lot for the reply! What I am aiming to do is) 2) apply the shifts/rotations to copies of the reconstruction in Chimera directly. After your your reply, I tried the following:
import numpy as np
from eulerangles import euler2matrix
from eulerangles import invert_rotation_matrices
#Use euler angles from STAR file as arguments
eulers = np.array([-35.625440, 162.841315, 87.283656])
rotation_matrix = euler2matrix(eulers,
axes='zyz',
intrinsic=True,
right_handed_rotation=True)
inverse_matrix = invert_rotation_matrices(rotation_matrix)
print(inverse_matrix)
If I am not mistaken, the output should contain the rotation matrix that I need to apply to the subtomogram average to match the particle pose (after applying the shifts). To convert this matrix to axis-angle values that are required for the ChimeraX "turn" command, I used this website
https://www.andre-gaschler.com/rotationconverter/, setting the output angle format to Degrees. Finally, I use these values in ChimeraX as the argument for the "turn" command (specifying the model that I turn as the center of rotation). Unfortunately, is is obvious that the transformed map does not fit into the original tomogram density.
Is there something that I am obviously doing wrong? I am relatively confident that I apply the shifts correctly.
I will also try to achieve the same with Dynamo.
Thanks a lot for your help,
Best,
Matthias