usage: e2refine_easy.py [options] ======================================================================== This is the primary single particle refinement program in EMAN2.1+. It replaces earlier programs such as e2refine.py and e2refine_evenodd.py. Major features of this program: * While a range of command-line options still exist. You should not normally specify more than a few basic requirements. The rest will be auto-selected for you. * This program will split your data in half and automatically refine the halves independently to produce a gold standard resolution curve for every step in the refinement. * An HTML report file will be generated as this program runs, telling you exactly what it decided to do and why, as well as giving information about runtime, etc while the job is still running. * The gold standard FSC also permits us to automatically filter the structure at each refinement step. The resolution you specify is a target, NOT the filter resolution. * If --inputavg is specified to use a different stack for alignment and averaging, both stacks must have the same box size and sampling * Many of the 'advanced' options are hidden in the e2projectmanager.py GUI, because most users should not need to specify them. To run this program, you would normally specify only the following options: --model=<starting map to seed refinement> --input=<lst file referencing phase-flipped particles in HDF format used for alignment> --inputavg=<optional lst file with particles to be reconstructed, if not specified --input used> OR --startfrom=<path to existing refine_xx directory to continue from> --targetres=<in A> Resolution to target in Angstroms in this refinement run. Do not be overoptimistic ! Generally begin with something conservative like 25, then use --startfrom and reduce to ~12, only after that try for high (3-8 A). Data permitting, of course. Low resolution attempts will run MUCH faster due to more efficient parameters. --speed=<1-7> Default=5. Larger values will run faster but slightly decrease measured resolution. 7 may be useful for initial refinement runs. 5 is good for routine refinement. You may consider 1 when all other possibilities are exhausted and you are ready to push for a final published map. This option modifies several parameters, including the angular step, sep= and even the specific alignment and similarity metric options. The resolution difference between 1 and 7 is generally no more than 10%. --sym=<symmetry> Symmetry to enforce during refinement (Cn, Dn, icos, oct, cub). Default=c1 (no symmetry) --mass=<in kDa> Putative mass of object in kDa, but as desired volume varies with resolution actual number may vary by as much a ~2x from the true value. The goal is to have a good isosurface in the final map with a threshold of 1.0. --parallel=<par spec> While not strictly required, without this option the refinement will run on a single CPU and you will likely wait a very long time. To use more than one core on a single computer, just say thread:N (eg - thread:4). For other options, like MPI, see: http://blake.bcm.edu/emanwiki/EMAN2/Parallel for details. --threads=<ncpu> For some algorithms, processing in parallel over the network (MPI) works poorly. Running on multiple processors on a single machine may still be worthwhile. If you specify this option, in specific cases it will replace your specified --parallel option. Specify the number of cores that can be used on a single machine. Optional: --tophat=<local,global> Some other packages (Relion) apply a tophat filter to the final map which helps exaggerate the apperance of sidechains at near atomic resolution, but can also cause some artifacts. 'local' will produce a similar effect in the final map (but probably should be limited to subnanometer resolution. 'global' uses a local resolution computation to locally filter the map. This can actually lead to better resolution (in the good domains). While new, this may be a good idea to use in pretty much all refinements. To disable tophat, don't specify it, or specify "none". --nogoldfinal Normally used in conjunction with tophat=local. During a refinement, the even/odd maps may diverge slightly if there is any structural variability in the maps. This will disable gold-standard refinement mode in the final iteration to produce a more accurate filter. This may cause the FSC curve to be somewhat exxagerated as well, though. --apix=<A/pix> The value will normally come from the particle data if present (set to -1). You can override if necessary. --sep=<classes/ptcl> each particle will be put into N classes. Improves contrast at cost of rotational blur. --classkeep=<frac> fraction of particles to use in final average. Default 90%. Should be >50% --m3dkeep=<frac> fraction of class-averages to use in 3-D map. Default=auto --classautomask applies an automask when aligning particles for improved alignment --m3dpostprocess <name>:<parm>=<value>:... An arbitrary processor (e2help.py processors -v2) to apply to the 3-D map after each iteration. Default=none --path=<path> Normally the new directory will be named automatically. If you prefer your own convention you can override, but it may cause minor GUI problems if you break the standard naming convention. Since many parameters are now selected automatically, if you are curious exactly what the differences are between any two refinements, on Linux/Mac, you can run, for example, diff refine_01/0_refine_parms.json refine_02/0_refine_parms.json to compare exactly what changed between the two runs. ======================================================================== There are numerous additional options based on the original e2refine.py command. These options are not available from the graphical interface, as it is generally best to let e2refine_easy pick these values for you. Normally you should not need to specify any of the following other than the ones already listed above:
Option | Type | Description |
---|---|---|
--version | None | show program's version number and exit |
--input | str | Image stack containing phase-flipped particles used for alignment |
--inputavg | str | Optional file containing alternate version of the particles to use for reconstruction after alignment |
--model | str | The map to use as a starting point for refinement |
--startfrom | str | Path to an existing refine_xx directory to continue refining from. Alternative to --input and --model. |
--targetres | float | Target resolution in A of this refinement run. Usually works best in at least two steps (low/medium resolution, then final resolution) when starting with a poor starting model. Usually 3-4 iterations is sufficient. |
--speed | int | (1-7) Balances speed vs precision. Larger values sacrifice a bit of potential resolution for significant speed increases. Set to 1 when really pushing resolution. Set to 7 for initial refinements. default=5 |
--sym | None | Specify symmetry - choices are: c<n>, d<n>, tet, oct, icos. |
--breaksym | None | If selected, reconstruction will be asymmetric with sym= specifying a known pseudosymmetry, not an imposed symmetry. |
--focused | None | Highly experimental, and under development! Specify a 3-D mask. Not used for coarse alignment, but only for final 'fine tuning' and symmetrizing. With symmetry also use breaksym. |
--tophat | str | 'local', 'localwiener' or 'global'. Instead of imposing a final overall Wiener filter, use a tophat filter (global similar to Relion). local is a local tophat filter, localwiener is a localized Wiener filter |
--nogoldfinal | None | If selected, the final iteration will turn off gold-standard behavior and both halves will be refined from the same model. Normally used with --tophat=local. |
--treeclassify | None | Classify using a binary tree. |
--norandomphase | None | Suppress independent phase randomization of input map. Only appropriate if input map has been preprocessed in some suitable fashion. |
--m3dold | None | Use the traditional e2make3d program instead of the new e2make3dpar program |
--iter | int | The total number of refinement iterations to perform. Default=auto |
--mass | float | The ~mass of the particle in kilodaltons, used to run normalize.bymass. Due to resolution effects, not always the true mass. |
--invar | None | Will use invariants for orientation determination, set invariant type in project (EXPERIMENTAL). |
--mirror | None | Default for non bispectrum refinement is to handle mirrored projections by permitting flips in 2-D alignment. This will force the normal refinement to make explict mirrored projections |
--apix | float | The angstrom per pixel of the input particles. Normally set to 0, which will read the value from the header of the input file |
--sep | int | The number of classes each particle can contribute towards (normally 1). Increasing will improve SNR, but produce rotational blurring. |
--classkeep | float | The fraction of particles to keep in each class, based on the similarity score. (default=0.9 -> 90%%) |
--classautomask | None | This will apply an automask to the class-average during iterative alignment for better accuracy. The final class averages are unmasked. |
--prethreshold | None | Applies a threshold to the volume just before generating projections. A sort of aggressive solvent flattening for the reference. |
--eulerrefine | None | Refines Euler angles of class-averages before reconstruction |
--m3dkeep | float | The fraction of slices to keep in e2make3d.py. Default=0.8 -> 80%% |
--m3dpostprocess | str | Default=none. An arbitrary post-processor to run after all other automatic processing. Maps are autofiltered, so a low-pass filter should not normally be used here. |
--parallel, -P | str | Run in parallel, specify type:<option>=<value>:<option>=<value>. See http://blake.bcm.edu/emanwiki/EMAN2/Parallel |
--threads | int | Number of threads to run in parallel on a single computer when multi-computer parallelism isn't useful |
--path | str | The name of a directory where results are placed. Default = create new refine_xx |
--compressbits | int | Bits of precision to keep in class-averages and 3-D volumes, 0->losless, default=10 (3 decimal digits of precision) |
--verbose, -v | int | verbose level [0-9], higher number means higher level of verboseness |
--automaskexpand | int | Default=boxsize/20. Specify number of voxels to expand mask before soft edge. Use this if low density peripheral features are cut off by the mask. |
--automask3d | str | Default=auto. Specify as a processor, eg - mask.auto3d:threshold=1.1:radius=30:nshells=5:nshellsgauss=5. |
--automask3d2 | str | Default=none. If specified, this mask will be multiplied by the result of the first mask, eg - using mask.soft to mask out the center of a virus. |
--projector | None | Default=standard. Projector to use with parameters. |
--orientgen | str | Default=auto. Orientation generator for projections, eg - eman:delta=5.0:inc_mirror=0:perturb=1 |
--simalign | str | Default=auto. The name of an 'aligner' to use prior to comparing the images |
--simaligncmp | str | Default=auto. Name of the aligner along with its construction arguments |
--simralign | str | Default=auto. The name and parameters of the second stage aligner which refines the results of the first alignment |
--simraligncmp | str | Default=auto. The name and parameters of the comparitor used by the second stage aligner. |
--simcmp | str | Default=auto. The name of a 'cmp' to be used in comparing the aligned images |
--simmask | str | Default=auto. A file containing a single 0/1 image to apply as a mask before comparison but after alignment |
--shrink | int | Default=auto. Optionally shrink the input particles by an integer amount prior to computing similarity scores. For speed purposes. 0 -> no shrinking |
--shrinks1 | int | The level of shrinking to apply in the first stage of the two-stage classification process. Default=0 (autoselect) |
--prefilt | None | Default=auto. Filter each reference (c) to match the power spectrum of each particle (r) before alignment and comparison. Applies both to classification and class-averaging. |
--prectf | None | Default=auto. Filter each reference (c) to match the power spectrum of each particle (r) before alignment and comparison. Applies both to classification and class-averaging. |
--cmpdiff | None | Used only in binary tree classification. Use a mask that focus on the difference of two children. |
--treeincomplete | int | Used only in binary tree classification. Incompleteness of the tree on each level.Default=0 |
--classkeepsig | None | Change the keep ('--keep') criterion from fraction-based to sigma-based. |
--classiter | int | Default=auto. The number of iterations to perform. |
--classalign | str | Default=auto. If doing more than one iteration, this is the name and parameters of the 'aligner' used to align particles to the previous class average. |
--classaligncmp | str | Default=auto. This is the name and parameters of the comparitor used by the fist stage aligner. |
--classralign | str | Default=auto. The second stage aligner which refines the results of the first alignment in class averaging. |
--classraligncmp | str | Default=auto. The comparitor used by the second stage aligner in class averageing. |
--classaverager | str | Default=auto. The averager used to generate the class averages. Default is auto. |
--classcmp | str | Default=auto. The name and parameters of the comparitor used to generate similarity scores, when class averaging. |
--classnormproc | str | Default=auto. Normalization applied during class averaging |
--classrefsf | None | Use the setsfref option in class averaging. This matches the filtration of the class-averages to the projections for easier comparison. Disabled when ampcorrect=flatten is used. |
--pad | int | Default=auto. To reduce Fourier artifacts, the model is typically padded by ~25 percent - only applies to Fourier reconstruction |
--recon | None | Default=auto. Reconstructor to use see e2help.py reconstructors -v |
--m3dkeepsig | None | Default=auto. The standard deviation alternative to the --m3dkeep argument |
--m3dpreprocess | str | Default=auto. Normalization processor applied before 3D reconstruction |
--ampcorrect | None | Will perform amplitude correction via the specified method. 'flatten' requires a target resolution better than 8 angstroms (experimental). 'none' will disable amplitude correction (experimental). |
--lowmem | None | Default=auto. Make limited use of memory when possible - useful on lower end machines |
--ppid | int | Set the PID of the parent process, used for cross platform PPID |
For more information go to emanwiki/EMAN2/Programs/e2refine_easy.