mailRe: Model-Free Results Output


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

Header


Content

Posted by Sébastien Morin on October 22, 2008 - 04:12:
Hi Tyler,

Could you tests if it is also reproduced using the 'ellipsoid'. Since
the parallel (diff_data.dpar) and perpendicular components of the
diffusion tensors don't exist in the 'ellpisoid', the error might not
arise, but other errors might be unmasked...

Regards,


Séb






Tyler Reddy wrote:
Hi Seb,

I just tested 'oblate' and it produces the same error output.

Tyler


Quoting Sébastien Morin <sebastien.morin.1@xxxxxxxxx>:

Hi Tyler,

Do you get the same error when trying the 'oblate' or 'ellipsoid'
diffusion tensors ?


Sébastien


Tyler Reddy wrote:
I'm having an issue with the full_analysis.py script. It seems to work
fine when
DIFF_MODEL = 'local_tm' or 'sphere' (converges on 4th round) but for
'prolate'
I get the following output:

Grid search
~~~~~~~~~~~

Searching the grid.
Traceback (most recent call last):
  File "/Applications/relax-1.3.1/relax-1.3/relax", line 408, in
<module>
    Relax()
  File "/Applications/relax-1.3.1/relax-1.3/relax", line 125, in
__init__
    self.interpreter.run(self.script_file)
  File "/Applications/relax-1.3.1/relax-1.3/prompt/interpreter.py",
line 270, in
run
    return run_script(intro=self.__intro_string, local=self.local,
script_file=script_file, quit=self.__quit_flag,
show_script=self.__show_script,
raise_relax_error=self.__raise_relax_er
  File "/Applications/relax-1.3.1/relax-1.3/prompt/interpreter.py",
line 531, in
run_script
    return console.interact(intro, local, script_file, quit,
show_script=show_script, raise_relax_error=raise_relax_error)
  File "/Applications/relax-1.3.1/relax-1.3/prompt/interpreter.py",
line 427, in
interact_script
    execfile(script_file, local)
  File "full_analysis.py", line 673, in <module>
    Main(self.relax)
  File "full_analysis.py", line 284, in __init__
    grid_search(inc=inc)
  File "/Applications/relax-1.3.1/relax-1.3/prompt/minimisation.py",
line 152,
in grid_search
    minimise.grid_search(lower=lower, upper=upper, inc=inc,
constraints=constraints, verbosity=verbosity)
  File
"/Applications/relax-1.3.1/relax-1.3/generic_fns/minimise.py", line
185,
in grid_search
    grid_search(lower=lower, upper=upper, inc=inc,
constraints=constraints,
verbosity=verbosity)
  File
"/Applications/relax-1.3.1/relax-1.3/specific_fns/model_free/mf_minimise.py",

line 479, in grid_search
    self.minimise(min_algor='grid', lower=lower, upper=upper, inc=inc,
constraints=constraints, verbosity=verbosity, sim_index=sim_index)
  File
"/Applications/relax-1.3.1/relax-1.3/specific_fns/model_free/mf_minimise.py",

line 987, in minimise
    results = generic_minimise(func=self.mf.func, dfunc=self.mf.dfunc,
d2func=self.mf.d2func, args=(), x0=param_vector, min_algor=min_algor,
min_options=min_options, func_tol=func_tol, g
l, maxiter=max_iterations, A=A, b=b, full_output=1,
print_flag=verbosity)
  File
"/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/minfx/generic.py",

line 319, in generic_minimise
    xk, fk, k = grid(func=func, args=args, grid_ops=min_options,
A=A, b=b, l=l,
u=u, c=c, print_flag=print_flag)
  File
"/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site-packages/minfx/grid.py",

line 129, in grid
    f = func(*(params,)+args)
  File "/Applications/relax-1.3.1/relax-1.3/maths_fns/mf.py", line
506, in
func_diff
    self.diff_data.calc_di(data, self.diff_data)
  File
"/Applications/relax-1.3.1/relax-1.3/maths_fns/direction_cosine.py",
line
64, in calc_spheroid_di
    data.dz = dot(data.xh_unit_vector, diff_data.dpar)
TypeError: unsupported operand type(s) for *: 'NoneType' and 'float'




Quoting Edward d'Auvergne <edward@xxxxxxxxxxxxx>:


Hi,

For the bug you mention, I've fixed this and the changes are in the
repository.  There were a few other issues to do with subsequent LaTeX
compilation and these have been fixed too.  You can see the new sample
script at:  http://svn.gna.org/viewcvs/relax/1.3/sample_scripts/

Regards,

Edward


On Tue, Oct 21, 2008 at 3:44 AM, Tyler Reddy <TREDDY@xxxxxx> wrote:

Hello,

1) I changed that line and I'm still having a bit of trouble (see
output
below).

