Auxiliary Programs

In addition to the main program auto3dem, the package provides additional programs to perform additional processing or analysis.

a3dm tools

These are programs all starting with the prefix a3dm_, which mostly support the user during the analysis of the results from running auto3dem. They are all written in python language, and some of them require modules (e.g. numpy, matplotlib, tkinter) that are available on most Linux OS distributions, even if some times they are not installed by default.

For all of them it is possible to get information on how to use them by simply typing the name of the program, without arguments or with –help.


Plot FSC curves for reconstructions obtained from auto3dem at the given iteration numbers. Multiple iterations, separated by commas, and/or ranges (separated by dash) can be specified (examples: 1,4,5 or 1,4-10,5 or 1-11). Alternatively a list of .agr files can specified with the option -f, giving complete paths separated by commas but all within apices and using wild cards (example: 'dat2/test_3.agr,dat/*_2?.agr')


Plot the score assigned to each particle. Input can be either a configuration (master/continue) file or a list of orientation parameter (dat) files.


Convert FSC curves to EMDB-compatible XML format.


Calculate and display statistics from orientation parameter (.dat) files.


Select only stable particles, i.e. with unchanged orientation with respect to a previous iteration, and generate a new set of orientation parameter (.dat) files. The inverse selection (i.e. unstable particles) can be done with the flag –inverse.


Rotate an icosahedral map from standard orientation to one with a pair of vertices positioned along the z axis. The opposite rotation can be applied using the option –inverse. The program can be used on a map, a single .dat file or on a master/continue file. In the last case it reads the configuration and applies the rotation to the particles parameters of all the .dat files listed and to the reference map(s). The program automatically identifies which input type is given. Currently, the main limitation is that it is not possible to specify which vertex to place along the z-axis. Here is provided a virus map with a connector in the assumed vertex, that can be used to familiarize with the convention used by the program.


Generate auxiliary info and images for screening micrographs using a3dm_mg_inspect. It requires bsoft installed.


Quickly inspect and screen micrographs by means of a graphical interface.

How to use a3dm_mg_inspect_prepare and a3dm_mg_inspect
  1. place all the micrographs, either .mrc or .pif format, in a separate directory.
  2. estimate the defocus using CTFFIND. If you use autopp option 3, which is recommended, you should give 1 (which means yes) to the last question about keeping the pow files. The results should be generated in a separate directory e.g. ctf/). If you already estimated the CTF and you don't have these .pow files (and you don't want to run it again), you can still use the programs, but you will be slightly limited in the visual tools available to evaluate the micrographs. By using CTFFIND4 (option 3X), the program will also gather information about the information limit of each micrograph.
  3. run the program a3dm_mg_inspect_prepare, pointing to the two directories containing the micrographs and the ctf estimates, and giving an output directory (launch the program without arguments to know how to specify the directories). This can take a while, depending on the size of the dataset, and will generate a set of 'thumbnails' in the output directory specified. If you have new micrographs/ctf estimates, you can run again the program, and it will only process the new images.
  4. run the program a3dm_mg_inspect, giving as only input argument the directory generated at the previous step. It will open a graphical interface that allows to go through the micrographs and to inspect their spectrum. The interface is quite intuitive, and there are few shortcuts with the keyboard:
    • arrow right ↔ Next
    • arrow left ↔ Prev
    • delete ↔ Ignore
  5. decide which images to keep, and which to ignore, and eventually press the button Screen: it will move the micrographs and the ctf estimates to ignore in a separate directory (parallel to the original one, ending with _ignore). In this way, when you have to generate the .dat files and to pick particles, in the original directories there will be only the data related to the micrographs you want to use. You can do the screening in several instances, since the program will remember your decisions when you reopen it, and every time you press the 'Screen' button it will move the data accordingly to your last decisions.