Changes

Jump to navigation Jump to search

Relax 3.3.0

77 bytes added, 06:57, 8 September 2014
Used <sup> for exponents.
* Modified unit tests, so kex is sent to target function as float instead of array. [https://gna.org/task/?7807 Task #7807]: Speed-up of dispersion models for clustered analysis.
* Important fix for replacing values if eta_pos > 700 is violated. This fixes system test: Relax_disp.test_sod1wt_t25_to_cr72, which failed after making kex to a numpy float. The trick is to make a numpy mask which stores the position where to replace the values. Then replace the values just before last return. This makes sure, that not all values are changed. [https://gna.org/task/?7807 Task #7807]: Speed-up of dispersion models for clustered analysis.
* Increased the kex speed to 1e7 1e<sup>7</sup> in clustered unit tests cases. This is to demonstrate where there will be no excange. [https://gna.org/task/?7807 Task #7807]: Speed-up of dispersion models for clustered analysis.
* Added a multi-dimensional numpy array &chi;<sup>2</sup> value calculation function. [https://gna.org/task/?7807 Task #7807]: Speed-up of dispersion models for clustered analysis.
* Called the newly created &chi;<sup>2</sup> function to calculate for multi dimensional numpy arrays. [https://gna.org/task/?7807 Task #7807]: Speed-up of dispersion models for clustered analysis.
* Added a check in lib/dispersion/ns_r1hro_2site.py, to see if the newly created multidimensional ns matrix of rank NE][NS][NM][NO][ND][6][6], is equal to the previous [6][6] matrix. It is. [https://gna.org/task/?7807 Task #7807]: Speed-up of dispersion models for clustered analysis.
* Added the relax_time to collection of rr1rho_3d_rankN matrix collection. This is to pre-multiply all elements with the time. [https://gna.org/task/?7807 Task #7807]: Speed-up of dispersion models for clustered analysis.
* Added a check, that the pre- relax_time multiplied multidimensional array, equal the previous. It does, to the sum of 1.0e<sup>-13</sup>. [https://gna.org/task/?7807 Task #7807]: Speed-up of dispersion models for clustered analysis.
* Made the function use the new multidimensional R_mat matrix. System test: test_tp02_data_to_ns_r1rho_2site still passes. [https://gna.org/task/?7807 Task #7807]: Speed-up of dispersion models for clustered analysis.
* Fix to the matrix_exponential_rankN, to return the exact exponential for any higher dimensional square matrix of shape [NE][NS][NM][NO][ND][X][X]. The fix was to the eye(X), to make the shape the same as the input shape. [https://gna.org/task/?7807 Task #7807]: Speed-up of dispersion models for clustered analysis.
* Modified super profiling script, to allow input to script, where alternative version of relax is positioned. Collected the variables in a list of lists, for better overview. Added a print out comment to IT99, to remember the bug. [https://gna.org/task/?7807 Task #7807]: Speed-up of dispersion models for clustered analysis.
* Added comment field to super profiling script. [https://gna.org/task/?7807 Task #7807]: Speed-up of dispersion models for clustered analysis.
* Math domain fix for [[NS CPMG 2-site expanded]]. This is when t108 or t112 is zero, in the multidimensional array, a division error occurs. The elements are first set to 1.0, to allow for computation. Then elements are later replaced with 1e1001e<sup>100</sup>. Lastly, if the elements are not part of the "True" dispersion point structure, they are cleaned out. [https://gna.org/task/?7807 Task #7807]: Speed-up of dispersion models for clustered analysis.
* Precision lowering of system test, test_korzhnev_2005_15n_sq_data and test_korzhnev_2005_1h_sq_data. The system tests does not fail on Linux 64-bit system, but only on Mac 32-bit system. This is due to floating error deviations. [https://gna.org/task/?7807 Task #7807]: Speed-up of dispersion models for clustered analysis.
* Added log files for super profiling against tags 3.2.1 and 3.2.2. [https://gna.org/task/?7807 Task #7807]: Speed-up of dispersion models for clustered analysis.
* Added the system information printout to the dispersion model profiling master script output. This is for the log files comparing one version of relax to the previous version.
* Added profiling script for model [[MMQ CR72]], [https://gna.org/task/?7807 Task #7807]: Speed-up of dispersion models for clustered analysis.
* Fix for the replacement value for invalid values in model [[MMQ CR72]]. The value was set to use R<sub>2</sub><sup>0</sup>, but should instead be 1e1001e<sup>100</sup>. [https://gna.org/task/?7807 Task #7807]: Speed-up of dispersion models for clustered analysis.
* Copied profiling script from [[MMQ CR72]], to [[NS MMQ 2-site]] and [[NS MMQ 3-site|3-site]].
* Copied profiling script to [[NS MMQ 3-site linear]].
* Modified nesting function, to pull list of possible models from dictionary, and check if these models are available in the completed models.
* Added initial Python script, to help print each model and its corresponding nested models. It can be executed by: relax test_suite/shared_data/dispersion/print_model_info/print_model_info.py.
* Added a relaxation dispersion example to show how certain literature statements are just utter crap. This follows from http://thread.gmane.org/gmane.science.nmr.relax.scm/22774/focus=6693, and the change http://thread.gmane.org/gmane.science.nmr.relax.scm/22774 which implement such dangerous literature conjectures. To see how a real minimum is excluded from the optimisation space, here for residue :2, execute the R1rho_analysis.py script in relax. This is synthetic data generated with kex = 1e5 1e<sup>5</sup> assuming the model [[TP02]]. For the case of residue :2, this still produces an optimisable minimum in the space and dispersion curves. However the change blocks optimisation to the minimum.
* Added a function to determine how to nest/copy the parameters, when nesting from another model. It takes the list of parameters from the current model, and the list of parameters available in the nested model, and return a dictionary of parameter conversion for the current model params.
* Added unit test for the new function which determine how parameters are copied for a nested model parameters.
* Set the average value of R1 to 2.0 instead of 5.0. This is "normally" a better guess for R1.
* Implemented the function, which translates how parameters are copied from a nested model in the auto_analyses for relax_disp. This makes it possible to test the translating code, and makes logic clearer in the auto_analyses.
* Modified the r1rho_off_res_tp02_high_kex dispersion test data. The kex value is now set to 2e52e<sup>5</sup>.
* Removed the 'DPL94 R1 fit' model nesting from the table in the dispersion chapter of the manual. This was identified using the dispersion test suite data script print_model_info/print_model_info.py (http://thread.gmane.org/gmane.science.nmr.relax.scm/22823).
* Added to system test Relax_disp.test_r1rho_kjaergaard_missing_r1 to check, that values are not None when writing .out files. This is related to: https://gna.org/support/?3121 sr #3121: Support request for replacing space in header files for the value.write functions. The fix for this bug, destroyed getting the values.
* Updated the minfx version numbers in the release checklist document. The version is now [https://gna.org/forum/forum.php?forum_id=2475 1.0.10], which has not been released yet but will contain the implementation of the log-barrier constraint algorithm gradient and Hessian.
* Fix for the minfx version checking logic in the dep_check module. Now newer versions of minfx will be handled.
* Fixes for the Relax_disp.test_estimate_r2eff_err system test. The kex parameter value checks have all been scaled by 1e<sup>-5 </sup> to allow for a meaningful floating point number comparison. The number of significant figures have also been scaled. This allows the test to now pass on one 64-bit GNU/Linux system.
* Another fix for the minfx version checking in the dep_check module. The version_comparison() function has been created to perform a proper version number comparison by stripping trailing zeros, converting the two version numbers to lists of int and comparing the lists using the Python cmp() function. This will return -1 when the version number is too low, 0 when the versions are equal, and 1 when the version is higher than the minimum.
* Added a button for the spectrum.error_analysis user function to the spectra list GUI element. This is placed after the 'Add' and 'Delete' buttons. The functionality could be improved by presetting the spectrum ID argument to anything the user has selected in the spectrum list.
Trusted, Bureaucrats
4,228

edits

Navigation menu