Hi Ed,

Hera are patches for the consistency tests code. Even if the changes are
relatively small and won;t normally affect the execution of the code,
these are intended to be commited before the merging of the consistency
tests branch into the main 1.2 branch. The patches I submitted recently
(https://mail.gna.org/public/relax-devel/2007-10/msg00006.html) are now
replaced by modified patches made on revision 3375 of line 1.2.

Here are the commit messages for the attached patches.

===================================================
Application of a patch by Sebastien Morin (sebastien dot morin dot 1 at
ulaval dot ca) that changes the default CSA value so it's consistent
with the rest of relax.

The patch 'patch_1.2-r3375_consistency_branch__CSA' changes the default
CSA value from -170 to -172 ppm in the file
'specific_fns/consistency_tests.py'.

This change follows the one at :
http://svn.gna.org/viewcvs/relax/1.2/specific_fns/jw_mapping.py?rev=3354&r1=3353&r2=3354&view=diff
for jw_mapping from which the code for consistency tests originated.
===================================================


===================================================
Application of a patch by Sebastien Morin (sebastien dot morin dot 1 at
ulaval dot ca) that complements information given to users on
consistency testing.

The patch 'patch_1.2-r3375_consistency_branch__docstring' adds some text
in docstrings or comments of files 'maths_fns/consistency_tests.py' and
'specific_fns/consistency_tests.py' to help users understand why and how
use the consistency tests.
===================================================


===================================================
Application of a patch by Sebastien Morin (sebastien dot morin dot 1 at
ulaval dot ca) that corrects a typo.

The patch 'patch_1.2-r3375_consistency_branch__typo' corrects a typo in
function 'set()' of file 'specific_fns/consistency_tests.py' where 'csa'
was written twice instead of first 'csa' and then 'r'.

This change follows the one at :
http://svn.gna.org/viewcvs/relax/1.2/specific_fns/jw_mapping.py?rev=3348&r1=3343&r2=3348
for jw_mapping from which the code for consistency tests originated.

This was first reported for the jw_mapping code (bug #9562).
===================================================


Let me know if something misses...

Regards


Séb  :)





Edward d'Auvergne wrote:
> Hi,
>
> Prior to me committing these patches, would you be able to write the
> full commit message for these so I can just cut and paste them?  For
> example links to posts or previous commits for the CSA value change
> would be useful for people in the future to back track the origin.
> And maybe the third patch pointing to the bug report where this was
> fixed in the code the consistency test code originated from.  The
> fuller the description, the easier it is for me to generate summaries
> of changes in the main lines, i.e. in the CHANGES file.  Ideally the
> first line should be the description that goes into this CHANGES file,
> assuming the individual change is worthy to be noted there.
>
> Thanks,
>
> Edward
>
>
> On 10/22/07, Sebastien Morin <[EMAIL PROTECTED]> wrote:
>   
>>  Hi Ed
>>
>>  I've checked in the consistency tests code and it seems almost ready to be
>> merged to the main code for line 1.2.
>>
>>  I say "almost" since I have 3 patches for solving some details...
>>
>>
>>  1.
>> patch_1.2-r3370_consistency_branch__maths_fns_-_consistency__CSA
>>
>>      Changes the default CSA value from -170 to -172 ppm.
>>
>>  2.
>> patch_1.2-r3370_consistency_branch__maths_fns_-_consistency__docstring
>>
>>      Adds some text in docstrings or comments.
>>
>>  3.
>> patch_1.2-r3370_consistency_branch__maths_fns_-_consistency__typo
>>
>>      Corrects a typo where 'csa' was written instead of 'r'.
>>
>>
>>  Thanks for merging this code.
>>
>>  I think the next steps will be :
>>
>>  a) to add the code to the 1.3 line ;
>>
>>  b) to modify the code so datasets from different magnetic fields (at least
>> two) can be input at once and correlation plots made automatically as long
>> as correlation, skewness and kurtosis coefficients calculated also
>> automatically...
>>
>>  Cheers
>>
>>
>>  Sébastien  :)
>>
>>
>>
>>
>>
>>
>>
>>  Edward d'Auvergne wrote:
>>  On 10/16/07, Sebastien Morin <[EMAIL PROTECTED]> wrote:
>>
>>
>>  Hi Daniel
>>
>>  Calculations for the reduced spectral density mapping need only the R1, R2
>> and NOE at one field. R1, R2 and NOE are 3 variables you measure and you
>> extract 3 parameters from them. This is only a simple calculation using in
>> relax the equations that follow :
>>
>>  j0 = -1.5 / (3.0*d + c) * (0.5*r1 - r2 + 0.6*sigma_noe)
>>  jwx = 1.0 / (3.0*d + c) * (r1 - 1.4*sigma_noe)
>>  jwh = sigma_noe / (5.0*d)
>>
>>  where j0, jwx and jwh are, respectively, the spectral density at the zero
>> frequency, at the nitrogen frequency (in the special case where you work
>> with 15N relaxation) and at the apparent proton frequency (sometimes called
>> J(wH) or J(0.87wH) ).
>>
>>  The other constants and variables are :
>>
>>  c = CSA constant
>>  d = dipolar constant
>>  sigma_noe = cross-relaxation rate (calculated using NOE and R1)
>>
>>  That said, you can extract spectral densities using data from different
>> magnetic fields at the same time. This only changes the obtained value for
>> J(0), as J(wN) and J(wH) are field dependent... For example, if you have
>> data at three fields, you would get 1 value for J(0), 3 values for J(wN) and
>> 3 values for J(wH). This approach is not yet implemented in relax, but it
>> could be something useful. In fact, it's something I personally would like
>> to contribute when I have time, maybe this fall...
>>
>>  This description is exact. There are actually a number of
>> methodologies available for determining J(0) using multiple field
>> strength data but I have never had the chance to implement these in
>> relax. The addition of any new type of analysis to relax would be
>> almost guaranteed to be accepted though. Daniel, the link that Seb
>> gave in his post
>> (https://mail.gna.org/public/relax-users/2006-11/msg00019.html)
>> goes
>> into much more detail into all of this.
>>
>>
>>
>>
>>  However, calculating J(0) using different fields in separated calculations
>> is something useful you may want to do prior to any calculation using
>> multiple field data. The reason is that J(0) should be field independent, in
>> cases where us-ms motions (Rex in the model-free language) are not present.
>> Thus, calculating J(0) helps you assess the quality of your data. This is
>> quite important as different factors may influence the consistency of your
>> data acquired at different magnetic fields...
>>
>>  A part of relax is specially designed to do 3 different consistency tests :
>> J(0), Fn and FR2. Those consistency tests are implemented in a special
>> branch of relax which contains, apart from that, all the same functions. A
>> sample script is also available as for other functions within relax. You can
>> get that version of the program with svn by typing :
>>
>>  svn co
>> http://svn.gna.org/svn/relax/branches/consistency_tests_1.2/
>> .
>>
>>  This branch is likely to be incorporated into the 1.2 line soonish.
>> These consistency tests will be quite useful especially prior to
>> reduced spectral density mapping using data at multiple field
>> strengths to determine a single J(0) value. Seb, what is the status
>> of this code? Is it now complete? Or do you thing that more testing
>> required? I will probably try to release a new version of relax soon,
>> as this is long overdue, and then hopefully we can get your code in
>> shape for merging for the next version.
>>
>> Regards,
>>
>> Edward
>>
>>
>>
>>  --
>>  ______________________________________
>>  _______________________________________________
>>  | |
>>  || Sebastien Morin ||
>>  ||| Etudiant au PhD en biochimie |||
>>  |||| Laboratoire de resonance magnetique nucleaire ||||
>> ||||| Dr Stephane Gagne |||||
>>  |||| CREFSIP (Universite Laval, Quebec, CANADA) ||||
>>  ||| 1-418-656-2131 #4530 |||
>>  || ||
>>  |_______________________________________________|
>>  ______________________________________
>>
>>
>> Index: specific_fns/consistency_tests.py
>> ===================================================================
>> --- specific_fns/consistency_tests.py   (revision 3370)
>> +++ specific_fns/consistency_tests.py   (working copy)
>> @@ -225,7 +225,7 @@
>>          |                                       |               |
>>                   |
>>          | Bond length                           | 'r'           | 1.02 *
>> 1e-10                |
>>          |                                       |               |
>>                   |
>> -        | CSA                                   | 'csa'         | -170 *
>> 1e-6                 |
>> +        | CSA                                   | 'csa'         | -172 *
>> 1e-6                 |
>>          |                                       |               |
>>                   |
>>          | Angle Theta                           | 'orientation' | 15.7
>>                   |
>>          |                                       |               |
>>                   |
>> @@ -240,7 +240,7 @@
>>
>>          # CSA.
>>          if param == 'CSA':
>> -            return -170 * 1e-6
>> +            return -172 * 1e-6
>>
>>          # Angle Theta
>>          if param == 'orientation':
>>
>> Index: maths_fns/consistency_tests.py
>> ===================================================================
>> --- maths_fns/consistency_tests.py      (revision 3370)
>> +++ maths_fns/consistency_tests.py      (working copy)
>> @@ -37,9 +37,14 @@
>>
>>          This code calculates three functions for each residue. When
>> comparing datasets from
>>          different magnetic field, the value should be the same for each
>> function as these are field
>> -        field independent. The J(0) function is the spectral density at the
>> zero frequency and is
>> -        obtained using a reduced spectral density approach. The F_eta and
>> F_R2 functions are the
>> +        independent. The J(0) function is the spectral density at the zero
>> frequency and is obtained
>> +        using a reduced spectral density approach. The F_eta and F_R2
>> functions are the
>>          consistency functions proposed by Fushman D. et al. (1998) JACS,
>> 120: 10947-10952.
>> +
>> +        To assess the consistency of its datasets, one should first
>> calculate those values (J(0),
>> +        F_eta and F_R2) for each field. Then, the user should compare
>> values obtained for different
>> +        magnetic fields. Comparisons could proceed using correlation plots
>> and the user could also
>> +        calculate correlation, skewness and kurtosis coefficients.
>>          """
>>
>>          # Initialise the data container.
>> @@ -109,6 +114,9 @@
>>          # Calculate P_2.
>>          # p_2 is a second rank Legendre polynomial as p_2(x) = 0.5 * (3 *
>> (x ** 2) -1)
>>          # where x is the cosine of the angle Theta when expressed in
>> radians.
>> +        #
>> +        # Note that the angle Theta (called 'orientation' in relax) is the
>> angle between the 15N-1H
>> +        # vector and the principal axis of the 15N chemical shift tensor.
>>          p_2 = 0.5 * ((3.0 * (cos(orientation * pi / 180)) ** 2) -1)
>>
>>          # Calculate eta.
>> Index: specific_fns/consistency_tests.py
>> ===================================================================
>> --- specific_fns/consistency_tests.py   (revision 3370)
>> +++ specific_fns/consistency_tests.py   (working copy)
>> @@ -417,8 +417,8 @@
>>          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>
>>          In consistency testing, only four values can be set, the bond
>> length, CSA, angle
>> -        Theta and correlation time values.  These must be set prior to the
>> calculation
>> -        of consistency functions.
>> +        Theta ('orientation') and correlation time values. These must be
>> set prior to the
>> +        calculation of consistency functions.
>>
>>          """
>>
>>
>> Index: specific_fns/consistency_tests.py
>> ===================================================================
>> --- specific_fns/consistency_tests.py   (revision 3370)
>> +++ specific_fns/consistency_tests.py   (working copy)
>> @@ -447,7 +447,7 @@
>>                  value.append(self.default_value('tc'))
>>
>>              # Initilise data.
>> -            if not hasattr(self.relax.data.res[self.run][index], 'csa') or
>> not hasattr(self.relax.data.res[self.run][index], 'csa') or not
>> hasattr(self.relax.data.res[self.run][index], 'orientation') or not
>> hasattr(self.relax.data.res[self.run][index], 'tc'):
>> +            if not hasattr(self.relax.data.res[self.run][index], 'csa') or
>> not hasattr(self.relax.data.res[self.run][index], 'r') or not
>> hasattr(self.relax.data.res[self.run][index], 'orientation') or not
>> hasattr(self.relax.data.res[self.run][index], 'tc'):
>>                  self.data_init(self.relax.data.res[self.run][index])
>>
>>              # CSA, bond length, angle Theta and correlation time.
>>
>>
>>
>>     
>
>   

-- 
Sebastien Morin
Etudiant au PhD en biochimie
Laboratoire de resonance magnetique nucleaire
Dr Stephane Gagne
CREFSIP (Universite Laval, Quebec, CANADA)
1-418-656-2131 #4530

Index: specific_fns/consistency_tests.py
===================================================================
--- specific_fns/consistency_tests.py   (revision 3375)
+++ specific_fns/consistency_tests.py   (working copy)
@@ -225,7 +225,7 @@
         |                                       |               |              
               |
         | Bond length                           | 'r'           | 1.02 * 1e-10 
               |
         |                                       |               |              
               |
-        | CSA                                   | 'csa'         | -170 * 1e-6  
               |
+        | CSA                                   | 'csa'         | -172 * 1e-6  
               |
         |                                       |               |              
               |
         | Angle Theta                           | 'orientation' | 15.7         
               |
         |                                       |               |              
               |
@@ -240,7 +240,7 @@
 
         # CSA.
         if param == 'CSA':
-            return -170 * 1e-6
+            return -172 * 1e-6
 
         # Angle Theta
         if param == 'orientation':
Index: maths_fns/consistency_tests.py
===================================================================
--- maths_fns/consistency_tests.py      (revision 3375)
+++ maths_fns/consistency_tests.py      (working copy)
@@ -37,9 +37,14 @@
 
         This code calculates three functions for each residue. When comparing 
datasets from
         different magnetic field, the value should be the same for each 
function as these are field
-        field independent. The J(0) function is the spectral density at the 
zero frequency and is
-        obtained using a reduced spectral density approach. The F_eta and F_R2 
functions are the
+        independent. The J(0) function is the spectral density at the zero 
frequency and is obtained
+        using a reduced spectral density approach. The F_eta and F_R2 
functions are the
         consistency functions proposed by Fushman D. et al. (1998) JACS, 120: 
10947-10952.
+
+        To assess the consistency of its datasets, one should first calculate 
those values (J(0),
+        F_eta and F_R2) for each field. Then, the user should compare values 
obtained for different
+        magnetic fields. Comparisons could proceed using correlation plots and 
histograms, and the
+        user could also calculate correlation, skewness and kurtosis 
coefficients.
         """
 
         # Initialise the data container.
@@ -109,6 +114,9 @@
         # Calculate P_2.
         # p_2 is a second rank Legendre polynomial as p_2(x) = 0.5 * (3 * (x 
** 2) -1)
         # where x is the cosine of the angle Theta when expressed in radians.
+        #
+        # Note that the angle Theta (called 'orientation' in relax) is the 
angle between the 15N-1H
+        # vector and the principal axis of the 15N chemical shift tensor.
         p_2 = 0.5 * ((3.0 * (cos(orientation * pi / 180)) ** 2) -1)
 
         # Calculate eta.
Index: specific_fns/consistency_tests.py
===================================================================
--- specific_fns/consistency_tests.py   (revision 3375)
+++ specific_fns/consistency_tests.py   (working copy)
@@ -417,8 +417,8 @@
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
         In consistency testing, only four values can be set, the bond length, 
CSA, angle
-        Theta and correlation time values.  These must be set prior to the 
calculation
-        of consistency functions.
+        Theta ('orientation') and correlation time values. These must be set 
prior to the
+        calculation of consistency functions.
 
         """
 
Index: specific_fns/consistency_tests.py
===================================================================
--- specific_fns/consistency_tests.py   (revision 3375)
+++ specific_fns/consistency_tests.py   (working copy)
@@ -447,7 +447,7 @@
                 value.append(self.default_value('tc'))
 
             # Initilise data.
-            if not hasattr(self.relax.data.res[self.run][index], 'csa') or not 
hasattr(self.relax.data.res[self.run][index], 'csa') or not 
hasattr(self.relax.data.res[self.run][index], 'orientation') or not 
hasattr(self.relax.data.res[self.run][index], 'tc'):
+            if not hasattr(self.relax.data.res[self.run][index], 'csa') or not 
hasattr(self.relax.data.res[self.run][index], 'r') or not 
hasattr(self.relax.data.res[self.run][index], 'orientation') or not 
hasattr(self.relax.data.res[self.run][index], 'tc'):
                 self.data_init(self.relax.data.res[self.run][index])
 
             # CSA, bond length, angle Theta and correlation time.
_______________________________________________
relax (http://nmr-relax.com)

This is the relax-users mailing list
[email protected]

To unsubscribe from this list, get a password
reminder, or change your subscription options,
visit the list information page at
https://mail.gna.org/listinfo/relax-users

Reply via email to