Hi Ed,
I started a branch (relax_disp) for implementation of relaxation
dispersion code.
============================================
The CPMG relaxation dispersion approach I presently work with is derived
from pulse sequences developped in Lewis Kay's laboratory (Hansen,
Vallurupalli & Kay, 2008, J.Phys.Chem.B 112: 5898-5904). The equation
for R2eff is as follows :
R2eff = ( 1 / T ) * Ln( Icpmg / Iref )
where T is the constant time relaxation, Icpmg is the peak height
with CPMG, and Iref is the peak height without CPMG.
Then, from these R2eff (recorded with varying CPMG frequency), one can
fit relaxation dispersion and extract Rex, pa, pb, dw, tex, etc,
depending on the exchange regime (slow or fast)...
I wrote an interactive Mathematica notebook concerning the basics of
CPMG relaxation dispersion... You can find it at :
http://maple.rsvs.ulaval.ca/mediawiki/index.php/Relaxation_dispersion
============================================
A few questions come to my mind, at this point.
How do we want to treat relaxation dispersion within relax ?
Do we want to support both CPMG and R1rho relaxation dispersion
approaches ?
-> I propose starting with CPMG.
Do we want the code to work with peak heights or with calculated R2eff ?
-> I propose starting with R2eff.
Do we want to handle both slow- and fast-exchange ?
-> I propose implementing both...
Do we want to support the use of multiple field data simultaneously ?
-> I propose yes, otherwise users will use some other in-house
programs which allow it...
Do we want the code to be able to choose between slow- and
fast-exchange automatically, using some model selection criteria ?
-> I propose yes, otherwise users will use some other in-house
programs which allow it...
Let me know if you have a few ideas...
Regards,
Séb :)
Edward d'Auvergne wrote:
> Hi,
>
> If you would like to implement this, please feel free. I have so much
> to do currently with relax that I won't have a chance to develop this
> code for a long time. This development will have to be done within a
> branch because of the disruptive nature of the code. I would suggest
> that you do something similar to what you did with the consistency
> testing code, by copying and modifying the reduced spectral density
> mapping code. However in this case, I would suggest copying and
> modifying the relaxation curve-fitting code. Don't be afraid of doing
> anything, as I'll check all committed code as always and every change
> can always be reverted.
>
> For a start, I would develop a system test. Having some limited
> relaxation dispersion data, as peak heights, and the final results
> will be required. Published data could be useful for this, as then it
> could be checked against the published results to make sure that the
> code is correct. Then you can store the input data into
> 'test_suite/shared_data', write a script called something like
> 'test_suite/system_tests/scripts/relaxation_dispersion.py' which
> implements a complete relaxation dispersion analysis (the script can
> be later copied into 'sample_scripts/'), and then have code in the
> system test checking if the final values are correct.
>
> Then I would implement the necessary user functions. Then the
> specific_fns code. And finally the maths_fns code with the relaxation
> dispersion equations. Finally debug until the system test passes.
> This is the order that I develop the analyses in relax, and is the
> best way to do this. At all points you can copy and modify the
> relaxation curve-fitting code as the concepts are quite similar. So
> similar in fact that implementing this analysis will not be too hard.
> It might be nice if you had a protein system to run this on in the end
> so you can publish the fact that you have implemented this code in
> relax. Well, assuming you decide to write this code.
>
> Regards,
>
> Edward
>
>
> On Tue, Dec 23, 2008 at 5:40 PM, Sébastien Morin
> <[email protected]> wrote:
>
>> Hi,
>>
>> I have seen pass by the new pipe type 'relax_disp' a few weeks ago...
>> Since relaxation dispersion is in the list of techniques planned to be
>> supported in the future, I guess this is the first step toward
>> implementation...
>>
>> I would like to contribute to the development of this type of analysis.
>>
>> What first steps could I do ? Should there be a new branch created to
>> start this ? Should some unit and system tests be written ? Should first
>> equations be introduced ?
>>
>> Let me know what are your plans for this, Ed, and I'll try to help you
>> in any way you find useful.
>>
>> Regards,
>>
>>
>> Séb :)
>>
>> _______________________________________________
>> relax (http://nmr-relax.com)
>>
>> This is the relax-devel 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-devel
>>
>>
>
>
_______________________________________________
relax (http://nmr-relax.com)
This is the relax-devel 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-devel