On Wed, Oct 15, 2008 at 2:28 PM, Sébastien Morin
<[EMAIL PROTECTED]> wrote:
> Hi Ed,
>
> WOW ! I noticed the differences for local parameters between the two
> versions, but never tested a completed diffusion tensor optimization...
> The differences are huge ! They're so big that users should probably
> tell which version they used when publishing... i.e.
> ModelFree-4.20-Portland or ModelFree-4.20-gcc...

Well, it's using Powell optimisation for the diffusion tensor, and if
you look at the pictures in my thesis of this space:

http://dtl.unimelb.edu.au:80/R/-?func=dbin-jump-full&amp;object_id=67077&amp;current_base=GEN01
http://eprints.infodiv.unimelb.edu.au/00002799/01/thesis.pdf
http://dtl.unimelb.edu.au:80/webclient/DeliveryManager?application=DIGITOOL-3&owner=resourcediscovery&custom_att_2=simple_viewer&pid=67077

Or even the hard copy ;)

http://www.amazon.com/Protein-Dynamics-Model-free-Analysis-Relaxation/dp/3639057627/ref=sr_1_6?ie=UTF8&s=books&qid=1219247007&sr=8-6

I think you'll find that Powell optimisation is going to really,
really struggle with this convoluted space!  Actually, that clumsy
algorithm together with low precision is going to be severely
punished.  I would suggest that users use the better and higher
precision optimisation availible in relax for the diffusion tensor
(and model-free analysis as well ;).


> Also, maybe you're right, maybe the speed is not the best test for
> quality here...
>
> What do you think about simply printing a few lines summarising the text
> below in the user manual, hence in the code as some comments ?

This could be done.  I don't know what approach to use though.  In
reality users should use relax to optimise the tensor.  Dasha and
Modelfree4 don't collapse the glide reflection and translational
symmetries of the space, so solutions cannot be compared.  Worse
though is that the spherical and Euler angle conventions are not know
for either program.  Do they fold angles between 0 and 2pi?  Or -pi
and pi?  Are mirror symmetries flipped when folding between 0 and pi
(or is that -pi/2 and pi/2) for the polar or beta angles?  There's so
much missing tensor information in these programs results files, that
you actually cannot reconstruct the tensor in 3D space, let alone
compare results with relax!  Although the full tensor is present,
there are many angle conventions out there.  Is the polar angle
defined between 0 and pi, or -pi/2 and pi/2?  Which of the many, many
Euler angle conventions are being used?  Unless you state the angle
range and convention, they are useless.  You can see this in the
diffusion_tensor.init() user function docstring in relax.  Note that
this is the source of the observation that the diffusion tensor taken
from the program Tensor as a starting point for model-free analysis is
shifted around wildly by the Modelfree program.  I don't think any of
the programs - Modelfree4, Dasha, Tensor, DYNAMICS, relax, etc. use
the same convention.

But there are many people who will simply want to use Art Palmer's
software rather than relax.  I don't know what we should recommend to
them.  I personally would say use relax and not Modelfree4.  Maybe we
could point out the flaws in Modelfree, but that will appear quite
negative.

Or maybe we could put some synthetic data into the manual.  Then we
could say this corresponds to a diffusion tensor of these specific
values, with this type of internal model-free motion.  Then let the
user, as an exercise, optimise this using which ever program they wish
- and then let them see first hand what is going on.  Again that will
appear negative, simply because they will no longer be blind ;)

So, I really don't know what to do, apart from simply recommending to
use relax.  And if they are to stubborn, then that is their choice.
And they can still use relax to control Modelfree4 if they wish.

Regards,

Edward


>
> Ciao
>
>
> Séb
>
>
> Edward d'Auvergne wrote:
>> Hi,
>>
>> I've noticed this difference too.  But I think I'm too much of a
>> Fortran sceptic!  A long time ago, I went through the Modelfree4
>> source code with a fine toothed comb and found 4 bugs in there.  A few
>> of these were code issues which had no effect on the Portland compiler
>> (well the compilation part anyway) but was causing gcc to complain
>> loudly.  Rightfully so as there was an undeclared variable used as a
>> counter in a loop - it's value was garbage.  One of the bugs was a
>> problem with the Levenberg-Marquardt algorithm and that, together with
>> the other problems found in:
>>
>> d'Auvergne, E. J. and Gooley, P. R. (2008). Optimisation of NMR
>> dynamic models I. Minimisation algorithms and their performance within
>> the model-free and Brownian rotational diffusion spaces. J. Biomol.
>> NMR, 40(2), 107-119. (http://dx.doi.org/10.1007/s10858-007-9214-2)
>>
>> was the reason for Modelfree 4.20 to be released.  The other bugs
>> caught by gcc, and the undeclared variable were the reason for
>> Modelfree 4.16 
>> (http://cpmcnet.columbia.edu/dept/gsas/biochem/labs/palmer/software/modelfree.html).
>>  So I'm not sure if the speed of the two binaries is the best measure
>> of quality.  It could be that the Portland version is faster due to a
>> bug.  Or that the gcc one is slower due to higher precision.  Who
>> knows?
>>
>> I'm not sure how we could advise the user.  Maybe a print out at the
>> start of palmer.execute()?  I think it would be best to advise the
>> user to only use Modelfree4 as a test and that it should be compared
>> to the much higher precision - hence slower - relax results.  It might
>> also be worth stating that the Portland and gcc versions give
>> different results.  Eg in the system test I created for it, one finds
>> the diffusion tensors:
>>
>> gcc:
>> tm = 8.964
>> Dratio = 1.324
>> theta = -52.070
>> phi = 2.377
>>
>> Portland:
>> tm = 8.443
>> Dratio = 1.053
>> theta = 68.864
>> phi = 73.913
>>
>> There is no glide or reflection symmetry here, so the results are
>> quite different.
>>
>> 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
>

_______________________________________________
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