Difference between revisions of "Relax 3.2.0"

From relax wiki
Jump to navigation Jump to search
(Formatting of all symbols/parameters.)
(More formatting of symbols/parameters.)
Line 333: Line 333:
 
*  Changed the default R<sub>2</sub><sup>0</sup> relaxation rate from 15 to 10 rad.s<sup>-1</sup>.  This is probably closer to the average rate expected for molecules studied by NMR.
 
*  Changed the default R<sub>2</sub><sup>0</sup> relaxation rate from 15 to 10 rad.s<sup>-1</sup>.  This is probably closer to the average rate expected for molecules studied by NMR.
 
*  The R<sub>2eff</sub> dispersion parameter now also defaults to 10 rad.s<sup>-1</sup>.
 
*  The R<sub>2eff</sub> dispersion parameter now also defaults to 10 rad.s<sup>-1</sup>.
*  Expanded the dispersion specific API set_param_values() method for the 'r2eff' and 'i0' parameters.  This now sets these parameter values correctly if the value sent into the method is not composed of dictionaries.
+
*  Expanded the dispersion specific API set_param_values() method for the R<sub>2eff</sub> and I<sub>0</sub> parameters.  This now sets these parameter values correctly if the value sent into the method is not composed of dictionaries.
 
*  Large speed up of the relaxation dispersion system tests by about 20%.  This was achieved by turning the grid search off in the following system tests:  Some of the optimisation values are slightly different, or completely different for the one example of the [[CR72]] model fitted to no exchange, and these have been updated in the tests.
 
*  Large speed up of the relaxation dispersion system tests by about 20%.  This was achieved by turning the grid search off in the following system tests:  Some of the optimisation values are slightly different, or completely different for the one example of the [[CR72]] model fitted to no exchange, and these have been updated in the tests.
 
*  Changed the bounds for the R<sub>2</sub><sup>0</sup> parameters in the default grid search.  The range of 1 to 40 rad.s<sup>-1</sup> was previous used.  This has been narrowed to 5 to 20.
 
*  Changed the bounds for the R<sub>2</sub><sup>0</sup> parameters in the default grid search.  The range of 1 to 40 rad.s<sup>-1</sup> was previous used.  This has been narrowed to 5 to 20.
Line 450: Line 450:
 
*  Speedup - moved the repetitive calculations of p<sub>B</sub>, k<sub>BA</sub> and k<sub>AB</sub> out of the library function.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
 
*  Speedup - moved the repetitive calculations of p<sub>B</sub>, k<sub>BA</sub> and k<sub>AB</sub> out of the library function.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
 
*  Speedup - moved the calculation of &delta;<sub>R<sub>2</sub></sub> and alpha_m out of library function.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
 
*  Speedup - moved the calculation of &delta;<sub>R<sub>2</sub></sub> and alpha_m out of library function.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
*  Pretty-up code.  Re-ordered logic of r20 parameters, and exchange parameters in function call.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
+
*  Pretty-up code.  Re-ordered logic of R<sub>2</sub><sup>0</sup> parameters, and exchange parameters in function call.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
 
*  Moved Carver and Richards (1972) &zeta; and &Psi; notation outside library function.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  Not sure, if this speeds the calculation up.  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
 
*  Moved Carver and Richards (1972) &zeta; and &Psi; notation outside library function.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  Not sure, if this speeds the calculation up.  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
 
*  Speedup - made variable for the repetitive calculations of &zeta;<sup>2</sup>, and &Psi;<sup>2</sup>.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
 
*  Speedup - made variable for the repetitive calculations of &zeta;<sup>2</sup>, and &Psi;<sup>2</sup>.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
Line 458: Line 458:
 
*  Speedup - repetitive calculations of sqrt_zeta2_Psi2 = sqrt(zeta2 + Psi2).  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
 
*  Speedup - repetitive calculations of sqrt_zeta2_Psi2 = sqrt(zeta2 + Psi2).  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
 
*  Speedup - converted expressions of complex(x, y) to (x + y*1j).  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
 
*  Speedup - converted expressions of complex(x, y) to (x + y*1j).  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
*  Split the func_B14 into full, with a calc function.  This is to prepare for the splitting up of [[B14]], into a full: R2a!=R2b, and "normal" which is r2a=r2b.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
+
*  Split the func_B14 into full, with a calc function.  This is to prepare for the splitting up of [[B14]], into a full: R<sub>2A</sub><sup>0</sup> != R<sub>2B</sub><sup>0</sup>, and "normal" which is R<sub>2A</sub><sup>0</sup> = R<sub>2B</sub><sup>0</sup>.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
 
