Difference between revisions of "Relax 4.0.3"

From relax wiki
Jump to navigation Jump to search
(→‎Description: Copied the description from the SVN message.)
m (→‎Links: Fix the broken Gna! forum link by switching to {{gna link}}.)
 
(12 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 13: Line 14:
  
 
<section begin=description/>
 
<section begin=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.
+
This is a minor feature and bugfix release.  The [http://www.nmr-relax.com/manual/structure_rmsd.html 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 [http://www.nmr-relax.com/manual/structure_rmsd.html structure.rmsd user function] now correctly calculates the RMSD value, and the inversion recovery relaxation curve-fitting equations are now correct.
 
<section end=description/>
 
<section end=description/>
  
Line 25: Line 26:
  
 
<section begin=metadata/>
 
<section begin=metadata/>
 +
Version 4.0.3 <br/>
 +
(28 October 2016, from /trunk) <br/>
 +
http://svn.gna.org/svn/relax/tags/4.0.3
 
<section end=metadata/>
 
<section end=metadata/>
  
Line 30: Line 34:
  
 
<section begin=features/>
 
<section begin=features/>
 +
* Per-atom RMSD calculation by the [http://www.nmr-relax.com/manual/structure_rmsd.html 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.
 
<section end=features/>
 
<section end=features/>
  
Line 35: Line 44:
  
 
<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.
 +
* 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].
 +
* 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 [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].
 +
* 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 <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 40: 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 [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>.
 
<section end=bugfixes/>
 
<section end=bugfixes/>
  
Line 48: 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].
* [https://gna.org/forum/forum.php?forum_id=2540 Gna! news item].
+
* {{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


Official relax releases
relax logo
relax version 4.0.3
Previous version Next version
← relax 4.0.2 relax 4.1.0 →

Keywords Fast superimposition, Google Cloud deployment scripts, OpenMPI, per-atom RMSDs
Release type Minor feature and bugfix
Release date 28 October 2016

The PDF version of the relax 4.0.3 user manual The relax 4.0.3 user manual

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 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.
  • 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 the file 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:

Softpedia also has information about the newest relax releases:


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