Sure, I’ll give that a go.
In the mean time, I’ve tried to dig a bit into the discrepancy. I took the pre-shiny
particle images from S3b, flipped them in Y (relion_image_handler --flipY
), replaced the original stacks and refined against the original reference, in order to simulate the necessary shifts/transformations required if particles were sourced from Y-flipped mics.
Averaged across a few thousand particle images, the differences in rlnAngleRot
, rlnAngleTilt
, rlnAnglePsi
, rlnOriginXAngst
and rlnOriginYAngst
, compared to right-side up particle images seemed best described by…
- phi+180, 180-theta, -psi, XAngst (as is), -YAngst
Note, it’s similar to the transformation suggested by @sunch here, sans Y-shift inversion. That additional element is incorporated in --flipy
. That one difference is perhaps why @olibclarke didn’t quite have success with just the Euler angle modifications at the time.
Scenario 3: CS to RELION
- c)
tif
movies Patch Motion-corrected in CS.
→ pre-shiny
particle coordinates from S1 Y-inverted and used to extract from csMicrographs (Recenter using aligned shifts
disabled).
→ Particles refined against original reference (3.1-3.2Å).
→csparc2star.py --movie
to generate csMicrograph and motion star files.
→csparc2star.py
particle conversion for polishing.
→ application of the above.star
file modifications usingawk
.
→half_maps
andmask_fsc_auto
used as is for postprocessing.
→shiny
particles now yield comparable, if not identical results to S3a.
I’ve also been wondering about the slight difference in polishing outcomes when sourcing from RC/MC2 vs PM in CS.
The FSC is improved vs un-polished particles in both cases, but RC/MC2 has been giving slightly better FSCs. I wondered earlier if it was stochastic, but I’m beginning to think that it’s due to the fact that RC/MC2 and PM do not share the same reference frame–PM has no reference frame. Meaning if particles are extracted from csMicrographs, the particles won’t be exactly where they should be when Relion goes back to the movies. That is, unless csparc2star.py
corrects for that?
Perhaps another reason to stick to RC/MC2, for consistency.
Cheers,
Yang