relax 3.1.7
Description
This is a minor feature and bugfix release which includes improvements to the relaxation dispersion chapter of the manual and the addition of new infrastructure for R1ρ data handling in the dispersion analysis. More details are given below.
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.1.7
(17 March 2014, from /trunk)
http://svn.gna.org/svn/relax/tags/3.1.7
Features
- Large amounts of new infrastructure for the R1ρ relaxation dispersion analysis type.
- More hardware information printed out when using the '--info' command line option.
- The user function relax_disp.write_disp_curves now produces text files of R2eff verses the rotating frame tilt angle θ.
- Small improvements for the relaxation dispersion GUI tutorial and citation chapter of the relax manual.
Changes
- Added text file for the articles reference values from the global fit in Relax_disp.test_r1rho_kjaergaard. Regarding bug #21344, handling of in sparse acquired R1ρ dataset with missing combinations of time and spin-lock field strengths. This is from optimisation of the Kjaergaard et al., 2013 Off-resonance R1ρ relaxation dispersion experiments using the 'DPL' model. This uses the data from Kjaergaard's paper at DOI: http://dx.doi.org/10.1021/bi4001062.
- Replaced "_" with "-" in text file with global fit residues. Regarding bug #21344, handling of in sparse acquired R1ρ dataset with missing combinations of time and spin-lock field strengths.
- Sorted the reference values in residue order. Regarding bug #21344, handling of in sparse acquired R1ρ dataset with missing combinations of time and spin-lock field strengths.
- Added reference data and guess data for a global fit R1ρ analysis. Regarding bug #21344, handling of in sparse acquired R1ρ dataset with missing combinations of time and spin-lock field strengths. This system test is setup comparison with paper values, and will be turned off later to prevent long running time.
- Redid dict() keys for unit test of find_intensity_keys(), to pass on Python 3.2 and 3.3. Work in progress for bug #21344, handling of in sparse acquired R1ρ dataset with missing combinations of time and spin-lock field strengths. This is a response to message: http://thread.gmane.org/gmane.science.nmr.relax.devel/5132.
- Added ":" to dictionary keys to match return from spin_loop in system test Relax_disp.test_r1rho_kjaergaard. Regarding bug #21344, handling of in sparse acquired R1ρ dataset with missing combinations of time and spin-lock field strengths.
- Removed model No Rex to be tested in system test Relax_disp.test_r1rho_kjaergaard. Regarding bug #21344, handling of in sparse acquired R1ρ dataset with missing combinations of time and spin-lock field strengths.
- Aliased spins in system test Relax_disp.test_r1rho_kjaergaard. Regarding bug #21344, handling of in sparse acquired R1ρ dataset with missing combinations of time and spin-lock field strengths.
- Set opt_func_tol = 1e-15 and opt_max_iterations = 100000 to run system test Relax_disp.test_r1rho_kjaergaard faster. Regarding bug #21344, handling of in sparse acquired R1ρ dataset with missing combinations of time and spin-lock field strengths.
- Re-ordered code lines in system test Relax_disp.test_r1rho_kjaergaard. Regarding bug #21344, handling of in sparse acquired R1ρ dataset with missing combinations of time and spin-lock field strengths.
- Assigned guess values for system test Relax_disp.test_r1rho_kjaergaard. Regarding bug #21344, handling of in sparse acquired R1ρ dataset with missing combinations of time and spin-lock field strengths.
- Added a section at the start of the dispersion GUI analysis tutorial about 'computation time'. This is for the dispersion chapter of the manual.
- Removed alias of spins in system test Relax_disp.test_r1rho_kjaergaard. Work in progress for bug #21344, handling of in sparse acquired R1ρ dataset with missing combinations of time and spin-lock field strengths.
- Added fitted R1 values from paper to system test Relax_disp.test_r1rho_kjaergaard. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff. This will be used to test the output of calculating Ωeff, as stated in http://article.gmane.org/gmane.science.nmr.relax.devel/5148.
- Added reading of R1 values in system test Relax_disp.test_r1rho_kjaergaard. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Added full manual steps of analysis for system test Relax_disp.test_r1rho_kjaergaard. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Modified the directory separator from "/" to os.sep in system test Relax_disp.test_r1rho_kjaergaard. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Commented out the commands for writing of text files and state files to speed up system test Relax_disp.test_r1rho_kjaergaard. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Added the testing of writing out θ values in system test Relax_disp.test_r1rho_kjaergaard. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Added the parameter "theta" to specific_analyses/relax_disp/api.py. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Modified parameter py_type to dict() for the θ value. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Added parameter "theta" do description tables. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Made an assertion that spin contains attribute "theta" in system test Relax_disp.test_r1rho_kjaergaard. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Added unit test for return_offset_data. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff. This is development according to thread http://thread.gmane.org/gmane.science.nmr.relax.devel/5157.
- Commented out the expectation of the attribute "theta" to exist in system test Relax_disp.test_r1rho_kjaergaard. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Imported return_param_key_from_data to be used in unit test return_offset_data. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- The relax information printout, from "relax -i" for example, now includes detailed CPU information. This uses operating system specific commands to obtain this information which is not available from the platform Python module.
- Removed the dependence on subprocess.check_output() as this is only for Python 2.7 and higher. This is for the relax information printout about the CPU info recently introduced.
- The RAM in the relax information printout is now displayed for Mac OS X. The 'sysctl' command is now being used to retrieve the RAM size and total memory, and the swap is calculated as the difference.
- Added the OMP relaxation rates and compressed PDB file to the repository. This is to allow users to have a full data set to perform a test model-free analysis with.
- Added a sample_script to generate θ values for R1ρ data. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff. The script is explained at the wiki: http://wiki.nmr-relax.com/Sample_scripts.relax_disp.return_offset_data.
- Created a new citation for relax which concatenates both the d'Auvergne and Gooley 2008 papers. This is to show to those who are unaware of back-to-back paper concatenation rules how to cite both papers using one reference, saving a lot of space.
- Added lib.rotating_frame module containing functions related to rotating frame NMR calculations. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Added rotating_frame to lib.__init__.py. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Added unit test file _lib.test_rotating_frame.py to __init__.py. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Added unit test file _lib.test_rotating_frame(). Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff. These unit test will be used to calculate and return dictionaries of tilt_angles, Delta_omega and omega_eff. Some of the R1ρ data mentioned in: http://www.nmr-relax.com/manual/Dispersion_model_summary.html.
- Added link to manual for calculating NMR parameters in the doctring for lib.rotating_frame.py. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Renamed function "calc_tilt_angle" to "calc_rotating_frame_params" in lib.rotating_frame. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff. This is to reflect, that the function should return and store spin values of both tilt_angles, Delta_omega and omega_eff.
- Replaced with calc_rotating_frame_params in unit test, to reflect function renaming. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Improved docstring in lib.rotating_frame. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Rearranged the citations in the citations chapter. The references for relax are now far more prominent.
- Implemented the return of Delta_omega = "average resonance offset in the rotating frame" in specific_analysis.relax_disp.return_offset_data. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Fixed unpacking of return from function calls of return_offset_data. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Made specific_analysis.relax_disp.return_offset_data return "w_eff" - the effective field in rotating frame in rad/s. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Fixed unpacking of return from function calls of return_offset_data, since ωeff is now also returned. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Moved calc_rotating_frame_params() to specific_analysis.relax_disp.disp_data. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff. This is in a response to message: http://www.mail-archive.com/relax-devel@gna.org/msg05080.html.
- Started unit test for _specific_analysis._relax_disp.test_disp_data.test_calc_rotating_frame_params. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff. This is in response to message: http://www.mail-archive.com/relax-devel@gna.org/msg05080.html.
- Removed lib.test_rotating_frame.py and the associated unit test. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff. This is in response to http://www.mail-archive.com/relax-devel@gna.org/msg05080.html.
- Made calc_rotating_frame_params take spin "The spin system specific data container" as input. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Modified calc_rotating_frame_params() to operate on the level of spin container and ID. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Modified unit test test_calc_rotating_frame_params to use spin container and ID in test. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Epydoc docstring fix for the Structure.test_bug_21522_master_record_atom_count system test. This is for the API documentation at http://www.nmr-relax.com/api/3.1/index.html.
- Epydoc docstring fix for the SetValue() method of the File input GUI element. This is for the API documentation at http://www.nmr-relax.com/api/3.1/index.html.
- Removed the test_suite/shared_data directory from the API documentation scanning. This is to avoid trying to import the frame order relax scripts which cannot be imported into Python.
- Added epydoc information about dimensions for w_e in function return_offset_data. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Added verbosity flag to calc_rotating_frame_params() to allow switching of print information. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Added unit test for use of value.write to write θ values calculated from calc_rotating_frame_params(). Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Extended unit test for use of value.write to write intensities file. This is to test that changing of the API function will retain its function. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Replaced API function in specific_analysis.relax_disp.api to calculate and return values for parameter θ when this is requested. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff. Implemented according to http://www.mail-archive.com/relax-devel@gna.org/msg05082.html.
- Extended API function in specific_analysis.relax_disp.api to calculate and return values for parameter θ when this is requested. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff. Implemented according to http://www.mail-archive.com/relax-devel@gna.org/msg05082.html.
- Variable renaming and closing of files in unit test test_value_write_calc_rotating_frame_params(). Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Extended unit test test_value_write_calc_rotating_frame_params() to also test writing of ωeff values. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Fixed typo and removed grace string for parameter description of θ. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Added parameter 'w_eff', the effective field in rotating frame calculation to dispersion API. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Added handling of calculating ωeff in dispersion API. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Added unit to parameter description of θ and ωeff. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Fix for field count and added check for R1ρ type in calc_rotating_frame_params(). Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Added grace string to parameter description of θ and ωeff. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Fixed code duplication in relax_disp API, for calculation of θ and ωeff. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Removed unused lines of code in unit test test_return_offset_data(). Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Moved unit test of value writing of calc_rotating_frame_params() into separate system tests. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Added system test Relax_disp.test_value_write_calc_rotating_frame_params_auto_analysis(). Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff. This is to test the auto_analysis value.write function to write θ and ωeff values for an R1ρ setup.
- Added writing of parameters θ and ωeff for an auto-analysis if model in MODEL_LIST_R1RHO_FULL. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Added return of None values for function calc_rotating_frame_params() if spin is not selected. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Extended system test Relax_disp.test_value_write_calc_rotating_frame_params_auto_analysis() to test the writing of θ values. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Hardcoded the writing of R2eff as function of the tilt angle θ, when using the user function relax_disp.write_disp_curves . Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff. θ values per spin will be written if the spin.model is in the list MODEL_LIST_R1RHO_FULL.
- Fix for return of None tuble in calc_rotating_frame_params(). Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Fix for correct use of assertNotEqual or assertEqual in Relax_disp system tests. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Hardcoded contents of writing of parameters θ and ωeff in system test Relax_disp.test_value_write_calc_rotating_frame_params_auto_analysis(). Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff. This is to better support testing of key ordering and different architectures, etc.
- Fixed code duplication in specific_analysis.relax_disp.disp_data.write_disp_curves(). Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Modified system test of hardcoded values of θ and ωeff to match precision to 14 digits. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Fix for handling the writing of theta.out and w_eff.out in relax_disp auto_analysis, when model is not of R1ρ type. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff. This was discovered using the system tests.
- Fix for calculating the θ angle describing the tilted rotating frame relative to the laboratory, when omega1 / Delta_omega is negative. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff. This follows discussion in: http://thread.gmane.org/gmane.science.nmr.relax.devel/5205.
- Modified unit and system test to reflect new calculation of rotating frame tilt angle θ. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff. This was discussed in thread: http://thread.gmane.org/gmane.science.nmr.relax.devel/5205.
- Added interpolation calculation of θ and ωeff, when dispersion points are interpolated. Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
- Added printout of Ω, the average resonance offset, in calc_rotating_frame_params(). Regarding sr #3124, Grace graphs production for R1ρ analysis with R2eff as function of Ωeff.
Bugfixes
Typo fix for text in the model-free GUI auto-analysis. The maximum iterations for the protocol was misspelled in the GUI. This was spotted by Hessam Nasrollah.
- Fix for one of the frame order system tests when using the Mac OS X application binary. The problem was that the 'shared_data' directory could not be found as it was not included in the test_suite package __all__ list.
- Fix for bug #21754, the failure of the grace.view user function on MS Windows in opening a file in qtgrace when the path includes spaces, as reported by Mengjun Xue (mengjun dott xue att mailbox dott tu-berlin dott de). The fix was to run the program with the file name in double quotes.
- Fix for bug #21763, the problem of the chi2 value not being visible in the parameter list of the grace.write and value.write user functions in the GUI. The problem was that when asking for the parameter name list, the minimisation parameters were not being asked for.
Links
For reference, the following links are also part of the announcement for this release:
Announcements
If you would like to receive announcements about new relax versions, please subscribe to the relax announcement mailing list. This list only receives ~10 emails per year. It is archived at the SourceForge archives and in The Mail Archive.