= ChangeLog = '''''We suggest subscribing to or searching the [[https://groups.google.com/forum/?hl=en#!forum/eman2|Google Group]] when you have questions. We have resumed updating the ChangeLog here as well as of version 2.91''''' Note the new version numbering scheme. Every time someone triggers a new binary snapshot to be built (also available via conda install), the version number is now automatically incremented. This includes only significant changes. See Github for the complete set of changes/patches. ||Date||Version/Patch||Change|| ||2023/03/09||2.99.47||Version marked as official release|| ||2023/03/04||2.99.47||Fixed problems with e2spt_refinemulti_new and compatibility with e2spt_refine_new with generated classes. Also some parallelism fixes.|| ||2023/02/25||2.99.46||Added e2spa_refine to e2projectmanager (new single particle refinement tool). Removed some historical remnants. Changed e2spt_boxer_convnet negative example selection to work on Macs.|| ||2023/02/23||2.99.45||Box file import/export options added to e2procjson. e2json2list moved from examples to programs (used to convert old-style SPT refinement files to new-style files). Some final pre-release fixes for e2gmm GUI, including making set -> lst file generation work properly.|| ||2023/02/16||2.99.44||Changes related to binary build system in preparation for release|| ||2023/02/16||2.99.42||Minor tweaks to e2gmm GUI. Bugfix for e2proc2d. Linear extraction from tomograms.|| ||2023/02/14||2.99.41||e2gmm_refine orientation refinement improvements (not part of e2gmm GUI). Various improvements to the older tomogram manipulation pipeline (see GitHub for details)|| ||2023/01/30||2.99.40||Ability to read hacked PDB files with >9999 residues. First version of GMM based orientation refinement. Contributed improvements to e2helixboxer. e2gmm_refine_point improvements to support large numbers of particles|| ||2022/12/06||2.99.39||Contour plots added to 2-D scatter plot display. Minor e2gmm GUI improvements. Histograms in e2proctxt. even/odd splitting for subparticle refinement. Many minor bugfixes and improvements (see GitHub)|| ||2022/11/13||2.99.38||Fix for rendering on older OpenGL systems|| ||2022/11/12||2.99.37||Fixes for new point classification schemes in e2gmm GUI|| ||2022/11/10||2.99.36||New classification schemes and better set manipulation introduced in e2gmm GUI. Fixes for get_image_count|| ||2022/10/29||2.99.35||Added splitters to e2spt_boxer GUI so the relative size of the X/Y/Z slices can be adjusted. Other minor fixes.Chunk mode in e2gmm and e2gmm_refine_point to handle large data sets (50k+ particles).|| ||2022/10/07||2.99.34||New bispectral invariant type with more completeness for particle classification. e2gmm now generates some negative density gaussians to help better characterize motions. Significant changes to e2gmm GUI, not stable yet|| ||2022/08/18||2.99.33||First fully functional support for subtomograms in e2gmm_refine_point and e2gmm GUI. e2display --plot3d fixes. Initial try at adding splitter to adjust sizes in e2spt_boxer. e2gmm GUI now uses e2gmm_refine_point instead of e2gmm_refine. New approach eliminates Gaussian width, and changes gradient computation. || ||2022/08/05||49e4407||Fix some issues with compressed HDF files when sigma is specified. Fix some issues with helical symmetry use. New "helix filter" processor added.|| ||2022/07/09||8dcb292||Changes to improve new compressed HDF format, and extend to other formats (bit reduction in formats not supporting actual compression).|| ||2022/05/19||51bc852||Support for SerialEM style HDF files. New comparator looking for FRC/FSC threshold resolution. BDB file storage support removed from system (use 2.91 release if you need to read old BDB files)|| ||2022/04/20||1d98c6a||Most recent fixes for EER format reading. Should support latest version of EER files|| ||2022/03/01||8dd9b91||Add support for new-style refinement programs to e2gmm GUI|| ||2022/01/27||377e65e||Binary compilation of "compatibility" EMAN2 builds now targets Haswell (ca 2014) generation processors|| ||2021/12/12||a142fb2||Better masking options for new spt multimodel refinement. Option to make CTF corrected tomograms. e2evalimage improvements. || ||2021/10/29||d7aaeb7||.lst file bug, not providing image source info in header. Better rendering of image stacks in e2filtertool. Threadsafety for .lst file reading. New orthogonal slice display option for volumes.|| ||2021/09/12||b337d0f||math.fft.peak processor improved for NPC membrane removal. Audio support in e2fftsynth demo (for teaching Fourier transforms). SPHIRE fixes in Python3 conversion. Remove --force options from many single particle refinement programs.|| ||2021/07/22||f256807||New LST reader supporting new format ddecision. Early version of e2gmm GUI. Improve interaction with .mdoc files. New method for making various improvements and fixes for SPHIRE related to Python 3.|| ||2021/03/08||2.91||Version release|| Older changes. Note that we didn't use a changelog on the Wiki for about 12 years, relying only on the discussion group: Note that if using binary versions, most reported changes will not appear in binary snapshots until ~5pm (Houston time) 1 day AFTER the date shown below. * 8/22/2011 Fixed problem with normproj in e2refine2d.py. normproj was ALWAYS used even if not specified ! * 8/22/2011 Fix for distributed parallelism to make it work with some clusters with specific network configuration. * 8/15/2011 2-D background subtraction for e2evalimage * 8/11/2011 Significant improvements to e2filtertool. Now supoorts multiple, persistent filter chains. * 8/08/2011 Change to the way icosahedral symmetry rotation works. See Google Group for details * 8/03/2011 New program e2evalimage, can do 1-D/2-D power spectrum analysis on raw CCD frames (no particle picking). Variety of useful modes for micrograph quality evaluation * 8/03/2011 Changed the way the 2-D power spectrum is displayed in e2ctf.py (and workflow) to make it more visible. Only impacts new projects, though. * 8/02/2011 Added new program 'e2evalimage.py' for raw micrograph evaluation. This is a streamlined version of the CTF tool for rapidly surveying CCD frames and micrographs. Real-time FFT and interactive CTF fitting without boxing particles. Functionality will expand over coming days. * 8/02/2011 Significant improvements to DM3 reader. Now reads voltage, Cs and A/pix directly from DM3 header. * 7/12/2011 EMAN 2.03 released * 7/12/2011 e2filtertool is now functional. This tool permits building sequences of filters and other processors and interactively playing with parameters. * 6/10/2011 Discovered that automasking wasn't handled properly in eotest.py (was using the same mask for both maps). May have a minor impact on resolution curves. Also made e2eotest command-line compatible with e2refine. * 6/9/2011 Just finished first version of [[EMAN2/Programs/e2evalparticles|e2evalparticles.py]]. This is a nifty new GUI program to evaluate individual particles in various ways and include/exclude them from the reconstruction. This initial version focuses on particles associated with each class-average in a 2-D or 3-D refinement. This is a great way to screen large particle sets for bad particles. * 5/22/2011 Major improvements to MPI parallelism. If you are using MPI, you should consider switching to tomorrow's snapshot version. Now supports caching and more reliable job distribution. * Hmm... with the workshop, have not remembered to update the changelog with important changes recently. There have been quite a few, leading to the current 2.02 release. * 3/29/2011 Major fix for e2refinevariance.py. It was previously appending new class-averages to the stack for each new model, meaning it became progressively slower, and was producing incorrect results as well. This has been fixed. * 3/4/2011 Too many changes to list over the last month in preparation for the EMAN2 workshop and the 2.0 release. Here are a few hilights: * Fixed major (but trivial) bug. IF you used m3dkeepsig or classkeepsig options in refinement, it was actually throwing away far more data than it should have, due to a stupid error in the standard deviation calculation. Of course, the data being thrown away was the worst fraction, but nonetheless, you will now find much more data being included when using these options. * First version of the completely redone single particle tomography support incorporated into the workflow interface. From the command line 'e2classaverage3d.py'. Also the new GUI tool e2tomoboxer.py. * First version of support for seeding Frealign runs with EMAN2 incorporated into the workflow. The results of an EMAN2 refinement can now be converted to Frealign parameter files, Frealign can be executed, and the results imported back into EMAN2 again. * 2/11/2011 e2tomoboxer.py rewritten from scratch, and now becoming a powerful program. Will add better command-line programs next week. * 2/11/2011 Tomographic reconstructions of volumes larger than 2 gigapixels fixed (could cause a segfault previously). You will still need to have 1.5x the padded volume available RAM, but it will now work for very large tomograms (64 bit machines only of course). * 12/18/2010 After several weeks of effort, EMAN2 finally has MPI support for use on standard linux clusters. Please see [[EMAN2/Parallel|the parallelism page]] for more details. * 12/10/2010 '''EMAN2.0 RC4 Released''' * 11/18/2010 * New GUI display options in e2ctf.py added to work in conjunction with new SSNR smoothing feature. Can produce very nice plots of local 'peak' SSNR values, and there is now a decent method for using it to predict maximum achievable resolution. * 11/11/2010 * Significant new mechanism for smoothing the experimentally determined SNR and refining defocus values (+-.1 micron). Still experimenting to see if it improves high resolution results. To give the smoothing a try, the following command will refine all of the defocuses and smooth all of the SNRs in a project : {{{e2ctf.py --refinebysnr `e2bdb.py particles --filtexclude=ctf -s` -v 2}}}. You will then need to regenerate CTF output and make a new 'set' for the changes to take effect. Just email me if you have questions. * 11/10/2010 * Nightly snapshots had been disabled for the last week or two due to residual bugs after merging in a major overhaul in the GUI widgets. As of today, nightly snapshots are being generated again. * 10/28/2010 * Significant improvements to e2refine2d.py, particularly when used with CTF correction. Centering and alignment reference selection both improved producing sometimes vastly better results. In other cases, it already worked well, and still should. * 10/25/2010 * Significant internal simplification of the GUI widgets, we plan to use as the basis for adding new features moving forward. May result in a bit of temporary instability in the GUI. Please report any problems you have. * 9/21/2010 * !!! IMPORTANT !!! - We discovered that the lowpass (and highpass) filters when using one of the cutoff_* parameters were actually being inconsistently defined. If you said, for example cutoff_freq=0.1, you'd expect that in Fourier space, the Gaussian would fall to 1/e at 1/10 1/A. This is what many would define as 'filtering to 10 A resolution'. Due to a miscommunication somewhere, this value was underfiltering the data by sqrt(2). That is if you said 0.1 to obtain a '10 A' filter, you were actually getting a 7 A filter. While this error is unlikely to have caused any serious refinement errors, it would confusingly make people have to filter their maps more than they would expect. We are very sorry for this problem (which impacted us as well). The important note here is that this has been fixed as of the 9/22 snapshot, so 0.1 now actually means 10 A. So running the same refinement command before and after this date will result in maps with very different resolvabilities. Note that this effects the resolvability of the maps, NOT the resolution. * 9/9/2010 * e2classaverage, the program responsible for iterative class-averaging both in 2-D reference free analysis and 3-D refinement has been completely rewritten from scratch. With this new version, refinement resolutions have improved noticeably. The --niter argument now really does what it should. If you say 0, it uses the alignments directly to the references. 1 will do one iteration of alignment to an average, ... Using 0 for more than 1 or 2 iterations of 3-D refinement may produce undesirable noise bias. * 9/3/2010 * Massive overhaul of command-line program basic documentation (program --help), and removal of some old programs. All programs should now contain a basic description, and unstable programs will produce a warning message. * 8/31/2010 * Fix for HDF reader/writer to better deal with non-float datatypes. Default format is still float. * 8/27/2010 * fix for .box file import in workflow * 8/26/2010 * Single particle reconstruction tutorial heavily updated. Now has a lot of useful new advice, and covers recent GUI additions. * 8/18/2010 * Fixed serious problem when probing values in the left half of the FFT display in 2-D images. Was not displaying the correct value. Note that there is still a ~1 pixel shift in some cases when probing. Look at the coordinates when using this feature. We are working on a new version of all of the display widgets. * 8/10/2010 * fixed significant bug in creation of virtual stacks with the 'e2bdb.py --makevstack' command * 7/21/2010 * More thorough fix for FFT rendering, though there are still a few issues. * 7/20/2010 * Note that the message saying we temporarily disabled RC3 downloads due to a potential CTF issue was resolved. It was user-error, not an actual bug. Everything is working fine. * Fixed color rendering of FFTs * Investigating issue related to incorrect phase-flipping if oversampling is used during fitting. (update : seems ok, must be a problem elsewhere) '''EMAN2.0 RC3 Released''' '''Important Note''' We recently discovered (and fixed) the cause of a serious problem in the 3-D reconstruction algorithm. If you did a 3-D reconstruction with the keep= option set to a value less than 1 (or used the sigma keep option), you would sometimes (but not always) get a streaked or blurred looking 3-D reconstruction. This was due to a very subtle bug in the 3-D reconstruction algorithm which is now fixed. If you ran into this problem, PLEASE rerun your refinements with this new version. They should be much improved. Several other significant enhancements have also been made. For users upgrading from an earlier version, here are some suggested things to try with projects you previously refined with an earlier version of EMAN2 : * Try running a few more rounds of refinements. A number of subtle changes may have a positive impact on your results. * Rerun the 'structure factor determination' step in the workflow. There is a new algorithm which extends the structure factor closer to the origin and improves results at higher resolutions. You should NOT need to rerun CTF determination, but recomputing the structure factor should improve results. * If you are using the ctf.auto averager, note that it no longer includes Wiener filtration which is now supported as anisotropic Wiener filtration in 3-D. You can still generate Wiener filtered class-averages if you like using the ctfw.auto averager. * There is now a wiener-fourier reconstructor in addition to the 'fourier' reconstructor. In most structures the effects may not be very significant, but it may be a good idea to switch. You can still use setsf and lowpass filter and get the benefits of the anisotropy of the Wiener filter. * 7/19/2010 * Improved --twostage option, so it better distributes the first-stage classification references. This option provides dramatic refinement speedups. * 7/15/2010 * Threaded parallelism is now working !!! If all you want to do is use multiple cores on your local machine, all you have to do is put "thread:4" in the 'Parallel" box, or equivalently specify --parallel=thread:4 on the command line. No clients, no servers, etc. * 7/9/2010 * Fix for the parallelism client (e2parallel.py dcclient) gradually using more and more memory when running long jobs in parallel. * 7/8/2010 * Averager ctf.auto now does not include a Wiener filter. ctfw.auto was added to include this. Both averagers now store SNR info to be used in 3-D reconstruction. * Fixed another issue with 3-D reconstruction with the lowmem option. * New wiener_fourier reconstructor added. Works in conjunction with the improved ctf.auto averager to produce correct, anisotropically Wiener filtered 3-D reconstructions ! * 7/7/2010 * '''Finally fixed bug producing strange looking reconstructions with keep<1 in 3-d reconstruction.''' If you were seeing streaked or stretched looking reconstructions, this should take care of it. This bug has been around for the last ~8 months or so. If you were having serious problems getting a good model from EMAN2 over that time period, please try again ! * 6/25/2010 * CTF structure factor determination now extends almost to origin, significantly, now including the sharp peak near the origin. Remains to be seen if this will be a significant improvement or make some things worse. It will arguably improve the appearance of structures when setsf is used. * Circular mask in class-averages is now a soft Gaussian varying with box-size. This prevents sharp edge effects on the mask. * Particularly for structures with high c or d symmetry, may consider using the 'perturb' option on the eman orientgen to reduce problems with 'stripes' appearing in exact side views. (note this is now the default in RC3) '''EMAN2.0RC2 Released''' * 5/20/2010 * fixed problem causing e2refine2d.py to crash * fixed 'prefilt' option (PS match ref in workflow). Was not working properly and even when disabled was causing some problems. * 5/19/2010 * Added --check option to e2bdb.py for verifying databases. Can check for some possible database internal inconsistencies * 4/28/2010 * Fixed long standing bug with remote display of single images using VNC or NX (www.nomachine.com). Power spectra and individual images should now display correctly. * New --automask option on e2refine2d.py and e2classaverage.py will help with centering negative stain data (and maybe cryo data that doesn't center well) * New mask.auto2d filter, similar to mask.auto3d * 4/22/2010 * Convergence plot was being improperly calculated, giving the impression of low resolution. Corrected for new e2refine runs. Old runs can be updated with examples/redo_convergence.py in a project directory