2) The errors that I'm using are described as 'the standard error
for each
parameter... [which] is an easy calculation from the covariance
matrix.'
Paraphrasing from the author there--I'm guessing this isn't the
optimal
input?

3) I'm not sure it's explicitly stated in the manual, but I'm
proceeding on
the
assumption that you run the multi-model script first and then
modsel to
decide
on the right model for each given residue. A few weeks ago I was
experimenting
with this and if I didn't leave the global correlation time as
fixed the
computation seemed to take a VERY long time (unclear if it was
ever going to
finish).

Also, as a side note, since my peptide is actually in a micelle,
I'm not
sure if
there's anything extra I can do for diffusion tensor and
correlation time
type
stuff. I know some programs (i.e. the Mathematica notebooks by Dr.
Spyracopoulos) read in PDB files for diffusion tensor
calculations, but I
suspect it's a bit of a mess when the system is more complicated
than the
structure in the PDB file would suggest.

Output:

Latex()
----------------------------------------------------------------------------------------------------


relax> pipe.create(pipe_name='results', pipe_type='mf')

relax> results.read(file='results', dir=None)
Opening the file 'results' for reading.
Traceback (most recent call last):
 File "/Applications/relax-1.3.1/relax-1.3/relax", line 408, in
<module>
  Relax()
 File "/Applications/relax-1.3.1/relax-1.3/relax", line 125, in
__init__
  self.interpreter.run(self.script_file)
 File "/Applications/relax-1.3.1/relax-1.3/prompt/interpreter.py",
line 270,
in
run
  return run_script(intro=self.__intro_string, local=self.local,
script_file=script_file, quit=self.__quit_flag,
show_script=self.__show_script,
raise_relax_error=self.__raise_relax_error)
 File "/Applications/relax-1.3.1/relax-1.3/prompt/interpreter.py",
line 531,
in
run_script
  return console.interact(intro, local, script_file, quit,
show_script=show_script, raise_relax_error=raise_relax_error)
 File "/Applications/relax-1.3.1/relax-1.3/prompt/interpreter.py",
line 427,
in
interact_script
  execfile(script_file, local)
 File "latex_mf_table.py", line 220, in <module>
  Latex()
 File "latex_mf_table.py", line 68, in __init__
  self.table_body()
 File "latex_mf_table.py", line 186, in table_body
  self.file.write("%9.3f & %9.3f & " % (spin.s2, spin.s2_err))
AttributeError: 'SpinContainer' object has no attribute 's2_err'



Quoting Edward d'Auvergne <edward@xxxxxxxxxxxxx>:


Hi,

Using a new system test, I found one more bug in the script. 
This has
been fixed in the 1.3 repository line.  If you haven't used
subversion
to check out (and update) the 1.3 line, then you can see the changes
required in my commit at:

https://mail.gna.org/public/relax-commits/2008-10/msg00402.html

Just change the line starting with '-' to the line starting with
'+'.
Oh, it may take a few minutes for the link to be generated.

Regards,

Edward


On Mon, Oct 20, 2008 at 10:12 PM, Edward d'Auvergne
<edward@xxxxxxxxxxxxx> wrote:

Hi,

That's a bug in the sample script.  Try adding a ':' character
to the
end of line 171 in your script.  I've fixed this in the 1.3
repository
line and will try to add a system test to the program to try to
catch
any bugs before you do ;)

Cheers,

Edward



On Mon, Oct 20, 2008 at 9:27 PM, Tyler Reddy <TREDDY@xxxxxx> wrote:

I've been trying to use the latex python script on the aic
results file.
I get
the syntax error below. Not sure if I'm doing something wrong
or if
there's
just a small problem with that line of code:

Latex()

----------------------------------------------------------------------------------------------------

Traceback (most recent call last):
 File "/Applications/relax-1.3.1/relax-1.3/relax", line 408, in
<module>
  Relax()
 File "/Applications/relax-1.3.1/relax-1.3/relax", line 125, in
__init__
  self.interpreter.run(self.script_file)
 File "/Applications/relax-1.3.1/relax-1.3/prompt/interpreter.py",
