Hi Edward.
Hi Andrew, I have added you to this mail, since this relates to your work.

--

Before the fix Andrew sent, B14 would not be able to do it.
I tried, and the results was miserable.

Hence the statement:
"The model B14 was previously in a state of non-functioning."

The problem was, that I could fit Andrews original result from the
paper just fine.
https://gna.org/bugs/index.php?22021#comment7

But when I gave the challenging try, it would fail.
https://gna.org/bugs/index.php?22021#comment5

I did try my self to implement the trigometric functions:
https://gna.org/bugs/index.php?22021#comment6

But I did that wrong.

I was first when Andrew corrected me, that I got it right:
https://gna.org/bugs/index.php?22021#comment10

I tested it a little yesterday, and the results are as good as the numerical.

This is indeed a very interesting and promising model!

And I am sure it will get some attention.

Best
Troels



2014-05-22 9:50 GMT+02:00 Edward d'Auvergne <[email protected]>:
> Hi Troels,
>
> For reference, do you have the B14 optimisation results for this
> parameter set prior to the fix?  This is just to see the difference
> the change makes.
>
> Cheers,
>
> Edward
>
>
>
> On 21 May 2014 20:36,  <[email protected]> wrote:
>> Author: tlinnet
>> Date: Wed May 21 20:36:36 2014
>> New Revision: 23316
>>
>> URL: http://svn.gna.org/viewcvs/relax?rev=23316&view=rev
>> Log:
>> Extremely important fix to the model B14.
>>
>> This was discovered by author Andrew Baldwin of the inspection of his code 
>> in relax.
>>
>> bug #22021: (https://gna.org/bugs/?22021) Model B14 shows bad fitting to 
>> data.
>>
>> The implementation was performed wrong for calculation of g3 and g4.
>> The implementations should be performed by trigonometric functions.
>>
>> The model B14 was previously in a state of non-functioning.
>>
>> The B14 model now shows excellent performance.
>>
>> For the challenging case of data created with numerical model NS CPMG 2-site 
>> 3D:
>>
>> sfrq_1 = 599.8908617*1E6
>> time_T2_1 = 0.06
>> ncycs_1 = [2, 4, 8, 10, 20, 30, 40, 60]
>> sfrq_2 = 499.8908617*1E6
>> time_T2_2 = 0.05
>> ncycs_2 = [2, 4, 8, 10, 30, 35, 40, 50]
>>
>> r2 = 10. rad/s.
>> kex: 1000 rad/s
>> pA: 0.99
>> dw: 2. ppm
>>
>> CR72 would fit:
>> ----------
>> CR72 Ala :1@N r2 599.9 GRID=10.116 MIN=10.000 SET=10.000 RELC=0.000
>> CR72 Ala :1@N r2 499.9 GRID=10.080 MIN=9.999 SET=10.000 RELC=0.000
>> CR72 Ala :1@N pA GRID=0.929 MIN=0.990 SET=0.990 RELC=0.000
>> CR72 Ala :1@N dw GRID=1.429 MIN=1.925 SET=2.000 RELC=0.039
>> CR72 Ala :1@N kex GRID=5714.714 MIN=1034.721 SET=1000.000 RELC=0.034
>>
>> B14 fits:
>> -----------
>> B14 Ala :1@N r2 599.9 GRID=10.116 MIN=10.000 SET=10.000 RELC=0.000
>> B14 Ala :1@N r2 499.9 GRID=10.080 MIN=10.000 SET=10.000 RELC=0.000
>> B14 Ala :1@N pA GRID=0.929 MIN=0.990 SET=0.990 RELC=0.000
>> B14 Ala :1@N dw GRID=1.429 MIN=2.000 SET=2.000 RELC=0.000
>> B14 Ala :1@N kex GRID=10000.000 MIN=1000.001 SET=1000.000 RELC=0.000
>>
>> Modified:
>>     trunk/lib/dispersion/b14.py
>>
>> Modified: trunk/lib/dispersion/b14.py
>> URL: 
>> http://svn.gna.org/viewcvs/relax/trunk/lib/dispersion/b14.py?rev=23316&r1=23315&r2=23316&view=diff
>> ==============================================================================
>> --- trunk/lib/dispersion/b14.py (original)
>> +++ trunk/lib/dispersion/b14.py Wed May 21 20:36:36 2014
>> @@ -111,7 +111,7 @@
>>
>>  # Python module imports.
>>  import numpy
>> -from numpy import arccosh, array, cos, cosh, in1d, log, nonzero, sin, sinh, 
>> sqrt, power
>> +from numpy import arccosh, arctan2, array, cos, cosh, in1d, log, nonzero, 
>> sin, sinh, sqrt, power
>>
>>  # Repetitive calculations (to speed up calculations).
>>  g_fact = 1/sqrt(2)
>> @@ -161,11 +161,12 @@
>>      # Repetitive calculations (to speed up calculations).
>>      dw2 = dw**2
>>      two_tcp = 2.0 * tcp
>> -    sqrt_zeta2_Psi2 = sqrt(zeta**2 + Psi**2)
>>
>>      # Get the real and imaginary components of the exchange induced shift.
>> -    g3 = g_fact * sqrt( Psi + sqrt_zeta2_Psi2)
>> -    g4 = g_fact * sqrt(-Psi + sqrt_zeta2_Psi2)
>> +    # Trigonometric functions faster than square roots.
>> +    quad_zeta2_Psi2 = (zeta**2 + Psi**2)**0.25
>> +    g3 = cos(0.5 * arctan2(-zeta, Psi)) * quad_zeta2_Psi2
>> +    g4 = sin(0.5 * arctan2(-zeta, Psi)) * quad_zeta2_Psi2
>>
>>      # Repetitive calculations (to speed up calculations).
>>      g32 = g3**2
>>
>>
>> _______________________________________________
>> relax (http://www.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://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