On Mon, Jan 12, 2009 at 2:37 PM, Sébastien Morin
<[email protected]> wrote:
> Hi,
>
> I am now planning to implement the code for calculating R2eff from peak
> intensities before passing R2eff values to the curve fitting code...
>
> I thought of a function like:
>
> =================
>    def calc_r2eff(self, exp_type='cpmg', id=None, delayT=None,
> int_cpmg=0, int_ref=0):
>        """Calculate the effective transversal relaxation rate from the
> peak intensities. The
>        equation depends on the experiment type chosen, either 'cpmg' or
> 'r1rho'.
>
>        If 'cpmg' is chosen, the equation used is:
>        r2eff = - ( 1 / delayT ) * log ( int_cpmg / int_ref )
>
>        If 'r1rho' is chosen, nothing happens yet, as the code is not
> implemented.
>        """
>
>        if exp_type == 'cpmg':
>            r2eff = - ( 1 / delayT ) * log ( int_cpmg / int_ref )
>
>        return r2eff
> =================

This design looks good.  It's implementation will be a bit tricky
though and will require much thought, as you'll find out ;)


> I would put this one in 'specific_fns'. However, I am still not sure
> about how this function should be called.

Yep, it should be a method of the Relax_disp object.


> The function should be called after data input (also after using
> exp_type() and cpmg_delayT()), and before any curve fitting. This
> function should be called for every spin (in a loop), for every
> experiment id (in a loop, which would include different spectrometer
> frequencies as well as different cpmg_delayT, if present).
>
> Is that a good approach ?
> Is there something important I forget ?

It should be called only when required.  This is at the very start of
Relax_disp.calc(), Relax_disp.back_calc(), Relax_disp.grid_search(),
and Relax_disp.minimise().  Alternatively you could create a new user
function, something like relax_disp.calc_r2eff().  It will need
careful checks to make sure all the required data is input into relax.

Regards,

Edward

_______________________________________________
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