Exclude particles for alignment


Currently I'm using Frealign for my proteins. My normal workflow is:
- Refine all the particles
- Classification into 2 conformations/states (C1 and C2)
- Split the stack, to get all the particles from class 1 into 1 new stack (C1 stack)
- Refine the particles belonging to class 1 above
- Further classify class 1 into 3 subclass C1_1, C1_2, C1_3
- Split the C1 stack to get all the particles from class C1_1 into C1_1 stack
- Refine particles belonging to C1_1 class

The results are excellent. The only problem I have is that because my stack is huge (500GB), everytime splitting takes a lot of space and it makes doing classification in trial & error mode quite tedious. Is it possible in Frealign to mark particles to align only from the original stack, instead of make a new stack? Similar to Relion using a new star file with only subset of particles for alignment.


You could try just removing the lines in the parameter file that correspond to the particles that you would like to exclude. If you do not change the first number on each line, this should do what you are describing. However, this is untested and you have to try this out carefully to check that it works.

In reply to by niko

Dear Niko,

It is not working. The error is:

ERROR: number of particles in stack and par file differ.

In reply to by huy

This is a check to help people avoid mistakes. You will have to take it out of the Frealign script. I assume you are running frealign_run_refine or frealign_calc_reconstructions, so find the place were it checks particle numbers in the stack and parameter file and remove or comment it out. Then try again.

In reply to by niko

Ok, I disabled that part in frealign_run_refine. It is running now.

For testing, I used the first 20,000 particles but the script still divided particles equally from the number of particles from the stack 360,000. Not a real problem in practice anyway.

Thanks a lot, Niko.