mailRE: MF_Multimodel


Others Months | Index by Date | Thread Index
>>   [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Header


Content

Posted by Tiago Pais on December 08, 2009 - 20:13:
Hi Edward,
Any luck with my reported bugs?
Cheers,
TiagoP

-----Original Message-----
From: edward.dauvergne@xxxxxxxxx [mailto:edward.dauvergne@xxxxxxxxx] On
Behalf Of Edward d'Auvergne
Sent: sábado, 28 de Novembro de 2009 20:34
To: Tiago Pais
Cc: relax-users@xxxxxxx
Subject: Re: MF_Multimodel

2009/11/28 Tiago Pais <tpais@xxxxxxxxxxx>:
Well, I am getting a bit frustrated with all this.

Hi,

I'm sorry to hear this.  I'll try to help you below.


I am trying to run the mf_multimodel script just to make the model
selection
and the determination of S2 values.
I want the diffusion tensor parameters to be fixed since I have calculated
them before using another program - I am using a rhombic model and 15N
relaxation data at one field only. My idea is to compare the results
obtained with Relax and this other program that I have used before
(Tensor2).

First note that both I and in Art Palmer's works, we recommend
multiple iterations of optimising the model-free models, model
selection, and then optimising the diffusion tensor.  The reason is
because the initial estimate is usually not exactly what is happening
in the NMR tube.  This is quite important.  Another problem is that
there are so many different ways of specifying the tensor, and most
programs that can calculate a tensor don't give you enough information
for fully defining the thing.  E.g.  Blackledge's Tensor program and
Art Palmer's Modelfree program use different definitions for the
spherical angles for the spheroids and Euler angles for the ellipsoids
(good luck finding these).  Therefore with the iterative procedure,
you can watch the tensor rotate to the correct position.  Unless you
know the Euler angle convention, exactly how the geometric parameters
are defined (Da, Dr, R, etc.), what the spherical angle convention is
(i.e. on which axis is the azimuthal angle zero), if the polar angle
is defined between -pi/2 -> pi/2 or 0 -> pi, etc., you cannot take a
tensor from one program and use it in another.  This approach will
fail.

The mf_multimodel.py script is only a short, old script used to build
something more complex with iterative optimisation.  It should be
combined with model-free model selection (like in modsel.py), and then
diffusion tensor optimisation.  Finally this should be repeated until
the diffusion tensor stops moving.



Problems:
1s- Program does not recognize atoms HZ and HH in the pdb. Found out that
probably should be using HT when looking at the internal.py - Solved

Here you have the choice of 2 PDB readers - the one that comes with
Scientific python and a very basic internal one I wrote myself (as
Scientific python is horrible for small organic molecules).  If the
internal one doesn't work, Scientific might.  PDB readers are complex
beasts though, as the PDB format is highly abused.

I've now added 'HZ' and 'HH' to the internal reader
(http://svn.gna.org/viewcvs/relax/1.3/generic_fns/structure/internal.py?rev=
10010&view=log),
but this is only used to determine that they are protons.  These lists
are far from complete.  Note that the element symbol should be in the
PDB file at positions 77-78 of the line.  If not, then the PDB reader
has to start guessing what the element is - therein lies the problem!

Note that you can specify what the isotope is using the value.set()
user function.  The exact element is, from memory, only used when
calculating the centre of mass, so I don't think this is very
important for what you are calculating.  It really depends what you
are doing here.  HH appears only to be the hydroxyl proton in Tyr and
the terminal NH2 protons in Arg.  HZ is attached to CZ in Phe, the
terminal NH3 protons in Lys, and protons attached to carbons in Trp.
Are you measuring NH2 and NH3 relaxation?  If so, which theories would
you like to use to interpret the data?


2nd-Program has some issue with the CONECT lines of the pdb file. Although
I
have checked in internal.py file that the format is the one described
there
-Ended up removing all lines with CONECT in the pdb (I know it is bad but
I
was just trying to put the thing running)

The Scientific python reader, like Molmol, thinks that you don't know
what you are talking about when you supply it with a molecule with
CONECT records, that you must be wrong, and then tries to go and
invent its own atomic connections!!!  The internal reader accepts
these CONECT records perfectly.  An easy test is to read in the PDB
file with CONECT records with the internal reader and then write it
out again.  They should be preserved.  If not, this is a bug which can
be reported at https://gna.org/bugs/?func=additem&group=relax which I
can then repair.


3rd- mf_multimodel complains about seting the "fixed" parameter of the
tensor settings to "True" so I changed it to False to let the tensor to be
optimized - the script now runs until the end

Can you make a bug report for this?  This should be allowed - and if
not it is a bug.


4th- The result files are empty, that is, they don't have any information
other than the one I have provided for the tensor (although I can't see
the
Euler angle values). The S2 fields are all showing "none".

This could be related to point 3 above.  Did you see any optimisation
when running the script?  Were there any RelaxWarning messages anyway
through the analysis?  My guess is that you will have a warning
because something was not exactly right with the script.


Any idea what the problem is? Is there another way to visualize the XML
result files other than the almost raw tree format? This is not at all
practical, global visualization is impossible and I cant import the
results
to an excel file. I have tried Michaels' script, final_data_extraction,
but
got stuck with an error about "spin_id".

There are a series of *.display() user functions that can be used to
see individual values.  E.g. value.display() and
diffusion_tensor.display().  The XML version is for data storage, and
not designed for being a compact representation of the data.  It is
human readable though, just not the most efficient way to see the data
using human eyes.  You can also use value.write() if you would like
the individual data dumped into a file.  More powerful methods exist
if you know a bit of scripting - using the relax supplied spin_loop()
construct but this is not necessary (if you are interested, have a
look at the latex_mf_table.py script for inspiration).


Sorry for the long text, but I am really close to solve some analysis
issues
and I am getting stuck with this little annoying things!
If anyone could help I would be most greatfull.

I hope my answers have helped a little.  Please don't hesitate to ask
if anything was unclear or if other issues arise.

Cheers,

Edward




Related Messages


Powered by MHonArc, Updated Mon Dec 14 23:00:11 2009