= Description =
<onlyincludesection begin=description/>
This is a major feature release. It includes the addition of the new [[B14]] and [[B14 full]] [[:Category:relaxation dispersion|relaxation dispersion]] models [Baldwin 2014], a complete rearrangement of the module layout of the specific analyses packages, a number of new [http://www.nmr-relax.com/manual/list_functions.html user functions], documentation improvements including the addition of a [http://www.nmr-relax.com/manual/N_state_model_or_ensemble_analysis.html new chapter to the manual for the N-state model or ensemble analysis], and numerous of other features. This is also a major bugfix release, so all users are recommended to upgrade. This is essential if you are using the new relaxation dispersion analysis in relax as a severe bug in the error calculation has been corrected. See below for a comprehensive list of new features, the rather large number of changes, and the long list of all bugs fixed.
<section end=description/onlyinclude>
= Download =
<section begin=download/>
The new relax versions can be downloaded from http://www.nmr-relax.com/download.html. If binary distributions are not yet available for your platform and you manage to compile the binary modules, please consider contributing these to the relax project (described in section 3.6 of the relax manual, http://www.nmr-relax.com/manual/relax_distribution_archives.html).
<section end=download/>
= CHANGES file =
<section begin=metadata/>
Version 3.2.0 <br/>
(20 May 2014, from /trunk) <br/>
http://svn.gna.org/svn/relax/tags/3.2.0
<section end=metadata/>
== Features ==
<section begin=features/>
* Addition of the vector_angle() relax library function for calculating the signed or directional angle between two vectors.
* Huge speed up of the [http://www.nmr-relax.com/manual/interatom_define.html interatom.define user function].
* Creation of the new [http://www.nmr-relax.com/manual/pymol_frame_order.html pymol.frame_order user function] for visualising results.
* Expansion of the Grace 2D data plotting capabilities.
<section end=features/>
== Changes ==
<section begin=changes/>
* Shifted two functions from pipe_control.angles into the new lib.geometry.angles module. This is the fold_spherical_angles() and wrap_angles() functions which are not related to the relax data store and hence can be made independent.
* Replaced function atan(ω<sub>1</sub> / Δω) with atan2(ω<sub>1</sub> , Δω), to make sure returned θ values are between 0 and π. This was done in the function return_offset_data() in the specific_analyses of relax_disp. This was discussed in: http://thread.gmane.org/gmane.science.nmr.relax.devel/5210.
* Python 3 fixes for all of the relax code base. The lib.compat and multi.processor module changes were fatal, not useful for Python 3, and hence reverted.
* Python >= 3.2 fix for the Relax_disp.test_sod1wt_t25_to_sherekhan_input system test. The B0 field value of the ShereKhan input files created by the [http://www.nmr-relax.com/manual/relax_disp_sherekhan_input.html relax_disp.sherekhan_input user function] was formatted as "%s". However in Python >= 3.2, floats are now converted to have 14 decimal places whereas previous Python versions only had 10 places. The user function backend now forces only 10 decimal places to be written to the input files.
<section end=changes/>
== Bugfixes ==
<section begin=bugfixes/>
* Fix for [https://gna.org/bugs/?21814 bug #21814, the PDB reading failure when the PDB records are not padded to 80 spaces]. The fix is simple, all PDB records are pre-validated. This includes removing all newline characters and padding each PDB record to 80 spaces when needed. This will however add an overhead cost -- the internal PDB reader will now be slower. However corrupted PDB files, produced by MODELLER for example, not padded to 80 spaces will now be better supported.
* Bug fix for all of the R<sub>1ρ</sub> relaxation dispersion models. The atan2() function is now being used rather than atan() for determining the rotating frame tilt angle. This is to allow the angle to be in the correct quadrant - i.e. to have a sign or direction.
* Fix for [https://gna.org/bugs/?22041 bug #22041, the PDB atom serial number error from the structure.write_pdb user function]. The problem is that the [http://www.nmr-relax.com/manual/structure_write_pdb.html structure.write_pdb user function] preserves the atom numbering from the original structure and uses that for the atom serial number. However the atom serial number must be replaced with sequential values to produce a valid PDB file. This is fatal for any CONECT records.
* Fix for the chain-reaction failures in the test suite. This fixes [https://gna.org/bugs/?22055 bug #22055, the processor.run_queue() not cleaning up in uni_processor - chain-reaction failures in the test suite]. The fix was insanely simple, just implementing what was mentioned Gary Thompson's FIXME comment in the run_queue() method of the uni-processor object. The queue execution code has been placed inside a 'try' statement and the queue cleaning up code in a 'finally' statement. This closes a painfully difficult to find bug that has been in relax since 2006, though only affecting relax developers.
<section end=bugfixes/>
= Links =
<section begin=links/>
For reference, the following links are also part of the announcement for this release:
* [http://wiki.nmr-relax.com/Relax_3.2.0 Official release notes]
* [https://mail.gna.org/public/relax-announce/2014-05/msg00000.html Local archives]
* [http://marc.info/?l=relax-announce&m=140071233101164&w=2 MARC]
<section end=links/>
= Announcements =
= References =
<section start=references/>
* [*Baldwin 2014] A. Baldwin (2014). An exact solution for R2,eff in CPMG experiments in the case of two site chemical exchange. ''J. Magn. Reson.'', '''244''', 114-124. (DOI: [http://dx.doi.org/10.1016/j.jmr.2014.02.023 10.1016/j.jmr.2014.02.023]).
<section end=references/>
<HarvardReferences />