Difference between revisions of "Relax 4.0.3"
m (Another parameter template use.) |
|||
(4 intermediate revisions by the same user not shown) | |||
Line 4: | Line 4: | ||
| version = 4.0.3 | | version = 4.0.3 | ||
| prev = 4.0.2 | | prev = 4.0.2 | ||
+ | | next = 4.1.0 | ||
| keywords = Fast superimposition, Google Cloud deployment scripts, OpenMPI, per-atom RMSDs | | keywords = Fast superimposition, Google Cloud deployment scripts, OpenMPI, per-atom RMSDs | ||
| type = Minor feature and bugfix | | type = Minor feature and bugfix | ||
Line 44: | Line 45: | ||
<section begin=changes/> | <section begin=changes/> | ||
* Addition of the atomic boolean argument to the [http://www.nmr-relax.com/manual/structure_rmsd.html structure.rmsd user function] front end. This will be used to enable the calculation of per-atom RMSDs. | * Addition of the atomic boolean argument to the [http://www.nmr-relax.com/manual/structure_rmsd.html structure.rmsd user function] front end. This will be used to enable the calculation of per-atom RMSDs. | ||
− | * Created the Structure.test_rmsd_spins system test for checking the per-atom RMSD calculation. This is for the new option in the [http://www.nmr-relax.com/manual/structure_rmsd.html structure.rmsd user function]. | + | * Created the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.structure.Structure-class.html#test_rmsd_spins Structure.test_rmsd_spins system test] for checking the per-atom RMSD calculation. This is for the new option in the [http://www.nmr-relax.com/manual/structure_rmsd.html structure.rmsd user function]. |
* Implemented the per-atom RMSD calculation for the [http://www.nmr-relax.com/manual/structure_rmsd.html structure.rmsd user function]. | * Implemented the per-atom RMSD calculation for the [http://www.nmr-relax.com/manual/structure_rmsd.html structure.rmsd user function]. | ||
− | * Fixes for the Relax_fit.test_inversion_recovery system test. The wrong equation was used in the calc.py Python script used to calculate the peak intensities in the test_suite/shared_data/curve_fitting/inversion_recovery/*.list files. The script and Sparky files have been updated. And the {{:I0}} value in the script and system test has been changed from 30 to -30, so that the curves start as negative. | + | * Fixes for the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.relax_fit.Relax_fit-class.html#test_inversion_recovery Relax_fit.test_inversion_recovery system test]. The wrong equation was used in the <code>calc.py</code> Python script used to calculate the peak intensities in the <code>test_suite/shared_data/curve_fitting/inversion_recovery/*.list</code> files. The script and Sparky files have been updated. And the {{:I0}} value in the script and system test has been changed from 30 to -30, so that the curves start as negative. |
− | * Huge speed up for the superimposition of a large number of structures. The internal structural object validate_models() method was being called once for each structure via the selection() method prior performing the translations, and once prior to performing the rotations, for creating the atomic selection object. This resulted in the _translate() internal structural object method, which converts all input data to formatted strings, being called hundreds of millions of times. Therefore selection() method no longer calls validate_models(). This may speed up quite a number of internal structure object methods when large numbers of structures are present. | + | * Huge speed up for the superimposition of a large number of structures. The [http://www.nmr-relax.com/api/4.0/lib.structure.internal.object.Internal-class.html#validate_models internal structural object validate_models() method] was being called once for each structure via the [http://www.nmr-relax.com/api/4.0/lib.structure.internal.object.Internal-class.html#selection selection() method] prior performing the translations, and once prior to performing the rotations, for creating the atomic selection object. This resulted in the [http://www.nmr-relax.com/api/4.0/lib.structure.internal.object.Internal-class.html#_translate _translate() internal structural object method], which converts all input data to formatted strings, being called hundreds of millions of times. Therefore [http://www.nmr-relax.com/api/4.0/lib.structure.internal.object.Internal-class.html#selection selection() method] no longer calls [http://www.nmr-relax.com/api/4.0/lib.structure.internal.object.Internal-class.html#validate_models validate_models()]. This may speed up quite a number of internal structure object methods when large numbers of structures are present. |
* Copying deployment script of Ubuntu to a Fedora version. This is a response to [https://gna.org/bugs/?25084 bug #25084]. | * Copying deployment script of Ubuntu to a Fedora version. This is a response to [https://gna.org/bugs/?25084 bug #25084]. | ||
* Moving fedora to redhat. Google Cloud does not offer fedora images. | * Moving fedora to redhat. Google Cloud does not offer fedora images. | ||
Line 75: | Line 76: | ||
* Added the MPI version information to the mpi4py information printout. | * Added the MPI version information to the mpi4py information printout. | ||
* Windows scons C module compilation now defaults to 32-bit. This is because the default Python downloads are 32-bit. And many libraries (e.g. numpy and scipy) are only pre-compiled as 32-bit. Hence a 64-bit relax build on Windows will require a lot of custom compilation that most users will never do. | * Windows scons C module compilation now defaults to 32-bit. This is because the default Python downloads are 32-bit. And many libraries (e.g. numpy and scipy) are only pre-compiled as 32-bit. Hence a 64-bit relax build on Windows will require a lot of custom compilation that most users will never do. | ||
− | * Added support in the information printout for Windows versions of the | + | * Added support in the information printout for Windows versions of the <code>file</code> program. This enables the C modules to be identified as 32 or 64-bit, if the <code>file</code> program is installed. |
<section end=changes/> | <section end=changes/> | ||
Line 81: | Line 82: | ||
<section begin=bugfixes/> | <section begin=bugfixes/> | ||
− | * Fix for [https://gna.org/bugs/?24723 bug #24723]. This is the bug that the mean RMSD from the structure.rmsd user function is incorrectly calculated - it should be a quadratic mean. The quadratic mean and quadratic standard deviation are now correctly calculated, and the structure.test_rmsd, structure.test_rmsd_molecules, and structure.test_rmsd_ubi system tests have been updated for the fix. | + | * Fix for [https://gna.org/bugs/?24723 bug #24723]. This is the bug that the mean RMSD from the structure.rmsd user function is incorrectly calculated - it should be a quadratic mean. The quadratic mean and quadratic standard deviation are now correctly calculated, and the [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.structure.Structure-class.html#test_rmsd structure.test_rmsd], [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.structure.Structure-class.html#test_rmsd_molecules structure.test_rmsd_molecules], and [http://www.nmr-relax.com/api/4.0/test_suite.system_tests.structure.Structure-class.html#test_rmsd_ubi structure.test_rmsd_ubi] system tests have been updated for the fix. |
* Bug fix for the inversion recovery equations [https://gna.org/support/?3345 sr #3345]. The inversion recovery experiment was incorrectly implemented as I(t) = {{:Iinf}} - {{:I0}}e<sup>-{{:R1}}t</sup> whereas it should be I(t) = {{:Iinf}} - ({{:Iinf}} - {{:I0}})e<sup>-{{:R1}}t</sup>. | * Bug fix for the inversion recovery equations [https://gna.org/support/?3345 sr #3345]. The inversion recovery experiment was incorrectly implemented as I(t) = {{:Iinf}} - {{:I0}}e<sup>-{{:R1}}t</sup> whereas it should be I(t) = {{:Iinf}} - ({{:Iinf}} - {{:I0}})e<sup>-{{:R1}}t</sup>. | ||
<section end=bugfixes/> | <section end=bugfixes/> | ||
Line 91: | Line 92: | ||
* [http://wiki.nmr-relax.com/Relax_4.0.3 Official release notes on the relax wiki]. | * [http://wiki.nmr-relax.com/Relax_4.0.3 Official release notes on the relax wiki]. | ||
− | * | + | * {{gna link|url=gna.org/forum/forum.php?forum_id=2540|text=Gna! news item}}. |
* [https://www.mail-archive.com/relax-announce@gna.org/msg00061.html Mail Archive] | * [https://www.mail-archive.com/relax-announce@gna.org/msg00061.html Mail Archive] | ||
* [https://mail.gna.org/public/relax-announce/2016-10/msg00000.html Local archives]. | * [https://mail.gna.org/public/relax-announce/2016-10/msg00000.html Local archives]. |
Latest revision as of 20:24, 8 October 2020
relax version 4.0.3 | |||||
| |||||
Keywords | Fast superimposition, Google Cloud deployment scripts, OpenMPI, per-atom RMSDs | ||||
---|---|---|---|---|---|
Release type | Minor feature and bugfix | ||||
Release date | 28 October 2016 | ||||
| |||||
The relax 4.0.3 user manual |
Contents
Description
This is a minor feature and bugfix release. The structure.rmsd user function can now calculate per-atom RMSDs, structure superimposition is now orders of magnitude faster, the relax deployment scripts have been improved and expanded to cover other GNU/Linux systems, OpenMPI system testing scripts have been added, and the relax information printout has been improved. Bugfixes include that the structure.rmsd user function now correctly calculates the RMSD value, and the inversion recovery relaxation curve-fitting equations are now correct.
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 4.0.3
(28 October 2016, from /trunk)
http://svn.gna.org/svn/relax/tags/4.0.3
Features
- Per-atom RMSD calculation by the structure.rmsd user function.
- Much faster superimposition of structures.
- More relax deployment scripts for Google Cloud for different GNU/Linux distributions.
- Addition of OpenMPI testing scripts.
- Improved relax information printout.
Changes
- Addition of the atomic boolean argument to the structure.rmsd user function front end. This will be used to enable the calculation of per-atom RMSDs.
- Created the Structure.test_rmsd_spins system test for checking the per-atom RMSD calculation. This is for the new option in the structure.rmsd user function.
- Implemented the per-atom RMSD calculation for the structure.rmsd user function.
- Fixes for the Relax_fit.test_inversion_recovery system test. The wrong equation was used in the
calc.py
Python script used to calculate the peak intensities in thetest_suite/shared_data/curve_fitting/inversion_recovery/*.list
files. The script and Sparky files have been updated. And the I0 value in the script and system test has been changed from 30 to -30, so that the curves start as negative. - Huge speed up for the superimposition of a large number of structures. The internal structural object validate_models() method was being called once for each structure via the selection() method prior performing the translations, and once prior to performing the rotations, for creating the atomic selection object. This resulted in the _translate() internal structural object method, which converts all input data to formatted strings, being called hundreds of millions of times. Therefore selection() method no longer calls validate_models(). This may speed up quite a number of internal structure object methods when large numbers of structures are present.
- Copying deployment script of Ubuntu to a Fedora version. This is a response to bug #25084.
- Moving fedora to redhat. Google Cloud does not offer fedora images.
- Adding deploy script for RHEL 6.
- Added initial script for testing OpenMPI.
- Making a redhat 6 deploy script, which will upgrade Python from 2.6 to 2.7 The normal installation through yum will have Python 2.6 and only numpy 2.4. This is not good.
- Moved deploy scripts. There would probably have to be a deploy script for each system.
- Renamed the Ubuntu deploy script.
- Adding scripts to test OpenMPI installation and deploy in redhat.
- Change to pip install command, to source Python first.
- Adding installation of matplotlib to Redhat 6, Python 2.7.
- More changing to deploy scripts.
- Small change to deploy script to build wxPython.
- More changing to deployment scripts.
- Moving test script of OpenMPI to bash version.
- Made a copy of OpenMPI test script for tcsh shell.
- Again small changes to deployment scripts.
- Changed more to OpenMPI script.
- Altering test OpenMPI script to an alias function.
- Change to bash OpenMPI test script.
- Last changes to testing of OpenMPI.
- Small change to test OpenMPI script for bash
- Back to function in bash script for OpenMPI.
- Made a deployment script for CentOS 6.
- Scons on CentOS finds python2.6 instead of python2.7
- Try to make the script for tcsh and OpenMPI working on all versions of tcsh.
- Added the MPI version information to the mpi4py information printout.
- Windows scons C module compilation now defaults to 32-bit. This is because the default Python downloads are 32-bit. And many libraries (e.g. numpy and scipy) are only pre-compiled as 32-bit. Hence a 64-bit relax build on Windows will require a lot of custom compilation that most users will never do.
- Added support in the information printout for Windows versions of the
file
program. This enables the C modules to be identified as 32 or 64-bit, if thefile
program is installed.
Bugfixes
- Fix for bug #24723. This is the bug that the mean RMSD from the structure.rmsd user function is incorrectly calculated - it should be a quadratic mean. The quadratic mean and quadratic standard deviation are now correctly calculated, and the structure.test_rmsd, structure.test_rmsd_molecules, and structure.test_rmsd_ubi system tests have been updated for the fix.
- Bug fix for the inversion recovery equations sr #3345. The inversion recovery experiment was incorrectly implemented as I(t) = I∞ - I0e-R1t whereas it should be I(t) = I∞ - (I∞ - I0)e-R1t.
Links
For reference, the announcement for this release can also be found at following links:
- Official release notes on the relax wiki.
- Gna! news item.
- Mail Archive
- Local archives.
- Mailing list ARChives (MARC).
Softpedia also has information about the newest relax releases:
- Softpedia page for relax on GNU/Linux.
- Softpedia page for relax on MS Windows.
- Softpedia page for relax on Mac OS X.
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.
See also
- The combined release notes for all relax versions (warning, this is very large).
- The combined release descriptions for all relax versions.
- The combined release metadata for all relax versions.
- The combined release features for all relax versions.
- The combined release changes for all relax versions (warning, this is very large).
- The combined release bugfixes for all relax versions.
- The combined release announcement links for all relax versions.