* Created a file selection wildcard for use in the GUI for selecting peak lists. This is used in the four user functions which read peak lists.
* Changed all *.* GUI file selection wildcards to *.
* Huge speedup for model [[CR72]]. [https://gna.org/task/?7793 Task #7793] Speedup of dispersion models. The system test Relax_disp.test_cpmg_synthetic_cr72_full_noise_cluster changes from 7 seconds to 4.5 seconds. This is won by not checking single values in the R<sub>2eff</sub> array for math domain errors, but calculating all steps, and in one single round check for finite values. If just one non-finite value is found, the whole array is returned with a large penalty of 1e1001e<sup>100</sup>. This makes all calculations be the fastest numpy array way.
* Fix for system test test_cpmg_synthetic_dx_map_points. [https://gna.org/task/?7793 Task #7793] Speedup of dispersion models.
* Critical fixes for system test Relax_disp.test_hansen_cpmg_data_missing_auto_analysis. [https://gna.org/task/?7793 Task #7793] Speedup of dispersion models. It is suspected that when relax have touched boundary values which made math domain errors, the error catching have created local minima or interfered with the simplex search algorithm.
* Speedup of model [[TSMFK01]]. [https://gna.org/task/?7793 Task #7793] Speedup of dispersion models. This is won by not checking single values in the R<sub>2eff</sub> array for math domain errors, but calculating all steps, and in one single round check for finite values. If just one non-finite value is found, the whole array is returned with a large penalty of 1e1001e<sup>100</sup>. This makes all calculations be the fastest numpy array way.* Huge speedup of model [[B14]]. [https://gna.org/task/?7793 Task #7793] Speedup of dispersion models. Time test for system tests: test_baldwin_synthetic 2.626s -> 1.990s, test_baldwin_synthetic_full 18.326s -> 13.742s. This is won by not checking single values in the R<sub>2eff</sub> array for math domain errors, but calculating all steps, and in one single round check for finite values. If just one non-finite value is found, the whole array is returned with a large penalty of 1e1001e<sup>100</sup>. This makes all calculations be the fastest numpy array way.* Speedup of model [[TP02]]. [https://gna.org/task/?7793 Task #7793] Speedup of dispersion models. The change for running system test is: test_curve_type_r1rho_fixed_time 0.057s -> 0.049s, test_tp02_data_to_ns_r1rho_2site 10.539s -> 10.456s, test_tp02_data_to_tp02 8.608s -> 5.727s. This is won by not checking single values in the R<sub>1ρ</sub> array for math domain errors, but calculating all steps, and in one single round check for finite values. If just one non-finite value is found, the whole array is returned with a large penalty of 1e1001e<sup>100</sup>. This makes all calculations be the fastest numpy array way.* Huge speedup for model [[TAP03]]. [https://gna.org/task/?7793 Task #7793] Speedup of dispersion models. The change for running system test is: test_tp02_data_to_tap03 13.869s -> 7.263s. This is won by not checking single values in the R<sub>1ρ</sub> array for math domain errors, but calculating all steps, and in one single round check for finite values. If just one non-finite value is found, the whole array is returned with a large penalty of 1e1001e<sup>100</sup>. This makes all calculations be the fastest numpy array way.
* Speedup of model [[MP05]]. [https://gna.org/task/?7793 Task #7793] Speedup of dispersion models. The change in system test is: test_tp02_data_to_mp05 10.750s -> 6.644s.
* Speedup of model [[MMQ CR72]]. [https://gna.org/task/?7793 Task #7793] Speedup of dispersion models. Change in system test: test_sprangers_data_to_mmq_CR72 9.892s -> 4.121s.
* Unit test _lib/_dispersion/test_b14.py copied to _lib/_dispersion/test_CR72.py. They are both of CPMG type, and can be re-used.
* Copied unit test _lib/_dispersion/* to be reused for other models.
* Added 8 unit tests demonstrating edge case 'no R<sub>ex</sub>' failures of the model [[CR72]]. This follows from the ideas in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5858. This is related to [https://gna.org/task/?7793 task #7793] Speedup of dispersion models. This is to implement catching of math domain errors, before they occur. These tests cover all parameter value combinations which result in no exchange: δω = 0.0; p<sub>A</sub> = 1.0; k<sub>ex</sub> = 0.0; δω = 0.0 and p<sub>A</sub> = 1.0; δω = 0.0 and k<sub>ex</sub> = 0.0; p<sub>A</sub> = 1.0 and k<sub>ex</sub> = 0.0; δω = 0.0, p<sub>A</sub> = 1.0, and k<sub>ex</sub> = 0.0; k<sub>ex</sub> = 1e51e<sup>5</sup>.* Added the 8th unit tests demonstrating edge case 'no R<sub>ex</sub>' failures of the model [[B14]]. This follows from the ideas in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5858. This is related to [https://gna.org/task/?7793 task #7793] Speedup of dispersion models. This is to implement catching of math domain errors, before they occur. These tests cover all parameter value combinations which result in no exchange: δω = 0.0; p<sub>A</sub> = 1.0; k<sub>ex</sub> = 0.0; δω = 0.0 and p<sub>A</sub> = 1.0; δω = 0.0 and k<sub>ex</sub> = 0.0; p<sub>A</sub> = 1.0 and k<sub>ex</sub> = 0.0; δω = 0.0, p<sub>A</sub> = 1.0, and k<sub>ex</sub> = 0.0; k<sub>ex</sub> = 1e51e<sup>5</sup>.* Added the 8th unit tests demonstrating edge case 'no R<sub>ex</sub>' failures of the model [[LM63]]. This follows from the ideas in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5858. This is related to [https://gna.org/task/?7793 task #7793] Speedup of dispersion models. This is to implement catching of math domain errors, before they occur. These tests cover all parameter value combinations which result in no exchange: δω = 0.0; p<sub>A</sub> = 1.0; k<sub>ex</sub> = 0.0; δω = 0.0 and p<sub>A</sub> = 1.0; δω = 0.0 and k<sub>ex</sub> = 0.0; p<sub>A</sub> = 1.0 and k<sub>ex</sub> = 0.0; δω = 0.0, p<sub>A</sub> = 1.0, and k<sub>ex</sub> = 0.0; k<sub>ex</sub> = 1e201e<sup>20</sup>.
* Small fix for 8 unit tests demonstrating edge case 'no R<sub>ex</sub>' failures of the model 'ns cpmg_2site_expanded'. The comparison of R<sub>2eff</sub> is now divided into a special case for k<sub>ex</sub> having large values.
* Deleted unit test case for lm63 3site.
* Added 8 unit tests demonstrating edge case 'no R<sub>ex</sub>' failures of the model [[M61]]. This follows from the ideas in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5858. This is related to [https://gna.org/task/?7793 task #7793] Speedup of dispersion models. This is to implement catching of math domain errors, before they occur. These tests cover all parameter value combinations which result in no exchange: δω = 0.0; p<sub>A</sub> = 1.0; k<sub>ex</sub> = 0.0; δω = 0.0 and p<sub>A</sub> = 1.0; δω = 0.0 and k<sub>ex</sub> = 0.0; p<sub>A</sub> = 1.0 and k<sub>ex</sub> = 0.0; δω = 0.0, p<sub>A</sub> = 1.0, and k<sub>ex</sub> = 0.0; k<sub>ex</sub> = 1e201e<sup>20</sup>.
* Added the 8th unit tests demonstrating edge case 'no R<sub>ex</sub>' failures of the model [[DPL94]]. This follows from the ideas in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5858. This is related to [https://gna.org/task/?7793 task #7793] Speedup of dispersion models. This is to implement catching of math domain errors, before they occur. These tests cover all parameter value combinations which result in no exchange:
* Added 8 unit tests demonstrating edge case 'no R<sub>ex</sub>' failures of the model [[M61b]]. This follows from the ideas in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5858. This is related to [https://gna.org/task/?7793 task #7793] Speedup of dispersion models. This is to implement catching of math domain errors, before they occur. These tests cover all parameter value combinations which result in no exchange: δω = 0.0; p<sub>A</sub> = 1.0; k<sub>ex</sub> = 0.0; δω = 0.0 and p<sub>A</sub> = 1.0; δω = 0.0 and k<sub>ex</sub> = 0.0; p<sub>A</sub> = 1.0 and k<sub>ex</sub> = 0.0; δω = 0.0, p<sub>A</sub> = 1.0, and k<sub>ex</sub> = 0.0; k<sub>ex</sub> = 1e201e<sup>20</sup>.
* Math-domain catching for model [[M61b]]. [https://gna.org/task/?7793 Task #7793] Speedup of dispersion models. This is to implement catching of math domain errors, before they occur. These can be found via the --numpy-raise function to the system tests. To make the code look clean, the class object "back_calc" is no longer being updated per time point, but is updated in the relax_disp target function in one go.
* Modified script to be able to run system test Relax_disp.xxx_test_m61b_data_to_m61b.
* Added 8 unit tests demonstrating edge case 'no R<sub>ex</sub>' failures of the model [[IT99]]. This follows from the ideas in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5858. This is related to [https://gna.org/task/?7793 task #7793] Speedup of dispersion models. This is to implement catching of math domain errors, before they occur. These tests cover all parameter value combinations which result in no exchange: δω = 0.0; p<sub>A</sub> = 1.0; k<sub>ex</sub> = 0.0; δω = 0.0 and p<sub>A</sub> = 1.0; δω = 0.0 and k<sub>ex</sub> = 0.0; p<sub>A</sub> = 1.0 and k<sub>ex</sub> = 0.0; δω = 0.0, p<sub>A</sub> = 1.0, and k<sub>ex</sub> = 0.0; k<sub>ex</sub> = 1e191e<sup>19</sup>.* Added 9 unit tests demonstrating edge case 'no R<sub>ex</sub>' failures of the model [[MMQ CR72]]. This follows from the ideas in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5858. This is related to [https://gna.org/task/?7793 task #7793] Speedup of dispersion models. This is to implement catching of math domain errors, before they occur. These tests cover all parameter value combinations which result in no exchange: δω = 0.0; p<sub>A</sub> = 1.0; k<sub>ex</sub> = 0.0; δω = 0.0 and p<sub>A</sub> = 1.0; δω = 0.0 and k<sub>ex</sub> = 0.0; p<sub>A</sub> = 1.0 and k<sub>ex</sub> = 0.0; δω = 0.0, p<sub>A</sub> = 1.0, and k<sub>ex</sub> = 0.0; k<sub>ex</sub> = 1e51e<sup>5</sup>; δωH = 0.0.* Added 8 unit tests demonstrating edge case 'no R<sub>ex</sub>' failures of the model [[MP05]]. This follows from the ideas in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5858. This is related to [https://gna.org/task/?7793 task #7793] Speedup of dispersion models. This is to implement catching of math domain errors, before they occur. These tests cover all parameter value combinations which result in no exchange: δω = 0.0; p<sub>A</sub> = 1.0; k<sub>ex</sub> = 0.0; δω = 0.0 and p<sub>A</sub> = 1.0; δω = 0.0 and k<sub>ex</sub> = 0.0; p<sub>A</sub> = 1.0 and k<sub>ex</sub> = 0.0; δω = 0.0, p<sub>A</sub> = 1.0, and k<sub>ex</sub> = 0.0; k<sub>ex</sub> = 1e201e<sup>20</sup>.* Added 8 unit tests demonstrating edge case 'no R<sub>ex</sub>' failures of the model [[TAP03]]. This follows from the ideas in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5858. This is related to [https://gna.org/task/?7793 task #7793] Speedup of dispersion models. This is to implement catching of math domain errors, before they occur. These tests cover all parameter value combinations which result in no exchange: δω = 0.0; p<sub>A</sub> = 1.0; k<sub>ex</sub> = 0.0; δω = 0.0 and p<sub>A</sub> = 1.0; δω = 0.0 and k<sub>ex</sub> = 0.0; p<sub>A</sub> = 1.0 and k<sub>ex</sub> = 0.0; δω = 0.0, p<sub>A</sub> = 1.0, and k<sub>ex</sub> = 0.0; k<sub>ex</sub> = 1e201e<sup>20</sup>.* Added 8 unit tests demonstrating edge case 'no R<sub>ex</sub>' failures of the model [[TP02]]. This follows from the ideas in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5858. This is related to [https://gna.org/task/?7793 task #7793] Speedup of dispersion models. This is to implement catching of math domain errors, before they occur. These tests cover all parameter value combinations which result in no exchange: δω = 0.0; p<sub>A</sub> = 1.0; k<sub>ex</sub> = 0.0; δω = 0.0 and p<sub>A</sub> = 1.0; δω = 0.0 and k<sub>ex</sub> = 0.0; p<sub>A</sub> = 1.0 and k<sub>ex</sub> = 0.0; δω = 0.0, p<sub>A</sub> = 1.0, and k<sub>ex</sub> = 0.0; k<sub>ex</sub> = 1e201e<sup>20</sup>.
* Added 7 unit tests demonstrating edge case 'no R<sub>ex</sub>' failures of the model [[TSMFK01]]. This follows from the ideas in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5858. This is related to [https://gna.org/task/?7793 task #7793] Speedup of dispersion models. This is to implement catching of math domain errors, before they occur. These tests cover all parameter value combinations which result in no exchange: δω = 0.0; p<sub>A</sub> = 1.0; k<sub>ex</sub> = 0.0; δω = 0.0 and p<sub>A</sub> = 1.0; δω = 0.0 and k<sub>ex</sub> = 0.0; p<sub>A</sub> = 1.0 and k<sub>ex</sub> = 0.0; δω = 0.0, p<sub>A</sub> = 1.0, and k<sub>ex</sub> = 0.0.
* Copied unit test test_b14.py to test_ns_cpmg_2site_3d.py.
* Added 8 unit tests demonstrating edge case 'no R<sub>ex</sub>' failures of the model [[NS CPMG 2-site 3D]]. This follows from the ideas in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5858. This is related to [https://gna.org/task/?7793 task #7793] Speedup of dispersion models. This is to implement catching of math domain errors, before they occur. These tests cover all parameter value combinations which result in no exchange: δω = 0.0; p<sub>A</sub> = 1.0; k<sub>ex</sub> = 0.0; δω = 0.0 and p<sub>A</sub> = 1.0; δω = 0.0 and k<sub>ex</sub> = 0.0; p<sub>A</sub> = 1.0 and k<sub>ex</sub> = 0.0; δω = 0.0, p<sub>A</sub> = 1.0, and k<sub>ex</sub> = 0.0; k<sub>ex</sub> = 1e71e<sup>7</sup>.* Modified unit tests demonstrating edge cases 'no R<sub>ex</sub>' failures of the model [[TP02]]. The catching of errors for off-resonance R<sub>1ρ</sub> models was implemented wrong. This follows from the ideas in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5858. This is related to [https://gna.org/task/?7793 task #7793] Speedup of dispersion models. This was pointed out in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5938. This is to implement catching of math domain errors, before they occur. These tests cover all parameter value combinations which result in no exchange: δω = 0.0; p<sub>A</sub> = 1.0; k<sub>ex</sub> = 0.0; δω = 0.0 and p<sub>A</sub> = 1.0; δω = 0.0 and k<sub>ex</sub> = 0.0; p<sub>A</sub> = 1.0 and k<sub>ex</sub> = 0.0; δω = 0.0, p<sub>A</sub> = 1.0, and k<sub>ex</sub> = 0.0; k<sub>ex</sub> = 1e51e<sup>5</sup>.
* Critical fix for the math domain catching of model [[TP02]]. The catching of errors for off-resonance R<sub>1ρ</sub> models was implemented wrong. This was pointed out in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5938.
* Modified unit tests demonstrating edge cases 'no R<sub>ex</sub>' failures of the model [[DPL94]]. This was pointed out in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5938.
* Modified unit test to have standard population of p<sub>A</sub> = 0.95, and a correctly calculation of δω in ppm to rad/s. This is related to [https://gna.org/task/?7793 task #7793] Speedup of dispersion models.
* Small fix in parameter calculation in unit test _dispersion/test_ns_cpmg_2site_expanded.
* Increased max k<sub>ex</sub> to value 1e18 1e<sup>18</sup> for unit test of lin/ns_cpmg_2site_expanded.py.* Increased max k<sub>ex</sub> to value 1e20 1e<sup>20</sup> for unit test of lib/ns_cpmg_2site_3d.py.
* Fix for looking for negative values, when all values where converted to positive in matrix in ns_cpmg_2site_3d.py. This is to implement catching of math domain errors, before they occur. This follows from the ideas in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5858. This is related to [https://gna.org/task/?7793 task #7793] Speedup of dispersion models.
* Removed nested looping of returning back_calc in lib/ns_cpmg_2site_3d.
* Removed the 8th unit test for model [[NS CPMG 2-site 3D]]. This was the catching of errors when k<sub>ex</sub> = 1e201e<sup>20</sup>. The model cannot handle this situations, and we need to let it fail.
* Removed the 8th unit test for model [[NS CPMG 2-site expanded]]. This was the catching of errors when k<sub>ex</sub> has high values. The model cannot handle this situations, and we need to let it fail.
* Fix for differences in system tests which are different from trunk. These were found with the command: diff -bur disp_speed/test_suite/ relax_trunk/test_suite/ | grep -v "Binary files" > diff.txt.
* Critical fix for the math domain catching of model [[LM63]]. This was discovered with the added 7 unit tests demonstrating edge case 'no R<sub>ex</sub>' failures. This follows from the ideas in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5858. This is related to [https://gna.org/task/?7793 task #7793] Speedup of dispersion models. This is to implement catching of math domain errors, before they occur.
* Critical fix for the math domain catching of model [[B14]]. This was discovered with the added 7 unit tests demonstrating edge case 'no R<sub>ex</sub>' failures. This follows from the ideas in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5858. This is related to [https://gna.org/task/?7793 task #7793] Speedup of dispersion models. This is to implement catching of math domain errors, before they occur.
* Critical fix for the math domain catching of model [[CR72]]. This was discovered with the added 8 unit tests demonstrating edge case 'no R<sub>ex</sub>' failures. This follows from the ideas in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5858. This is related to [https://gna.org/task/?7793 task #7793] Speedup of dispersion models. This is to implement catching of math domain errors, before they occur. When k<sub>ex</sub> is large, e.g. k<sub>ex</sub> = 1e51e<sup>5</sup>, the values of etapos = eta_scale * sqrt(Psi + sqrt_psi2_zeta2) / cpmg_frqs will exceed possible numerical representation. The catching of these occurrences needed to be re-written.* Critical fix for the math domain catching of model [[B14]]. This was discovered with the added 8 unit tests demonstrating edge case 'no R<sub>ex</sub>' failures. This follows from the ideas in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5858. This is related to [https://gna.org/task/?7793 task #7793] Speedup of dispersion models. This is to implement catching of math domain errors, before they occur. When k<sub>ex</sub> is large, e.g. k<sub>ex</sub> = 1e51e<sup>5</sup>, "nan" values where produced, which were replaced with 1e1001e<sup>100</sup>. The catching of these occurrences needed to be re-written.* Critical fix for the math domain catching of model [[CR72]]. Removed the test for k<sub>ex</sub> ≥ 1.e51e<sup>5</sup>. This catching should rather be performed on the math functions instead.* Critical fix for the math domain catching of model [[B14]]. Removed the test for k<sub>ex</sub> ≥ 1.e51e<sup>5</sup>. This catching should rather be performed on the math functions instead. In this case, it is the catching of sinh(), not evaluating values above 710.
* Critical fix for the math domain catching of model [[MMQ CR72]]. This was discovered with the added 9 unit tests demonstrating edge case 'no R<sub>ex</sub>' failures. This follows from the ideas in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5858. This is related to [https://gna.org/task/?7793 task #7793] Speedup of dispersion models. This is to implement catching of math domain errors, before they occur.
* Critical fix for the math domain catching of model [[IT99]]. This was discovered with the added 8 unit tests demonstrating edge case 'no R<sub>ex</sub>' failures. This follows from the ideas in the post http://article.gmane.org/gmane.science.nmr.relax.devel/5858. This is related to [https://gna.org/task/?7793 task #7793] Speedup of dispersion models. This is to implement catching of math domain errors, before they occur. The catching of these occurrences needed to be re-written.