Run-through example for helical structure using simulated data

This is a demo to show the workflow of helical refinement.


Notes to help get started

If you have trouble getting MPI running on your machine, edit so that

returns 'False' no matter what, and then type the command

This will create a version of mpi in your own area, that has everything needed.

Micrographs should be in a subdirectory called 'mic' with filenames like micxxx.hdf (where xxx is a number)
After running , the 'mic' directory will have files called 'micxxx_boxes.txt'

Before creating boxed images (segments) from these filaments

When windowing segments using ,

Segments (boxed filaments) will be stored in the directory mic/outdir (which will be created)

Along the way, new directories will be created, result_a and result_b; if you try to re-run some programs they will fail because these directories exist, so re-name or delete the directory to start over.

Example commands:

# To window selected helices (long-boxes) do the following: testmic/mic0.hdf --db-set-hcoords=testmic/mic0_boxes.txt --helix-width=300 testmic/mic0.hdf --helix-images=heli0.hdf

# Make a 2D mask to use (filename mask2d.hdf):

# To generate power spectrum window segments using ptcl-dst equal to half the window size used. To obtain better Layer Line pattern one may want to experiment with different box size and rmax value:

# shift alignment of windowed segments

When done,

# Output: A noisy cylinder written to the output file name (inivol.hdf).

# Ab initio determination of the structure. Note parameters are mainly in Angstroms. Use help ( -h) for details
# Notice that wobble is constrained to be zero, since it likely does not need to vary

# Helicise volumes


IHRSR - Old Approach, no longer supported 8/06/2013

Download file helical_mpi.tar and unpack it using the following command:

tar -xvf helical_mpi.tar

You need to copy the commands from run_through_example and paste them on your terminal to run them. For helical refinement, we only provide an MPI version. Depending on your computational environment, you need to change the mpirun command.

To generate the script for 3D structure determination of helical filaments with helical symmetry based constraints (sxhelicon), use the following command:

This will generate a script called runhelicon containing the commands for windowing a stack of 200 by 200 segments with a distance of 15 pixels between adjacent segments windowed from the same 2D projection of a helical filament, and where the y-dimension of the segment size used in refinement is 180 pixels, with 0.35 of the volume used for applying helical symmetry during the refinement process. For additional details see sxhelicon

In addition to documentation on sxhelicon , parameters are documented for programs used in the example, including (alphabetically) sxcter , sxheader , sxhelical_demo , sxhelixboxer , sxihrsr , sxpdb2em , sxprocess , sxshiftali

There are six files in this directory. The function of some of the files are explained below:

To learn how to interactively mark filaments in micrographs and store the coordinates using, please watch the movie

The preprocessing steps can be completed within ten minutes on a Mac workstation. The first run of helical refinement without out-of-plane angle may take half an hour on 3 or 4 CPUs. The second run that includes the out-of-plane tilt angle will take much longer time on 3 or 4 CPUs. tmp.hdf is the ideal volume generated from pdb file, but is much longer than the volume produced by our program. For comparison, you will need window and pad tmp.hdf to the same size with the volume generated by our program.

Author / Maintainer

Pawel Penczek, email:

Runthrough_helical_example (last edited 2017-05-07 11:53:32 by penczek)