line 270, in
run
  return run_script(intro=self.__intro_string, local=self.local,
script_file=script_file, quit=self.__quit_flag,
show_script=self.__show_script,
raise_relax_error=self.__raise_relax_error)
 File "/Applications/relax-1.3.1/relax-1.3/prompt/interpreter.py",
line 531, in
run_script
  return console.interact(intro, local, script_file, quit,
show_script=show_script, raise_relax_error=raise_relax_error)
 File "/Applications/relax-1.3.1/relax-1.3/prompt/interpreter.py",
line 427, in
interact_script
  execfile(script_file, local)
 File "latex_mf_table.py", line 171
  for spin, spin_id in spin_loop(return_id=True)
SyntaxError: invalid syntax










Quoting Edward d'Auvergne <edward@xxxxxxxxxxxxx>:


On Mon, Oct 20, 2008 at 5:12 PM, Tyler Reddy <TREDDY@xxxxxx>
wrote:

Hello,

1)

I have been using the multi model and model selection scripts in
relax 1.3.2 but
I have trouble displaying the output in a tabulated format. Both
scripts seem
to produce an xml document with various headers that isn't
easy to
read. It
looks like format='columnar' isn't supported. I wonder what
other
options I
have to look at this data? For some reason, I don't recall
having
this problem
on a Linux machine a few weeks ago (using a Mac OS 10.4 at the
moment), but
anyways it would be nice to get readable model-free output.

The results file is now in XML format and the more readable
'columnar'
format has been removed from the 1.3 line.  With the change to
the new
XML results file all the contents of a data pipe, irrespective
of what
that data is, is packaged.  So you can put data into this pipe
yourself and it will save that information (for advanced users,
complex python objects will need the to_xml() and from_xml()
methods
to package and unpackage the data).  The reason for removing the
'columnar' format was that it was considered too inflexible
for the
changes occuring in the 1.3 line, it contained duplicate
information,
had numerical precision issues, and there were alternatives to
easily
view this data.  You can use the value.display() and
value.write()
user functions to display and save the results for a single
parameter.
If needed, these user functions could be extended to accept a
list of
parameters.

Then there is the sample_scripts/latex_mf_table.py sample
script which
will generate a LaTeX table of the model-free results.  This
file can
be copied and modified - this requires learning a bit of
python - to
format and display the results any way you wish.  And finally if
anyone really wants to, and has the skills to, they can modify
this
sample script to recreate a version of the 'columnar' format. 
This
could be added to the relax sample scripts, and if their
skills are
very advanced, then much code from the 1.2 relax versions can be
recycled.



2)

The error input for the relaxation rate parameters is
currently my
non-linear
curve fitting standard deviation. I'm not sure if that means
subsequent
analysis will be completely incorrect? I guess it depends on the
comparison of
magnitude between these errors and the type of error that is
propagated by
relax during its own curve-fitting (which I am unable to do
at the
moment).

I'm guessing this is the sum of squared error value (SSE) from
the
fit.  Or is it a regression coefficient or a chi-squared
value?  Did
the fitting use a technique such as bootstrapping or jackknife
simulations to estimate the parameter errors via propagation? 
Or did
it use the covariance matrix?  If it is the SSE, chi-squared, or
regression coefficient then that value cannot be used.  This
will be
wildly wrong and cause massive failure in model selection.  It
will
cause big problems in optimisation, and if you are unlucky and
have
spaces with long, curved valleys or flat curved spaces leading
to the
minimum (that's model-free models m5 to m8 in most cases and
not so
uncommon in model m4) then the minimum can be squeezed and
appear in
another completely different region in the space.  It will
likely also
cause model failure issues, which although removed by the
eliminate()
user function, might discount the best solution.  I would
guess that
all of this will have a measurable affect on the final diffusion
tensor as well and, if so, this will cause the appearance of
artificial motions (my 2007 JBNMR paper at
http://dx.doi.org/10.1039/b702202f explains these problems in
detail).
If one is not careful with the errors and they are
significantly off,
then the result is that the results may not be real.  So I
would only
use the error if it comes from an established error propagation
technique (i.e. from data to parameter error propagation).

Regards,

Edward




_______________________________________________
relax (http://nmr-relax.com)

This is the relax-users mailing list
relax-users@xxxxxxx

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-users









_______________________________________________
relax (http://nmr-relax.com)

This is the relax-users mailing list
relax-users@xxxxxxx

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-users





_______________________________________________
relax (http://nmr-relax.com)

This is the relax-users mailing list
relax-users@xxxxxxx

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-users










Related Messages


Powered by MHonArc, Updated Wed Oct 22 10:20:57 2008