*  Documentation fix for [[CR72]] calc function.
 
*  Documentation fix for [[CR72]] calc function.
 
*  Renamed system test Relax_disp.test_baldwin_synthetic to Relax_disp.test_baldwin_synthetic_full.  And changed model from [[B14 full|B14]] to [[B14 full]].  This is to help find where modifications now have to be changed.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
 
*  Renamed system test Relax_disp.test_baldwin_synthetic to Relax_disp.test_baldwin_synthetic_full.  And changed model from [[B14 full|B14]] to [[B14 full]].  This is to help find where modifications now have to be changed.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
Line 472: Line 472:
 
*  Added model [[B14]] description in the manual.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#The_relax_manual.
 
*  Added model [[B14]] description in the manual.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#The_relax_manual.
 
*  Updated the references in the b14.py library file, to point to the wiki, and the future API and html documentation.  The link to API and html documentation is to be updated for the future compilation of these.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#The_relax_manual.
 
*  Updated the references in the b14.py library file, to point to the wiki, and the future API and html documentation.  The link to API and html documentation is to be updated for the future compilation of these.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#The_relax_manual.
*  Reinserted the library function of b14.py the calculation of:  &delta;<sub>R<sub>2</sub></sub> = r20a - r20b; alpha_m = &delta;<sub>R<sub>2</sub></sub> + k<sub>AB</sub> - k<sub>BA</sub>; &zeta; = 2 * &Delta;&omega; * alpha_m; and &Psi; = alpha_m<sup>2</sup> + 4 * k<sub>BA</sub> * k<sub>AB</sub> - &Delta;&omega;<sup>2</sup>.  And put the g_fact = 1/sqrt(2), inside the library function.  It made no sense to put these calculations outside the library, since there would be no skipping of a loop.  It actually makes much better sense to keep these calculation in the library function, to preserve the possibility to import this module in other software.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
+
*  Reinserted the library function of b14.py the calculation of:  &delta;<sub>R<sub>2</sub></sub> = R<sub>2A</sub><sup>0</sup> - R<sub>2B</sub><sup>0</sup>; alpha_m = &delta;<sub>R<sub>2</sub></sub> + k<sub>AB</sub> - k<sub>BA</sub>; &zeta; = 2 * &Delta;&omega; * alpha_m; and &Psi; = alpha_m<sup>2</sup> + 4 * k<sub>BA</sub> * k<sub>AB</sub> - &Delta;&omega;<sup>2</sup>.  And put the g_fact = 1/sqrt(2), inside the library function.  It made no sense to put these calculations outside the library, since there would be no skipping of a loop.  It actually makes much better sense to keep these calculation in the library function, to preserve the possibility to import this module in other software.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
 
*  Removed the pre-calculation of "zeta2 = zeta**2" "Psi2 = Psi**2" since it did not speed-up things.  This power 2 of &zeta; and &Psi; is only done once.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
 
*  Removed the pre-calculation of "zeta2 = zeta**2" "Psi2 = Psi**2" since it did not speed-up things.  This power 2 of &zeta; and &Psi; is only done once.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
 
*  Used LaTeX subequations instead, and using R<sub>2eff</sub> parameter is defined in the relax.tex.  Using the defined \Rtwoeff, \RtwozeroA, \RtwozeroB, \kAB, \kBA, \kex.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#The_relax_manual.
 
*  Used LaTeX subequations instead, and using R<sub>2eff</sub> parameter is defined in the relax.tex.  Using the defined \Rtwoeff, \RtwozeroA, \RtwozeroB, \kAB, \kBA, \kex.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#The_relax_manual.
Line 509: Line 509:
 
