Changes

Jump to navigation Jump to search

Relax 3.3.0

No change in size, 13:56, 21 September 2014
Lots of user function link fixes.
* Renamed return functions, to reflect they are specific for xmgrace plotting. [https://gna.org/support/?3124 Sr #3124: Grace graphs production for R<sub>1&rho;</sub> analysis with R<sub>2eff</sub> as function of &Omega;<sub>eff</sub>]. [https://gna.org/support/?3138 Sr #3138: Interpolating &theta; through spin-lock offset &Omega;, rather than spin-lock field strength &omega;<sub>1</sub>].
* Extended relax_disp auto_analyses to plot special R<sub>1&rho;</sub> graphs. [https://gna.org/support/?3124 Sr #3124: Grace graphs production for R<sub>1&rho;</sub> analysis with R<sub>2eff</sub> as function of &Omega;<sub>eff</sub>]. [https://gna.org/support/?3138 Sr #3138: Interpolating &theta; through spin-lock offset &Omega;, rather than spin-lock field strength &omega;<sub>1</sub>].
* Modified front-end [user function http://www.nmr-relax.com/manual/relax_disp_plot_disp_curves.html user function relax_disp.plot_disp_curves] to send new arguments to back-end function. [https://gna.org/support/?3124 Sr #3124: Grace graphs production for R<sub>1&rho;</sub> analysis with R<sub>2eff</sub> as function of &Omega;<sub>eff</sub>]. [https://gna.org/support/?3138 Sr #3138: Interpolating &theta; through spin-lock offset &Omega;, rather than spin-lock field strength &omega;<sub>1</sub>].
* Added new Unicode symbols to be used by the GUI drop-down menu. [https://gna.org/support/?3124 Sr #3124: Grace graphs production for R<sub>1&rho;</sub> analysis with R<sub>2eff</sub> as function of &Omega;<sub>eff</sub>]. [https://gna.org/support/?3138 Sr #3138: Interpolating &theta; through spin-lock offset &Omega;, rather than spin-lock field strength &omega;<sub>1</sub>].
* Modified back-end of plot_disp_curves() to reflect changes to the front-end function. [https://gna.org/support/?3124 Sr #3124: Grace graphs production for R<sub>1&rho;</sub> analysis with R<sub>2eff</sub> as function of &Omega;<sub>eff</sub>]. [https://gna.org/support/?3138 Sr #3138: Interpolating &theta; through spin-lock offset &Omega;, rather than spin-lock field strength &omega;<sub>1</sub>].
* Added system test Relax_disp.test_kteilum_fmpoulsen_makke_check_graphs() to check all possible combinations of dispersion plotting. [https://gna.org/support/?3124 Sr #3124: Grace graphs production for R<sub>1&rho;</sub> analysis with R<sub>2eff</sub> as function of &Omega;<sub>eff</sub>]. [https://gna.org/support/?3138 Sr #3138: Interpolating &theta; through spin-lock offset &Omega;, rather than spin-lock field strength &omega;<sub>1</sub>].
* Fix for GUI text in MS Windows, since subscript <sub>1</sub> and Greek &theta; symbol is not working in this Unicode system. [https://gna.org/support/?3124 Sr #3124: Grace graphs production for R<sub>1&rho;</sub> analysis with R<sub>2eff</sub> as function of &Omega;<sub>eff</sub>]. [https://gna.org/support/?3138 Sr #3138: Interpolating &theta; through spin-lock offset &Omega;, rather than spin-lock field strength &omega;<sub>1</sub>].
* Fix for desc_short, in [user function http://www.nmr-relax.com/manual/relax_disp_plot_disp_curves.html user function relax_disp.plot_disp_curves]. The text "The " is preformed in the formatting. [https://gna.org/support/?3124 Sr #3124: Grace graphs production for R<sub>1&rho;</sub> analysis with R<sub>2eff</sub> as function of &Omega;<sub>eff</sub>]. [https://gna.org/support/?3138 Sr #3138: Interpolating &theta; through spin-lock offset &Omega;, rather than spin-lock field strength &omega;<sub>1</sub>].
* Fix for system test, after moving graphs to check against. [https://gna.org/support/?3124 Sr #3124: Grace graphs production for R<sub>1&rho;</sub> analysis with R<sub>2eff</sub> as function of &Omega;<sub>eff</sub>]. [https://gna.org/support/?3138 Sr #3138: Interpolating &theta; through spin-lock offset &Omega;, rather than spin-lock field strength &omega;<sub>1</sub>].
* Moved graph files up one level in system test. [https://gna.org/support/?3124 Sr #3124: Grace graphs production for R<sub>1&rho;</sub> analysis with R<sub>2eff</sub> as function of &Omega;<sub>eff</sub>]. [https://gna.org/support/?3138 Sr #3138: Interpolating &theta; through spin-lock offset &Omega;, rather than spin-lock field strength &omega;<sub>1</sub>].
* Added check function to plot_disp_curves, to check that CPMG exp types are not interpolated against offset, which is not implemented. [https://gna.org/support/?3124 Sr #3124: Grace graphs production for R<sub>1&rho;</sub> analysis with R<sub>2eff</sub> as function of &Omega;<sub>eff</sub>]. [https://gna.org/support/?3138 Sr #3138: Interpolating &theta; through spin-lock offset &Omega;, rather than spin-lock field strength &omega;<sub>1</sub>].
* Fix for forgotten "1" in lib text GUI. [https://gna.org/support/?3124 Sr #3124: Grace graphs production for R<sub>1&rho;</sub> analysis with R<sub>2eff</sub> as function of &Omega;<sub>eff</sub>]. [https://gna.org/support/?3138 Sr #3138: Interpolating &theta; through spin-lock offset &Omega;, rather than spin-lock field strength &omega;<sub>1</sub>].
* Improved description in GUI text for [user function http://www.nmr-relax.com/manual/relax_disp_plot_disp_curves.html user function relax_disp.plot_disp_curves]. The improved description now explains the new features. [https://gna.org/support/?3124 Sr #3124: Grace graphs production for R<sub>1&rho;</sub> analysis with R<sub>2eff</sub> as function of &Omega;<sub>eff</sub>]. [https://gna.org/support/?3138 Sr #3138: Interpolating &theta; through spin-lock offset &Omega;, rather than spin-lock field strength &omega;<sub>1</sub>].
* Extended graph labelling, file naming and return of data for multiple CPMG graphs types. [https://gna.org/support/?3124 Sr #3124: Grace graphs production for R<sub>1&rho;</sub> analysis with R<sub>2eff</sub> as function of &Omega;<sub>eff</sub>]. [https://gna.org/support/?3138 Sr #3138: Interpolating &theta; through spin-lock offset &Omega;, rather than spin-lock field strength &omega;<sub>1</sub>].
* Added system test Relax_disp.test_kteilum_fmpoulsen_makke_check_graphs to check all CPMG graph combinations of: y_axis_types = [Y_AXIS_R2_EFF, Y_AXIS_R2_R1RHO]; x_axis_types = [X_AXIS_DISP, X_AXIS_THETA, X_AXIS_W_EFF]; interpolate_types = [INTERPOLATE_DISP]. This is a total of 6 graphs. The graphs will in most cases be totally equal, since the &theta; angle is calculated to 90 degrees, and R<sub>1</sub> is returned as 0.0, then R<sub>2</sub>=(R<sub>1&rho;</sub> - R<sub>1</sub> cos<sup>2</sup>(&theta;)) / sin<sup>2</sup>(&theta;) = R<sub>1&rho;</sub> = R<sub>2eff</sub> for CPMG models. [https://gna.org/support/?3124 Sr #3124: Grace graphs production for R<sub>1&rho;</sub> analysis with R<sub>2eff</sub> as function of &Omega;<sub>eff</sub>]. [https://gna.org/support/?3138 Sr #3138: Interpolating &theta; through spin-lock offset &Omega;, rather than spin-lock field strength &omega;<sub>1</sub>].
* Reused the dependency check "scipy_module", since leastsq() has been part of Scipy since 2003.
* Moved target function for curve fitting with scipy into specific_analyses.relax_disp.estimate_r2eff. This will later include the backend specific_analyses.relax_disp.optimisation.estimate_r2eff() function and the code in the target_functions package. The code in target_functions.relax_disp_curve_fit is a lot more than just a target function, so it doesn't really belong in this package. This is also to isolate this experimental feature.
* Isolated all code related to [user function http://www.nmr-relax.com/manual/relax_disp_r2eff_estimate.html user function relax_disp.r2eff_estimate] into independent module file. All has been isolated to: specific_analyses.relax_disp.estimate_r2eff.
* Split function to minimise with scipy.optimize.leastsq out in estimate_r2eff module. This is to prepare for implementing with minfx.
* Implemented first try to minimise with minfx in estimate_r2eff() function. [https://gna.org/task/?7822 Task #7822: Implement user function to estimate R<sub>2eff</sub> and associated errors for exponential curve fitting].
* Clean up of the declarations in the target_functions.relax_fit C module. The Python list objects are now declared at the start of the functions, and then PyList_New() is called later on. This allows the code to compile on certain Windows systems.
* Removed the user function to estimate the R<sub>2eff</sub> values and errors with scipy.optimize.leastsq. With the newly implemented Jacobian and Hessian of the exponential decay function, the front-end to scipy.optimize.leastsq does not serve a purpose. This is because minfx is now as fast as scipy.optimize.leastsq, and can estimate the errors from the Jacobian to the exact same numbers as scipy.optimize.leastsq. In addition to that, the covariance can be calculated by QR decomposition. This adds additional feature for checking for a singular matrix. The back-end will still be kept in place for the coming tim, but could be removed later. [https://gna.org/task/?7822 Task #7822: Implement user function to estimate R<sub>2eff</sub> and associated errors for exponential curve fitting].
* Added front-end to the new [user function http://www.nmr-relax.com/manual/relax_disp_r2eff_err_estimate.html user function relax_disp.r2eff_err_estimate], which will estimate the R<sub>2eff</sub> errors from a pipe and spins with optimised values of R<sub>2eff</sub> and I<sub>0</sub>. The covariance matrix can be calculated from the optimised parameters, and the Jacobian. Big care should be taken not to directly trust these results, since the errors are quite different compared to the Monte Carlo simulations. This implementation, will reach the exact same error estimation as scipy.optimize.leastsq. But with much better control over the data, and insight into the calculations. [https://gna.org/task/?7822 Task #7822: Implement user function to estimate R<sub>2eff</sub> and associated errors for exponential curve fitting].
* Added method to automatically perform error analysis on peak heights. [https://gna.org/task/?7822 Task #7822: Implement user function to estimate R<sub>2eff</sub> and associated errors for exponential curve fitting].
* Modified system test Relax_disp.test_estimate_r2eff() to first do a grid search, then minimise and then estimate the errors for R<sub>2eff</sub> and I<sub>0</sub>. [https://gna.org/task/?7822 Task #7822: Implement user function to estimate R<sub>2eff</sub> and associated errors for exponential curve fitting].
Trusted, Bureaucrats
4,228

edits

Navigation menu