Open main menu

Changes

Relax 3.3.4

236 bytes added, 11:22, 16 October 2020
m
Switch to the {{gna link}}, {{gna task link}}, and {{gna task url}} templates to remove dead Gna! links.
{{lowercase title}}
{{infobox relax release| version = 3.3.4| prev = 3.3.3| next = 3.3.5| keywords = Relaxation curve-fitting, state file| type = Major feature and bugfix| date = 3 December 2014| manual = yes}} == Description ==
<section begin=description/>
<section end=description/>
== Download ==
<section begin=download/>
<section end=download/>
== CHANGES file ==
<section begin=metadata/>
<section end=metadata/>
=== Features ===
<section begin=features/>
<section end=features/>
=== Changes ===
<section begin=changes/>
* Updated all of the [http://www.nmr-relax.com/manual/] links in the [http://www.nmr-relax.com/api/3.3/lib.dispersion-module.html lib.dispersion package]. This is for all of the individual model pages in the HTML manual.
* Improved the description for the [http://www.nmr-relax.com/manual/relax_fit_select_model.html relax_fit.select_model user function].
* A small code rearrangement to create the [http://www.nmr-relax.com/api/3.3/target_functions.relax_fit_wrapper-module.html new target_functions.relax_fit_wrapper module]. This follows from the idea at [https://{{gna.org/task/?url|7415#comment6]|comment=6}}. The *func_wrapper() functions of the [http://www.nmr-relax.com/api/3.3/specific_analyses.relax_fit.optimisation-module.html specific_analyses.relax_fit.optimisation module] have been shifted out and converted to class methods to create the [http://www.nmr-relax.com/api/3.3/target_functions.relax_fit_wrapper-module.html target_functions.relax_fit_wrapper module]. This will be used to abstract away all of the C code, and will form the infrastructure to allow new exponential curves to be quickly supported. The modules of the [http://www.nmr-relax.com/api/3.3/specific_analyses.relax_fit-module.html specific_analyses.relax_fit] and [http://www.nmr-relax.com/api/3.3/specific_analyses.relax_disp-module.html specific_analyses.relax_disp] packages now import the [http://www.nmr-relax.com/api/3.3/target_functions.relax_fit_wrapper.Relax_fit_opt-class.html target_functions.relax_fit_wrapper.Relax_fit_opt target function class] and use that instead.
* Shifted the C code Jacobian functions into the new [http://www.nmr-relax.com/api/3.3/target_functions.relax_fit_wrapper-module.html target_functions.relax_fit_wrapper module]. This shifts all of the relaxation curve-fitting C code access into the [http://www.nmr-relax.com/api/3.3/target_functions.relax_fit_wrapper-module.html target_functions.relax_fit_wrapper module] so that the rest of relax does not need to handle the C code. This will allow for new models to be very easily supported, as they would all be set up in this target function module.
* Updated the formula in the description of the [http://www.nmr-relax.com/manual/relax_fit_select_model.html relax_fit.select_model user function].
* Modified the printouts from the [http://www.nmr-relax.com/manual/structure_write_pdb.html structure.write_pdb user function] if models are present. Instead of printing out 'MODEL', 'ATOM, HETATM, TER' and 'ENDMDL' for each model, the header 'MODEL records' is printed followed by a single '.' character for each model. For structures with many models, this results in a huge speed up of the user function which is strongly limited by how fast the terminal can display text.
* Added the synthetic saturation-recovery data in the form of Sparky peak lists to the repository. These files were created by Andras Boeszoermenyi. They are attached to [http://{{gna.org/task/?7415 task #link|7415] }} as the [http://{{gna link|url=gna.org/task/download.php?file_id=22989 |text=Relax_sym.tar.gz file]}}. They were created for the formula I<sub>0</sub>(1 - e<sup>−R<sub>1</sub>.t</sup>) where I<sub>0</sub> = 1000000000000000.00 and R<sub>1</sub> = 0.5. These files and the associated relax_sim.py script (which needs to be updated for the latest relax version) could form the basis of a basic system test. This system test could then be used to implement the saturation-recovery experiment equations in relax.
* Updated the [http://www.nmr-relax.com/api/3.3/target_functions-module.html target_functions package] __all__ list to include the relax_fit* modules.
* Modified the package __all__ list checking unit test to accept *.so C modules.
* Removal of an unused import in the relax_fit_zooming_grid.py system test script.
* Added a system test script for testing the saturation-recovery R<sub>1</sub> experiment. This was created by Andras Boeszoermenyi. The file was taken from the [https://{{gna link|url=gna.org/task/download.php?file_id=22997 |text=saturation_recovery.tar.gaz file] }} attached to [http://{{gna.org/task/?7415 task #link|7415]}}. The only difference with the original script is that the [http://www.nmr-relax.com/manual/grace_view.html grace.view user function] calls have been removed, as these cannot be used in a system test.
* Modified the relax_fit_saturation_recovery.py script to work as a system test. This is the script from Andras Boeszoermenyi. The change follows from the discussion of [http://thread.gmane.org/gmane.science.nmr.relax.devel/7308/focus=7369]. The status.install_path variable is now used to point to the location of the files. The relax data store ds.tmpdir variable is used for outputting all files. And commented out user functions have been deleted.
* Added a copyright notice for Andras Boeszoermenyi for the newly added saturation-recovery R<sub>1</sub> script. This change follows the discussion in the message [http://thread.gmane.org/gmane.science.nmr.relax.devel/7308/focus=7369].
* Big bug fix for the [http://www.nmr-relax.com/manual/error_analysis_covariance_matrix.html error_analysis.covariance_matrix user function]. The model_info structure is now being passed into the get_param_names() API method, as required by the API.
* Another change for the [http://www.nmr-relax.com/api/3.3/specific_analyses.relax_fit.api.Relax_fit-class.html#covariance_matrix relaxation curve-fitting covariance_matrix() API method] to handle all models. The scaling matrix diagonalised list of 1.0 values now has the same number of elements as there are parameters.
* Implemented the target functions for the inversion recovery exponential curve. In the [http://www.nmr-relax.com/api/3.3/target_functions.relax_fit_wrapper.Relax_fit_opt-class.html target_functions.relax_fit_wrapper.Relax_fit_opt Python target function class Relax_fit_opt], the new [http://www.nmr-relax.com/api/3.3/target_functions.relax_fit_wrapper.Relax_fit_opt-class.html#func_inv func_inv()], [http://www.nmr-relax.com/api/3.3/target_functions.relax_fit_wrapper.Relax_fit_opt-class.html#dfunc_inv dfunc_inv()] and [http://www.nmr-relax.com/api/3.3/target_functions.relax_fit_wrapper.Relax_fit_opt-class.html#d2func_inv d2func_inv()] methods have been created as wrappers for the new C functions. These are aliased to func(), dfunc() and d2func() in the [http://www.nmr-relax.com/api/3.3/target_functions.relax_fit_wrapper.Relax_fit_opt-class.html#__init__ __init__() method]. The target_functions/exponential_inv.c C file has been created with the functions exponential_inv(), exponential_inv_d0(), exponential_inv_dIinf(), exponential_inv_dR(), exponential_inv_dI02(), exponential_inv_dIinf2(), exponential_inv_dI0_dIinf(), exponential_inv_dR_dI0(), exponential_inv_dR_dIinf() and exponential_inv_dR2() have been created to implement the function, gradient, and Hessian for the equation I(t) = I<sub>&infin;</sub> - I<sub>0</sub>e<sup>-R.t</sup>. In the target_functions/relax_fit.c file, the functions [http://www.nmr-relax.com/api/3.3/target_functions.relax_fit-module.html#func_inv func_inv()], [http://www.nmr-relax.com/api/3.3/target_functions.relax_fit-module.html#dfunc_inv dfunc_inv()], [http://www.nmr-relax.com/api/3.3/target_functions.relax_fit-module.html#d2func_inv d2func_inv()], [http://www.nmr-relax.com/api/3.3/target_functions.relax_fit-module.html#jacobian_inv jacobian_inv()] and [http://www.nmr-relax.com/api/3.3/target_functions.relax_fit-module.html#jacobian_chi2_inv jacobian_chi2_inv()] have been created as duplications of the *_exp() functions, but pointing to the exponential_inv*() functions and adding the I</sub>&infin;</sub> dimension.
* More editing of the [http://www.nmr-relax.com/manual/relax_fit_select_model.html relax_fit.select_model user function]. The IR and SR abbreviations have been added, and a lot of text cleaned up.
* Improvement for the [http://www.nmr-relax.com/manual/relax_fit_select_model.html relax_fit.select_model user function] in the GUI. Unicode text is now being used to display the parameters as R_x and I_0 and to show an infinity symbol in the I<sub>&infin;</sub> parameter. The R<sub>x</sub> and I<sub>&infin;</sub> parameters have been added to [http://www.nmr-relax.com/api/3.3/lib.text.gui-module.html lib.text.gui] to allow this.
<section end=changes/>
=== Bugfixes ===
<section begin=bugfixes/>
<section end=bugfixes/>
== Links ==
<section begin=links/>
* [http://wiki.nmr-relax.com/Relax_3.3.4 Official release notes on the relax wiki].
* [https://{{gna link|url=gna.org/forum/forum.php?forum_id=2483 |text=Gna! news item]}}.
* [http://article.gmane.org/gmane.science.nmr.relax.announce/62 Gmane mailing list archive].
* [http://www.mail-archive.com/relax-announce%40gna.org/msg00053.html The Mail Archive].
* [https://mail.gna.org/public/relax-announce/2014-12/msg00000.html Local archives].
* [http://marc.info/?l=relax-announce&m=141686534623579141773006429004&w=2 Mailing list ARChives (MARC)].
{{:Softpedia}}
<section end=links/>
== Announcements ==
{{:relax release announcements}}
== See also ==
* [http://www.nmr-relax.com/api/3.3/ The relax 3.3 API documentation]
{{:relax release see also}}
[[Category:Relaxation dispersion analysis]]
Trusted, Bureaucrats
4,223

edits