Exporting map and particle file to Relion 3.0



Hi all,
I am having some troubles with exporting my map and particle file from Cryosparc after refinement to Relion. Here is what I have been doing:

  1. Downloaded the J###.particles.alignments3D file and convert it to .star format using the command: csparc2star.py P1_J###_particles.cs cryosparc-particles.star

  2. Downloaded the J###.volume.map_half_A and changed the box size to match with the particle size using the command:
    relion_image_handler --i J###.volume.map_half_A.mrc --new_box 288 --o J###new-box288.mrc

  3. Now I am using cryosparc-particles.star and J###new-box288.mrc in Relion to run the refinement using the command:
    which relion_refine_mpi --o Refine3D/job039/run --auto_refine --split_random_halves --i Select/job034/particles.star --ref …/Downloads/job242-unfiltered.mrc --firstiter_cc --ini_high 60 --dont_combine_weights_via_disc --pool 3 --pad 2 --ctf --particle_diameter 208 --flatten_solvent --zero_mask --oversampling 1 --healpix_order 3 --auto_local_healpix_order 3 --offset_range 5 --offset_step 2 --sym C1 --low_resol_join_halves 40 --norm --scale --j 5 --gpu “”

The resulting map that I am getting in Relion is very poor and looks nothing like the map that I am getting from Cryosparc refinement. While cryosparc refines the map to 5.1A resolution and I see a lot of features especially all the helices, the map in Relion is about 17A and has absolutely no features at all.

I am concerned that I am doing something wrong in the process of exporting the files. Any suggestions in this regard would be very helpful please. Thanks.



The particle origins from cryoSPARC are in terms of the refinement box (not the particle box). Relion needs them in terms of the particle box.

You can use the --boxsize argument with csparc2star.py to fix this problem, by giving the refinement box (it will use the pixel size from the particles to make the correction).


Hi Daniel,
Thanks for your reply. I tried using --boxsize with cryosparc2star.py but it returns an error:

usage: csparc2star.py [-h] [–passthrough PASSTHROUGH] [–class CLS]
[–minphic MINPHIC] [–stack-path STACK_PATH]
[–micrograph-path MICROGRAPH_PATH]
[–copy-micrograph-coordinates COPY_MICROGRAPH_COORDINATES]
[–cached] [–transform TRANSFORM] [–loglevel LOGLEVEL]
input output
csparc2star.py: error: unrecognized arguments: --boxsize 250

The command that I gave was:
csparc2star.py j242particles-align3d.cs j242particles-align3d-box250.star --boxsize 250

Do you think there is something wrong with my syntax? Thanks.


P.S. I think you are right about the box size because my particle boxsize is different from the boxsize that I used for refinement in cryosparc.


You just need to update pyem, use the most recent version of the release branch.


Eureka! It works and the map in relion looks much better! Thanks so much!



Hi Dan,

I am trying an identical pipeline as Sadeem for the first time.

From a homogeneous refinement job in cryoSPARC V2.5.0, I used the following:

csparc2star.py cryosparc_P#_JXX_particles.cs cryosparc_aligned.star (no --passthrough was required)

I also downloaded the map (both volume_map_halfA.mrc as well as volume_map.mrc from the same job.

To run 3D refinement in Relion, do I need match the boxsize with particle size?
Given the box size during extraction in local motion correction job was 360. The refinement box size during the prior hetero-refinement was 128 voxels, and the box size in the homogeneous refinement was set to NONE, which I think takes the value of 360.

Also which of the two maps should be used as a reference in Relion refinement?

If adjusting the boxsize in csparc2star.py required, my current pyem module gives the error:
csparc2star.py: error: unrecognized arguments: --boxsize 250

I do have the latest version (0.4).



For global refinement, the angles and shifts will be forgotten. Then, it doesn’t matter how you export.

For local refinement, starting from the angles and shifts in cryoSPARC, you must give the --boxsize argument to csparc2star.py and tell it the size of the box from refinement if that is different from the box of the particles. Then it can automatically account for the difference. If the argument is not present, you do not have the latest version.

You can use any of the maps for the starting reference in Relion, as long as you match the box and pixel size of the particles and give some initial lowpass filter in the Relion GUI.

relion_image_handler is a good way to change the box and pixel size of the references. A low-pass of ~20 - 40 A is good for global refinement, while for local searches the filter should be at least 5 - 10 A lower than the reported resolution.