*  Fix for model [[B14 full]] making ugly graphs.  The power of ncyc has to be an integer.  [https://gna.org/bugs/?22018 Bug #22018: Model B14 creates ugly graphs ! Sig saw all over the place].
 
*  Fix for model [[B14 full]] making ugly graphs.  The power of ncyc has to be an integer.  [https://gna.org/bugs/?22018 Bug #22018: Model B14 creates ugly graphs ! Sig saw all over the place].
 
*  Fixes for the HTML version of the relax manual.  The renewal of the \theequation command in the model-free and relaxation dispersion chapters was causing all equation numbers in latex2html to be broken.  By placing these in a latexonly environment, the problem is avoided in the HTML version at www.nmr-relax.com/manual/.
 
*  Fixes for the HTML version of the relax manual.  The renewal of the \theequation command in the model-free and relaxation dispersion chapters was causing all equation numbers in latex2html to be broken.  By placing these in a latexonly environment, the problem is avoided in the HTML version at www.nmr-relax.com/manual/.
*  Changed script for synthetic CPMG data.  This is to test the fitting of [[CR72]] and [[B14]], when creating R<sub>2eff</sub> data with numerical model: MODEL_NS_CPMG_2SITE_EXPANDED.  This script is ideal for testing cases.  One can readily define experiments settings: sfrq_X, time_T2_X, ncycs_X for simulating one or more spectrometer experiments.  Spins can readily be set up, to have different dynamics, like: r2, r2a, r2b, k<sub>ex</sub>, p<sub>A</sub> and &Delta;&omega;.  The script can test clustering, and can convert to Sherekhan and make a hyper-dimensinal dx map to test Chi2 hypersurface on parameter settings.  It is also ideal for strees-testing relax, to see if its minimisation algorithm performs well.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
+
*  Changed script for synthetic CPMG data.  This is to test the fitting of [[CR72]] and [[B14]], when creating R<sub>2eff</sub> data with numerical model: MODEL_NS_CPMG_2SITE_EXPANDED.  This script is ideal for testing cases.  One can readily define experiments settings: sfrq_X, time_T2_X, ncycs_X for simulating one or more spectrometer experiments.  Spins can readily be set up, to have different dynamics, like: R<sub>2</sub>, R<sub>2A</sub><sup>0</sup>, R<sub>2B</sub><sup>0</sup>, k<sub>ex</sub>, p<sub>A</sub> and &Delta;&omega;.  The script can test clustering, and can convert to Sherekhan and make a hyper-dimensinal dx map to test &chi;<sup>2</sup> hypersurface on parameter settings.  It is also ideal for strees-testing relax, to see if its minimisation algorithm performs well.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
 
*  Small improvement for generic CPMG data script file.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
 
*  Small improvement for generic CPMG data script file.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
 
*  Added functionality of the visualising the spin dynamics point which generated the data.  This is to the script, which can visualize the synthetic CPMG data.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
 
*  Added functionality of the visualising the spin dynamics point which generated the data.  This is to the script, which can visualize the synthetic CPMG data.  [https://gna.org/support/?3154 Sr #3154, implementation of Baldwin (2014) B14 model - 2-site exact solution model for all time scales].  This follows the tutorial for adding relaxation dispersion models at: http://wiki.nmr-relax.com/Tutorial_for_adding_relaxation_dispersion_models_to_relax#Debugging.
Line 652: Line 652:
 
*  Added another sentence telling the user that multiple field relaxation data is essential.  This is for the model-free dauvergne_protocol auto-analysis section of the relax manual and relates to [https://gna.org/bugs/?21799 bug #21799].
 
*  Added another sentence telling the user that multiple field relaxation data is essential.  This is for the model-free dauvergne_protocol auto-analysis section of the relax manual and relates to [https://gna.org/bugs/?21799 bug #21799].
 
*  Another sentence about multiple field relaxation data added to the manual.  This is for the model-free dauvergne_protocol GUI section of the relax manual and relates to [https://gna.org/bugs/?21799 bug #21799].
 
*  Another sentence about multiple field relaxation data added to the manual.  This is for the model-free dauvergne_protocol GUI section of the relax manual and relates to [https://gna.org/bugs/?21799 bug #21799].
*  Documentation fix for [[IT99]].  Changed k<sub>ex</sub> to tex.  Still needs to be changed at homepage: http://www.nmr-relax.com/analyses/relaxation_dispersion.html#IT99.  [https://gna.org/bugs/?22019 Bug #22019: the IT99 model is listed with parameter k<sub>ex</sub> instead of tex].
+
*  Documentation fix for [[IT99]].  Changed k<sub>ex</sub> to t<sub>ex</sub>.  Still needs to be changed at homepage: http://www.nmr-relax.com/analyses/relaxation_dispersion.html#IT99.  [https://gna.org/bugs/?22019 Bug #22019: the IT99 model is listed with parameter k<sub>ex</sub> instead of t<sub>ex</sub>].
*  Documentation fix for [[IT99]].  Changed k<sub>ex</sub> to tex in user function.  [https://gna.org/bugs/?22019 Bug #22019: the IT99 model is listed with parameter k<sub>ex</sub> instead of tex].
+
*  Documentation fix for [[IT99]].  Changed k<sub>ex</sub> to t<sub>ex</sub> in user function.  [https://gna.org/bugs/?22019 Bug #22019: the IT99 model is listed with parameter k<sub>ex</sub> instead of t<sub>ex</sub>].
 
*  Small extra explanation in auto analysis.  [https://gna.org/bugs/?21799 Bug #21799: Insufficient recommendations/warning message for the execution of dauvergne protocol with 1 field is incomplete].
 
*  Small extra explanation in auto analysis.  [https://gna.org/bugs/?21799 Bug #21799: Insufficient recommendations/warning message for the execution of dauvergne protocol with 1 field is incomplete].
 
*  Big bug fix for the relax installation path determination.  This is to fix [http://gna.org/bugs/?22037 bug #22037, the failure to load graphics in the GUI due to the relax installation path not being set up correctly].  The problem is that the status module was looking for the compat.py file to determine where the base directory is, but this file has been moved into the lib/ package.  Now the dep_check.py file is being searched for.
 
*  Big bug fix for the relax installation path determination.  This is to fix [http://gna.org/bugs/?22037 bug #22037, the failure to load graphics in the GUI due to the relax installation path not being set up correctly].  The problem is that the status module was looking for the compat.py file to determine where the base directory is, but this file has been moved into the lib/ package.  Now the dep_check.py file is being searched for.

Revision as of 16:27, 9 September 2014


Description

This is a major feature release. It includes the addition of the new B14 and B14 full relaxation dispersion models [Baldwin 2014], a complete rearrangement of the module layout of the specific analyses packages, a number of new user functions, documentation improvements including the addition of a 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.


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).


CHANGES file

Version 3.2.0 (20 May 2014, from /trunk) http://svn.gna.org/svn/relax/tags/3.2.0


Features

  • Addition of the vector_angle() relax library function for calculating the signed or directional angle between two vectors.
  • Huge speed up of the interatom.define user function.
  • For improved feedback, a busy cursor is shown in the GUI when executing user functions.
  • The steady-state NOE auto-analysis now produces a 2D Grace plot of the reference and saturated spectra peak intensity values.
  • Complete redesign of the specific analyses backend, simplifying and cleaning up this internal API and making it easier for users to add completely new analysis types to relax.
  • Parametric reduction of the rotor frame order model, eliminating one redundant parameter hence simplifying optimisation.
  • Large improvement for the lib.software.grace module. The '*_err' and '*_bc' parameter names for the parameter error and back-calculated parameters respectively are now supported, allowing these values to be easily plotted.
  • Expansion of the value.set user function to handle parameters which consist of lists of values. The index argument has been added to allow the index of the list to be specified, and this is then propagated into the specific analysis API.
  • Improvements for the parameter definitions in all analysis types. This allows for better output in 2D plots and text files.
  • Implemented linear constraints for the frame order analysis. This uses the log-barrier constraint algorithm in the minfx library to provide constraints without requiring gradients.
  • Improved and expanded the relax command line options for debugging.
  • Full independence of the relax library so that it can be used outside of relax.
  • The addition of a relaxation dispersion user function for setting the R20 values to the minimum R2eff value.
  • Expanded capabilities for the relax_disp.sherekhan_input user function.
  • Implementation of the B14 and B14 full relaxation dispersion CPMG models for 2-site exchange for all time scales (from the new paper [Baldwin 2014] at http://dx.doi.org/10.1016/j.jmr.2014.02.023).
  • Large improvements to the relax HTML manual including fixes for URLs, bibliography entries, links, and tables.
  • Support for multiple point creation for the OpenDX chi-squared space mapping user function.
  • Automatic determination of reasonable initial contour levels for the OpenDX mapping user function.
  • Addition of a new chapter to the manual for the N-state model or ensemble analysis.
  • Creation of the new pymol.frame_order user function for visualising results.
  • Expansion of the Grace 2D data plotting capabilities.


Changes


Bugfixes

  • Fix for 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 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.
  • Huge speed up of the interatom.define user function. This is to fix bug #21862, the freezing up of relax when using the dipolar relaxation button in the model-free auto-analysis in the GUI. This involves a number of changes. The algorithm for the backend of the interatom.define user function has been broken into two separate parts. The first part is new and uses the internal structural object atom_loop() twice for each spin ID string. This then calls the new are_bonded_index() structural object method which uses atom indices to find if two atoms are bonded, as the atom indices are returned from the atom_loop(). The are_bonded_index() is orders of magnitude faster than are_bonded() as selection objects are not used and the bonded data structure can be directly accessed. The are_bonded() method has also been slightly speed up by improving its logic. The second part is to perform the original algorithm of two nested spin loops over each spin ID and using the are_bonded() structural method. This second part only happens if the first part finds nothing. The structural object atom_loop() method has been modified to be able to return the molecule index. These indices are needed for the new are_bonded_index() method. When running relax with the profile flag turned on, a simple script which loads the 'Ubiquitin2.bz2' saved state and then the "interatom.define(spin_id1='@N', spin_id2='@H', direct_bond=True)" user function decreases from a total time of 143 to 3.8 seconds. However there are no speed changes detectable in the relax test suite - on one computer the system, unit and GUI tests only only vary by a fraction of a second.
  • Fix for the NOE analysis for the peak intensity parameters. This relates to bug #21863, the grace.write user function not being able to write ref/sat plots as described in sample script noe.py. The 'ref' and 'sat' parameters have been replaced by the 'intensities' dictionary data structure a long, long time ago. Therefore they have been eliminated and replaced by the 'intensities' definition.
  • Fixes for the definitions of the N-state model analysis parameters. This analysis does not use the CSA value, and the paramagnetic centre is a list, not a float.
  • Fixes for the definitions of the 'theta' and 'w_eff' relaxation dispersion parameters. These should not be manually changed by the user and they are not optimised parameter. Therefore they have been shifted from the set 'params' to the set 'all', to avoid listing them in the parameter tables (for example in the value.set user function).
  • Fixes for the frame_order.pivot user function - the model parameters were not being updated. The update_model() function is now called to make sure that the pivot point is either added or removed from the list of model parameters.
  • Fix for bug #21924, the failure to output 2D Grace plots for the R20, R2A0, R2B0, and R0 relaxation dispersion parameters. A simple test for missing data fixed the problem.
  • Fix for the Relax_disp.test_korzhnev_2005_15n_sq_data system test for certain MS Windows systems. This was reported as sr #3142. The problem was simply the lower precision of this system.
  • Fix for the cpmg_analysis.py relaxation dispersion sample script. This was reported as sr #3142. The problem was that one of the paths was in the Linux/Unix format and hence if the path is not changed by the user, then the script will not work for them if they are using MS Windows or Mac OS X.
  • More path fixes for the sample scripts to allow them to run on MS Windows and Mac OS X. This is for the relaxation dispersion R1rho_analysis.py script and the N-state model conformation_analysis_rdc+pcs.py script. These scripts should be modified by the user for their own data, so they should not encounter this problem when using the scripts normally.
  • Python 3 fixes throughout the codebase.
  • Python 3 fix for the Library.test_library_independence software verification test.
  • Python 3 fix for the Relax_disp.test_kteilum_mhsmith_eschulz_lcchristensen_gsolomentsev_moliveberg_makke_sod1wt_t25_to_cr72 system test. The xrange builtin function does not exist in Python 3.
  • Python 3 fix for the Relax_disp.setup_sod1wt_t25 system test. The xrange builtin function does not exist in Python 3.
  • Updated the Relax_disp.test_hansen_cpmg_data_missing_auto_analysis system test for the recent changes. This is for fixing bug #21960. The chi-square values are different due to the fix for bug #21954, the peak intensity error analysis bug, and the CR72 model results are different due to the fix for bug #21953, the change of the kex values used in the grid search.
  • Fix for the relax_disp.select_model user function for when the C modules are not compiled. This was checking for the presence of the compiled C modules whenever the R2eff model was specified. However this behaviour is incorrect. It should only check for the C modules if exponential curves are to be fit.
  • Fix for bug. The variances used to calculated std, should only be taken from those which are defined in the subset. Regarding bug #21954, order of spectrum.error_analysis is important.
  • Fix for system test Relax_disp.test_hansen_cpmgfit_input. Bug #21989, relax_disp.cpmgfit_input does not work for model CR72. The looping was performed over the file lines instead of the defined fixed lines. The output files is truncated, and does not contain the wished data.
  • Fix for "offset" and "point" swapped in looping. Bug #21989, relax_disp.cpmgfit_input does not work for model CR72.
  • Fix for bug #21990, the --log and --tee options not functioning with the test suite.
  • Fix for bug #21970. The Mac OS X dmg file required one of the test_suite/shared_data directories included in the 'include' list to properly bundle all relax modules inside the Mac App framework. This was achieved by creating a whitelist structure and adding the directory to that.
  • Fix for bug #21984, the numpy.float16 error. The numpy.float16 type is not defined for all numpy versions. Therefore the lib.check_types.float16 type is used instead as this defaults to numpy.float32 when numpy.float16 is missing.
  • Fix for the relax_disp.parameter_copy function. The median of the values was not performed properly, since 0.0 was already in the starting list of values.
  • Fix for the relax_disp.parameter_copy user function description. The parameters are not averaged but instead the median value from all spins is taken.
  • Fix for bug #22001, the execution of script changing the current working directory. The changing of the current working directory (CWD) was added to allow for nested scripting. However this is no longer needed as the script import mechanism has changed from the exec() function call to the runpy Python module.
  • Fix for bug #22002, the failure of the Library.test_library_independence software verification test. The fix was simply to use the relax installation path in the status singleton object to make sure that the relax 'lib' directory can be found independently of what the current working directory is.
  • Fix for path to sample data in sample script: sample_scripts/relax_disp/cpmg_analysis.py.
  • Fix for path to sample data in sample script: sample_scripts/relax_disp/R1rho_analysis.py.
  • Fix for bug #22004, the conformation_analysis_rdc+pcs.py N-state model sample script not working. The problem was that the return_api() function call needed to be after the creation of the data pipe.
  • Fix for the local_min_search.py N-state model sample script. The return_api() function call was preformed too early. Instead of placing it after the data pipe creation, the specific analysis type is now directly specified.
  • Fix for type in the eta scale of CR72 model. The calculation in relax was correct, but the scale of eta has been wrong in the documentation. This was discussed in: http://thread.gmane.org/gmane.science.nmr.relax.devel/5506.
  • Bug fix for taking the median if there is more than 0 values in the list. Bug #22010: relax_disp.parameter_copy return a list of pA, if copying only for one spin.
  • Fix for the dispersion model_statistics() specific API method. The spin ID argument should override the model_info argument. The method now correctly implements this.
  • Fixed the rotor axis direction in the lib.frame_order.rotor_axis module. The normalisation code has also been simplified.
  • Fix for tabular space and forgotten "\n" when writing dx.maps config files. Bug #22023: relax dx.map produce .net files which makes error.
  • Added another sentence telling the user that multiple field relaxation data is essential. This is for the model-free dauvergne_protocol auto-analysis section of the relax manual and relates to bug #21799.
  • Another sentence about multiple field relaxation data added to the manual. This is for the model-free dauvergne_protocol GUI section of the relax manual and relates to bug #21799.
  • Documentation fix for IT99. Changed kex to tex. Still needs to be changed at homepage: http://www.nmr-relax.com/analyses/relaxation_dispersion.html#IT99. Bug #22019: the IT99 model is listed with parameter kex instead of tex.
  • Documentation fix for IT99. Changed kex to tex in user function. Bug #22019: the IT99 model is listed with parameter kex instead of tex.
  • Small extra explanation in auto analysis. Bug #21799: Insufficient recommendations/warning message for the execution of dauvergne protocol with 1 field is incomplete.
  • Big bug fix for the relax installation path determination. This is to fix bug #22037, the failure to load graphics in the GUI due to the relax installation path not being set up correctly. The problem is that the status module was looking for the compat.py file to determine where the base directory is, but this file has been moved into the lib/ package. Now the dep_check.py file is being searched for.
  • Fixed the description of the N-state model in the pipe.create user function. This has nothing to do with domain motions - it is the treatment of ensembles of structures.
  • Fix for the axis labels in the rdc.corr_plot user function when T data is converted to D.
  • Fix for bug #22039, the printing out of Dpar twice by the diffusion_tensor.display user function. This is reported at https://gna.org/bugs/?22039. The solution is given in the original bug report.
  • Fix for bug #22041, the PDB atom serial number error from the structure.write_pdb user function. This was reported at https://gna.org/bugs/?22041. The problem is that the 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 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.


Links

For reference, the following links are also part of the announcement for this release:


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: 10.1016/j.jmr.2014.02.023).

<HarvardReferences />


See also

relax release descriptions