Hi Edward.

With my scribbles, and notes from my statistics book, I derive almost
the same thing.

My problem is that I end up with also wanting the time for the reference point.

And that does not make sense.

It reminds me of the NS R1rho equation problem, with 1/T.

Best
Troels


Troels Emtekær Linnet


2014-09-01 15:08 GMT+02:00 Edward d'Auvergne <[email protected]>:
> Ok, I've found one reference for this formula:
>
>     - Loria, J. P. and Kempf, J. G. (2004)  Measurement of
> Intermediate Exchange Phenomena.  Methods in Molecular Biology, 278,
> 185-231.  (http://dx.doi.org/10.1385/1-59259-809-9:185).
>
> Specifically section 3.2.7.1 "Two-Point Data Sampling", and equation 22:
>
>     R2(tau_CP^-1) = t^-1 ln[ave(I0) / ave(I(t))] +/- t^-1 Delta_Q,
>
> and equation 23:
>
>     Delta_Q = sqrt(Delta_I0^2 + Delta_I(t)^2).
>
> This is apparently from the book:
>
>     - Shoemaker, D. P., Garland, C. W., and Nibler, J. W. (1989)
> Experiments in Physical Chemistry. 5th ed. McGraw-Hill, New York.
>
> Though I don't have access to that to check.
>
> Regards,
>
> Edward
>
>
>
> On 1 September 2014 10:55, Edward d'Auvergne <[email protected]> wrote:
>> Hi Troels,
>>
>> The 2-point exponential error formula is currently equation 11.4 in
>> the relax manual (http://www.nmr-relax.com/manual/R2eff_model.html).
>> I unfortunately did not write down a reference for it.  But the
>> equation is in a number of dispersion papers - I just have to find it.
>> Feel free to search yourself.  I also simulated this error, see figure
>> 11.1 in the relax manual
>> (http://www.nmr-relax.com/manual/R2eff_model.html#fig:_dispersion_error_comparison)
>>
>> Regards,
>>
>> Edward
>>
>> On 30 August 2014 13:49, Troels Emtekær Linnet <[email protected]> wrote:
>>> Hi Edward.
>>>
>>> I found this old post in gwing gwong doogle Google.
>>> http://thread.gmane.org/gmane.science.nmr.relax.scm/17553
>>>
>>> And then I see, that for a two point exponential, this i just
>>> converting the values to a linear problem.
>>>
>>> For several time points, a good initial guess for estimating r2eff,
>>> and i0, by converting to a linear problem, and solving by linear least
>>> squares.
>>> (This is currently the experimental 'estimate_x0_exp' in the R2eff
>>> estimate module).
>>> Maybe I should try some weighting on this.
>>>
>>> ---------
>>> # Convert to linear problem.
>>> # Func
>>> # I = i0 exp(-t R)
>>> # Convert to linear
>>> # ln(I) = R (-t) + ln(i0)
>>> # Compare
>>> # f(I) = a x + b
>>>
>>> ln_I = log(I)
>>> x = - 1. * times
>>> n = len(times)
>>>
>>> # Solve by linear least squares.
>>> a = (sum(x*ln_I) - 1./n * sum(x) * sum(ln_I) ) / ( sum(x**2) - 1./n *
>>> (sum(x))**2 )
>>> b = 1./n * sum(ln_I) - b * 1./n * sum(x)
>>>
>>> # Convert back from linear to exp function. Best estimate for parameter.
>>> r2eff_est = a
>>> i0_est = exp(b)
>>> -----------
>>>
>>> And then I see in And then I look in lib.dispersion.two_point.py
>>>
>>> ---------------
>>> """Calculate the R2eff/R1rho error for the fixed relaxation time data.
>>>
>>> The formula is::
>>>
>>>                             __________________________________
>>>                   1        / / sigma_I1 \ 2     / sigma_I0 \ 2
>>>     sigma_R2 = -------    /  | -------- |   +   | -------- |
>>>                relax_T  \/   \ I1(nu1)  /       \    I0    /
>>>
>>> where relax_T is the fixed delay time, I0 and sigma_I0 are the
>>> reference peak intensity and error when relax_T is zero, and I1 and
>>> sigma_I1 are the peak intensity and error in the spectrum of interest.
>>> -------------
>>>
>>> Right now, I don't know where that comes from.
>>>
>>> My reference book:
>>> An introduction to Error Analysis, Second Edition
>>> John R. Taylor
>>> http://www.uscibooks.com/taylornb.htm
>>>
>>> "You will not be surprised to learn that when the uncertainties ...
>>> are independent and random, the sum can be replaced by a sum in
>>> quadrature."
>>>
>>> So, just following you analogy, I could get sigma R2 this way.
>>>
>>> I will look into it and make some tests scripts.
>>>
>>>
>>>
>>>
>>> Troels Emtekær Linnet
>>>
>>>
>>> 2014-08-30 9:54 GMT+02:00 Edward d'Auvergne <[email protected]>:
>>>> Hi,
>>>>
>>>> I don't have much time to reply now, but the key is it use simple
>>>> synthetic noise-free data.  Try converting the 5 intensities in
>>>> test_suite/shared_data/curve_fitting/numeric_topology/ into 5 Sparky
>>>> peak lists with a single spin.  Then test the Monte Carlo simulations
>>>> and covariance matrix user functions in relax.  These two relax
>>>> techniques should then match the numeric results from the super-basic
>>>> scripts in that directory!  This would then be converted into two
>>>> system tests.
>>>>
>>>> This was my plan, to complete in my spare time.  If you want to go
>>>> quickly, then feel free to follow these steps yourself rather than
>>>> waiting for me to do it.  I actually suggested this synthetic data
>>>> testing earlier to you
>>>> (http://thread.gmane.org/gmane.science.nmr.relax.devel/6807/focus=6840).
>>>> Synthetic noise-free data is an essential tool for implemented and
>>>> debugging any new analysis type, algorithm, protocol, etc.  The key is
>>>> that you know the answer you are searching for!  And synthetic data is
>>>> simple.  Nothing should ever be implemented and debugged using real
>>>> data, as a good looking result might be the consequence of a nasty
>>>> bug.
>>>>
>>>> Regards,
>>>>
>>>> Edward
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> On 30 August 2014 02:49, Troels Emtekær Linnet <[email protected]> wrote:
>>>>> Hm.
>>>>>
>>>>> The last idea I have, is the division by number of degree of freedom.
>>>>>
>>>>> So either 5-2, or 4-2.
>>>>>
>>>>> That should be verified by a script with many different time points.
>>>>>
>>>>> But then the errors for intensity gets very different.
>>>>>
>>>>> Hm.
>>>>>
>>>>> On 30 Aug 2014 01:45, "Troels Emtekær Linnet" <[email protected]> 
>>>>> wrote:
>>>>>>
>>>>>> The sentence:
>>>>>>
>>>>>> "then the covariance matrix above gives the statistical error on the
>>>>>> best-fit parameters resulting from the Gaussian errors 'sigma_i' on
>>>>>> the underlying data 'y_i'."
>>>>>>
>>>>>> And here I note the wording:
>>>>>> "statistical error"
>>>>>> "Gaussian errors"
>>>>>>
>>>>>> Best
>>>>>> Troels
>>>>>>
>>>>>>
>>>>>> 2014-08-29 21:21 GMT+02:00 Troels Emtekær Linnet <[email protected]>:
>>>>>> > Hi Edward.
>>>>>> >
>>>>>> > I also think it is some math some where.
>>>>>> >
>>>>>> > I have a feeling, that it is the creating of Monte Carlo data with 2
>>>>>> > sigma?
>>>>>> > and then some log/exp calculation of R2eff.
>>>>>> >
>>>>>> > If the errors are 2 x times over estimated, the chi2 values are 4 as
>>>>>> > small, and the
>>>>>> > space should be the same?
>>>>>> >
>>>>>> > best
>>>>>> > Troels
>>>>>> >
>>>>>> > 2014-08-29 17:06 GMT+02:00 Edward d'Auvergne <[email protected]>:
>>>>>> >> I've just added the 2D Grace plots for this to the repository (r25444,
>>>>>> >> http://article.gmane.org/gmane.science.nmr.relax.scm/23194).  They are
>>>>>> >> also attached to the task for easier access
>>>>>> >> (https://gna.org/task/index.php?7822#comment107).  From these plots I
>>>>>> >> see that the I0 error appears to be reasonable, but that the R2eff
>>>>>> >> errors are overestimated by 1.9555.
>>>>>> >>
>>>>>> >> The plots are very, very different.  It is clear that
>>>>>> >> chi2_jacobian=True just gives rubbish.  It is also clear that there is
>>>>>> >> a perfect correlation in R2eff when chi2_jacobian=False.  The plot
>>>>>> >> shows absolutely no scattering, therefore this indicates a crystal
>>>>>> >> clear mathematical error somewhere.  I wonder where that could be.  It
>>>>>> >> may not be a factor of 2, as the correlation is 1.9555.  So it might
>>>>>> >> be a bug that is more complicated.  In any case, overestimating the
>>>>>> >> errors by ~2 and performing a dispersion analysis is not possible.
>>>>>> >> This will significantly change the curvature of the optimisation space
>>>>>> >> and will also have a huge effect on statistical comparisons between
>>>>>> >> models.
>>>>>> >>
>>>>>> >> Regards,
>>>>>> >>
>>>>>> >> Edward
>>>>>> >>
>>>>>> >>
>>>>>> >>
>>>>>> >> On 29 August 2014 16:56, Troels Emtekær Linnet <[email protected]>
>>>>>> >> wrote:
>>>>>> >>> The default is now chi2_jacobian=False.
>>>>>> >>>
>>>>>> >>> You will hopefully see, that the errors are double.
>>>>>> >>>
>>>>>> >>> Best
>>>>>> >>> Troels
>>>>>> >>>
>>>>>> >>> 2014-08-29 16:43 GMT+02:00 Edward d'Auvergne <[email protected]>:
>>>>>> >>>> Terrible ;)  For R2eff, the correlation is 2.748 and the points are
>>>>>> >>>> spread out all over the place.  For I0, the correlation is 3.5 and
>>>>>> >>>> the
>>>>>> >>>> points are also spread out everywhere.  Maybe I should try with the
>>>>>> >>>> change from:
>>>>>> >>>>
>>>>>> >>>> relax_disp.r2eff_err_estimate(chi2_jacobian=True)
>>>>>> >>>>
>>>>>> >>>> to:
>>>>>> >>>>
>>>>>> >>>> relax_disp.r2eff_err_estimate(chi2_jacobian=False)
>>>>>> >>>>
>>>>>> >>>> How should this be used?
>>>>>> >>>>
>>>>>> >>>> Cheers,
>>>>>> >>>>
>>>>>> >>>> Edward
>>>>>> >>>>
>>>>>> >>>>
>>>>>> >>>>
>>>>>> >>>> On 29 August 2014 16:33, Troels Emtekær Linnet
>>>>>> >>>> <[email protected]> wrote:
>>>>>> >>>>> Do you mean terrible or double?
>>>>>> >>>>>
>>>>>> >>>>> Best
>>>>>> >>>>> Troels
>>>>>> >>>>>
>>>>>> >>>>> 2014-08-29 16:15 GMT+02:00 Edward d'Auvergne 
>>>>>> >>>>> <[email protected]>:
>>>>>> >>>>>> Hi Troels,
>>>>>> >>>>>>
>>>>>> >>>>>> I really cannot follow and judge how the techniques compare.  I
>>>>>> >>>>>> must
>>>>>> >>>>>> be getting old.  So to remedy this, I have created the
>>>>>> >>>>>>
>>>>>> >>>>>> test_suite/shared_data/dispersion/Kjaergaard_et_al_2013/exp_error_analysis/
>>>>>> >>>>>> directory (r25437,
>>>>>> >>>>>> http://article.gmane.org/gmane.science.nmr.relax.scm/23187).  This
>>>>>> >>>>>> contains 3 scripts for comparing R2eff and I0 parameters for the 2
>>>>>> >>>>>> parameter exponential curve-fitting:
>>>>>> >>>>>>
>>>>>> >>>>>> 1)  A simple script to perform Monte Carlo simulation error
>>>>>> >>>>>> analysis.
>>>>>> >>>>>> This is run with 10,000 simulations to act as the gold standard.
>>>>>> >>>>>>
>>>>>> >>>>>> 2)  A simple script to perform covariance matrix error analysis.
>>>>>> >>>>>>
>>>>>> >>>>>> 3)  A simple script to generate 2D Grace plots to visualise the
>>>>>> >>>>>> differences.  Now I can see how good the covariance matrix
>>>>>> >>>>>> technique
>>>>>> >>>>>> is :)
>>>>>> >>>>>>
>>>>>> >>>>>> Could you please check and see if I have used the
>>>>>> >>>>>> relax_disp.r2eff_err_estimate user function correctly?  The Grace
>>>>>> >>>>>> plots show that the error estimates are currently terrible.
>>>>>> >>>>>>
>>>>>> >>>>>> Cheers,
>>>>>> >>>>>>
>>>>>> >>>>>> Edward
>>>>>> >>>>>>
>>>>>> >>>>>> _______________________________________________
>>>>>> >>>>>> relax (http://www.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://www.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