Sounds like the perfect solution!

On Thu, Jan 8, 2009 at 8:42 PM, Sébastien Morin
<[email protected]> wrote:
> Hi Ed,
>
> You are right, and I am partially wrong...
>
> delayT is 0 for reference spectra (where the CPMG block is absent).
> However, it can be of different values for the CPMG spectra...
>
> What is best ? Define the reference spectra with cpmg_delayT() or with
> cpmg_frq() ? I would propose cpmg_frq() , with a value of 0, 'ref', or
> None, as this could allow us to give a single delayT value for a
> complete dataset and, then, a variable cpmg_frq value for the different
> spectra...
>
> What do you think ?
>
>
> Séb  :)
>
>
>
> Edward d'Auvergne wrote:
>> Hi,
>>
>> I thought delayT was set to zero seconds in the reference spectrum?
>> Anyway, your arguments are convincing.  Maybe if the spectrum_id is
>> set to None, then all spectrum can be set with that one value?  What
>> do you think?
>>
>> Regards,
>>
>> Edward
>>
>>
>> On Thu, Jan 8, 2009 at 6:05 PM, Sébastien Morin
>> <[email protected]> wrote:
>>
>>> Hi,
>>>
>>> delayT could vary depending with the magnetic field. It could even vary
>>> among one magnetic field...
>>>
>>> In fact, the same delayT must be used for at least a reference spectrum
>>> and a spectrum with CPMG... From this, a R2eff is calculated. Normally,
>>> users will use the same delayT for all the dispersion curve at one
>>> field, since this will allow only one reference spectrum to be
>>> recorded... The same delayT can be used at another field strength,
>>> however a different one can be used also, for a better S/N or for
>>> probing differently the dispersion profile...
>>>
>>> Hence, I would think that delayT should be associated with one dataset,
>>> in the same way as the frequency, when set using frq.set...
>>>
>>> Does that sound logical ?
>>>
>>> Regards,
>>>
>>>
>>> Séb  :)
>>>
>>>
>>>
>>>
>>> Edward d'Auvergne wrote:
>>>
>>>> Seb,
>>>>
>>>> Do we need to associate delayT with different spectra?  Is it not the
>>>> same for all spectra from all field strengths?
>>>>
>>>> Regards,
>>>>
>>>> Edward
>>>>
>>>>
>>>> On Thu, Jan 8, 2009 at 5:48 PM,  <[email protected]> wrote:
>>>>
>>>>
>>>>> Author: semor
>>>>> Date: Thu Jan  8 17:48:13 2009
>>>>> New Revision: 8339
>>>>>
>>>>> URL: http://svn.gna.org/viewcvs/relax?rev=8339&view=rev
>>>>> Log:
>>>>> Added the user function cpmg_delayT() which allows setting the CPMG 
>>>>> constant time delay T used for
>>>>> the analysed dataset.
>>>>>
>>>>> This follows a post at:
>>>>> https://mail.gna.org/public/relax-devel/2009-01/msg00027.html
>>>>> (Message-id: <[email protected]>)
>>>>>
>>>>>
>>>>> Modified:
>>>>>    branches/relax_disp/prompt/relax_disp.py
>>>>>    branches/relax_disp/specific_fns/relax_disp.py
>>>>>    
>>>>> branches/relax_disp/test_suite/system_tests/scripts/relax_disp_cpmg_fast.py
>>>>>
>>>>> Modified: branches/relax_disp/prompt/relax_disp.py
>>>>> URL: 
>>>>> http://svn.gna.org/viewcvs/relax/branches/relax_disp/prompt/relax_disp.py?rev=8339&r1=8338&r2=8339&view=diff
>>>>> ==============================================================================
>>>>> --- branches/relax_disp/prompt/relax_disp.py (original)
>>>>> +++ branches/relax_disp/prompt/relax_disp.py Thu Jan  8 17:48:13 2009
>>>>> @@ -45,6 +45,42 @@
>>>>>
>>>>>         # Place relax in the class namespace.
>>>>>         self.__relax__ = relax
>>>>> +
>>>>> +
>>>>> +    def cpmg_delayT(self, id=None, delayT=None):
>>>>> +        """Set the CPMG constant time delay (T) of the experiment.
>>>>> +
>>>>> +        Keyword arguments
>>>>> +        ~~~~~~~~~~~~~~~~~
>>>>> +
>>>>> +        id:  The experiment identification string.
>>>>> +
>>>>> +        delayT:   The CPMG constant time delay (T) in s.
>>>>> +
>>>>> +
>>>>> +        Description
>>>>> +        ~~~~~~~~~~~
>>>>> +
>>>>> +        This user function allows the CPMG constant time delay (T) of a 
>>>>> given experiment to be set.
>>>>> +        """
>>>>> +
>>>>> +        # Function intro text.
>>>>> +        if self.__relax__.interpreter.intro:
>>>>> +            text = sys.ps3 + "delayT("
>>>>> +            text = text + "id=" + `id`
>>>>> +            text = text + ", delayT=" + `delayT` + ")"
>>>>> +            print text
>>>>> +
>>>>> +        # Id string.
>>>>> +        if type(id) != str:
>>>>> +            raise RelaxStrError, ('experiment identification string', id)
>>>>> +
>>>>> +        # The CPMG constant time delay (T).
>>>>> +        if type(delayT) != float and type(delayT) != int:
>>>>> +            raise RelaxNumError, ('CPMG constant time delay (T)', delayT)
>>>>> +
>>>>> +        # Execute the functional code.
>>>>> +        specific_fns.relax_disp.cpmg_delayT(id=id, delayT=delayT)
>>>>>
>>>>>
>>>>>     def exp_type(self, exp='cpmg'):
>>>>>
>>>>> Modified: branches/relax_disp/specific_fns/relax_disp.py
>>>>> URL: 
>>>>> http://svn.gna.org/viewcvs/relax/branches/relax_disp/specific_fns/relax_disp.py?rev=8339&r1=8338&r2=8339&view=diff
>>>>> ==============================================================================
>>>>> --- branches/relax_disp/specific_fns/relax_disp.py (original)
>>>>> +++ branches/relax_disp/specific_fns/relax_disp.py Thu Jan  8 17:48:13 
>>>>> 2009
>>>>> @@ -205,6 +205,41 @@
>>>>>
>>>>>         # Add the frequency at the correct position.
>>>>>         cdp.cpmg_frqs[index] = frq
>>>>> +
>>>>> +
>>>>> +    def cpmg_delayT(id=None, delayT=None):
>>>>> +        """Set the CPMG constant time delay (T) of the experiment.
>>>>> +
>>>>> +        @keyword id:       The experimental identification string 
>>>>> (allowing for multiple experiments
>>>>> +                           per data pipe).
>>>>> +        @type id:          str
>>>>> +        @keyword delayT:   The CPMG constant time delay (T) in s.
>>>>> +        @type delayT:      float
>>>>> +        """
>>>>> +
>>>>> +        # Function intro text.
>>>>> +        if self.__relax__.interpreter.intro:
>>>>> +            text = sys.ps3 + "delayT("
>>>>> +            text = text + "id=" + `id`
>>>>> +            text = text + ", delayT=" + `delayT` + ")"
>>>>> +            print text
>>>>> +
>>>>> +        # Test if the current data pipe exists.
>>>>> +        pipes.test()
>>>>> +
>>>>> +        # Alias the current data pipe.
>>>>> +        cdp = pipes.get_pipe()
>>>>> +
>>>>> +        # Set up the dictionnary data structure if it doesn't exist yet.
>>>>> +        if not hasattr(cdp, 'delayT'):
>>>>> +            cdp.delayT = {}
>>>>> +
>>>>> +        # Test the CPMG constant time delay (T) has not already been set.
>>>>> +        if cdp.delayT.has_key(id):
>>>>> +           raise RelaxError, "The CPMG constant time delay (T) for the 
>>>>> experiment " + `id` + " has already been set."
>>>>> +
>>>>> +        # Set the CPMG constant time delay (T).
>>>>> +        cdp.delayT[id] = delayT
>>>>>
>>>>>
>>>>>     def create_mc_data(self, spin_id):
>>>>>
>>>>> Modified: 
>>>>> branches/relax_disp/test_suite/system_tests/scripts/relax_disp_cpmg_fast.py
>>>>> URL: 
>>>>> http://svn.gna.org/viewcvs/relax/branches/relax_disp/test_suite/system_tests/scripts/relax_disp_cpmg_fast.py?rev=8339&r1=8338&r2=8339&view=diff
>>>>> ==============================================================================
>>>>> --- 
>>>>> branches/relax_disp/test_suite/system_tests/scripts/relax_disp_cpmg_fast.py
>>>>>  (original)
>>>>> +++ 
>>>>> branches/relax_disp/test_suite/system_tests/scripts/relax_disp_cpmg_fast.py
>>>>>  Thu Jan  8 17:48:13 2009
>>>>> @@ -22,6 +22,9 @@
>>>>>
>>>>>  # Relaxation dispersion magnetic field (in Hz).
>>>>>  frq.set(id='600', frq=600.0 * 1e6)
>>>>> +
>>>>> +# Relaxation dispersion CPMG constant time delay T (in s).
>>>>> +cpmg_delayT(id='600', delayT=0.020)
>>>>>
>>>>>  # Relaxation dispersion CPMG frequencies (in Hz).
>>>>>  cpmg_frq = [
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> relax (http://nmr-relax.com)
>>>>>
>>>>> This is the relax-commits 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-commits
>>>>>
>>>>>
>>>>>
>>>> _______________________________________________
>>>> 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
>>>
>>>
>>
>>
>
>

_______________________________________________
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

Reply via email to