Menu

SVN archive Commit Log


Commit Date  
[r2673] by bugman

Ported r2671 and r2672 from the 1.2 line.

The command used was:
$ svn merge -r2670:2672 svn+ssh://bugman@.../svn/relax/1.2

This improves the optimisation tests and makes them a little more lenient to allow for machine
precision and round-off error artifacts on different architectures, operating systems, etc.

2006-10-26 09:16:54 Tree
[r2672] by bugman

Fixed a bug in the test suite introduced by the previous revision.

The bug was that the optimisation warning flag for the steepest descent and coordinate descent
optimisation algorithms was set to 'Maximum number of iterations reached' as optimisation was
terminated early. This is now caught.

2006-10-26 09:11:36 Tree
[r2671] by bugman

An overhaul of the optimisation tests of the relax test suite.

This is in response to the many posts in the thread starting at
https://mail.gna.org/public/relax-devel/2006-10/msg00114.html (Message-id:
<7f080ed10610190804w5681fafav843718f50f985f40@...>).

The tests have been modified to check all parameter values and optimisation statistic prior to
failure. All the faulty values will hence be printed out. This idea is from the post at
https://mail.gna.org/public/relax-devel/2006-10/msg00128.html (Message-id:
<7f080ed10610200854v7d5288b6yc01d8c2ed0557abe@...>).

The optimisation statistics (iteration count, function count, gradient count, and Hessian count)
tests have been changed. The 'self.test_values()' function now accepts the 'max' flag argument.
The tests of these stats set the flag to 1 causing the test to fail only if the values are greater
than the expected value. This allows for early termination of optimisation due to precision issues.
This idea is Gary's point number 2 in the post located at
https://mail.gna.org/public/relax-devel/2006-10/msg00117.html (Message-id:
<4538955F.3090300@...>).

Optimisation warnings are now tested for. If the residue specific 'warning' data structure is not
None, the warning string is printed and the test fails. This idea originated from Chris' post at
https://mail.gna.org/public/relax-devel/2006-10/msg00121.html (Message-id:
<1161343339.7703.46.camel@...>).

The formula for the parameter value and chi-squared value test has been changed. Previously the
test was:

if val2 < val1 * (1 - error) or val2 > val1 * (1 + error):

Now the test is:

if val2*scale < val1*scale - error or val2*scale > val1*scale + error:

This fixes the problem of testing chi-squared value. Now the chi-squared value must be within 1e-20
of the expected value. For the steepest descent which is terminated early, the value must be within
1e-8.

2006-10-26 09:07:26 Tree
[r2670] by bugman

Fixed the overwriting of the residue specific xh_vect data structure.

If the user function 'pdb.vectors()' was called twice, the vectors calculated from the first
function call were being overwriten by the empty structure '[]'. This is now fixed.

2006-10-26 08:17:45 Tree
[r2669] by bugman

Fixed the nucleic acid residue names.

These names were being prefixed by 'R' by Scientific python, so residue 'G' would be labelled as
residue 'RG'! This was causing the user function 'pdb.vectors()' to fail as the residue was
expected to be called 'G'. The prefix 'R' is now stripped from the residue name.

2006-10-26 08:09:12 Tree
[r2668] by bugman

Fixed a bug whereby the match re function had not been imported.

2006-10-26 07:52:51 Tree
[r2667] by bugman

Creation of a rudimentary PDB file for representing the diffusion tensor.

The new function 'self.write_pdb_file()' has been added which creates a properly formatted PDB file.
It creates HET, HETNAM, and FORMUL records for the pseudo-residue 'TNS'. It also adds HETATM
records for each atom, adds the TER record, and then connects the appropriate atoms using CONECT
records. The file is terminated with the MASTER and END records. For a description of this, see
the post at https://mail.gna.org/public/relax-devel/2006-10/msg00136.html (Message-id:
<7f080ed10610252045r3dcbba38q58aa53142af96e5a@...>).

The function 'self.create_tensor_pdb()' has been modified to create the data for the new
'self.write_pdb_file()' function.

2006-10-26 06:08:47 Tree
[r2666] by bugman

Created functions for calculating the center of mass of the selected residues.

The function 'self.center_of_mass()' in the file 'generic_fns/pdb.py' has been created to calculate
the center of mass. All unselected residues are skipped to allow hybrid models, two fused runs of
non-overlapping residues, to be handled. Hence the center of mass will be biased!

The function 'self.atomic_mass()' has also been added to the file. This function returns the atomic
mass corresponding to the supplied element string.

2006-10-26 05:50:36 Tree
[r2665] by bugman

Created the user function 'pdb.create_tensor_pdb()'.

This is in response to the thread stating at
https://mail.gna.org/public/relax-devel/2006-10/msg00136.html (Message-id:
<7f080ed10610252045r3dcbba38q58aa53142af96e5a@...>).

This new user function creates a PDB file of artificial structures to represent the diffusion
tensor. The prompt interface function has been completed and the shell of the function
'self.create_tensor_pdb()' has been added to the file 'generic_fns/pdb.py'. This second function
solely tests that the run exists, that a PDB structure has been loaded, that the sequence has been
loaded, and then opens and then closes the PDB file. Hence an empty file is created by the user
function.

2006-10-26 05:44:07 Tree
[r2664] by bugman

A branch for implementing the PDB representation of the Brownian rotational diffusion tensor.

Creating a PDB representation of the diffusion tensor was discussed at
https://mail.gna.org/public/relax-devel/2006-10/msg00136.html (Message-id:
<7f080ed10610252045r3dcbba38q58aa53142af96e5a@...>).

2006-10-26 04:53:46 Tree
Older >
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.