mailRe: Error message and test failures from the relax test suites


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

Header


Content

Posted by Edward d'Auvergne on September 06, 2012 - 21:19:
Hi Nick,

There are two issues you are seeing here.  You are right about the
test suite, this is unrelated.  I'm not sure what the problem would be
there, that would require more of the output.  Would you be able to
create a bug report for your test-suite issue at
https://gna.org/bugs/?func=additem&group=relax ?  That would be much
appreciated.  If you run relax with:

$ relax --test-suite > log 2> err

The files 'log' and 'err' will contain much more information and can
be attached to the bug report.  Thanks!  Such a report will allow the
relax developers to track down the issue and fix it quickly for the
next relax version.

The second problem seems not to be with Maddy's data, but how you are
trying to read it in.  Unfortunately I don't know exactly how these
files look like, but I can guess from the messages that the problem is
in the script trying to read the data in.  This starts with your user
function call:

sequence.read(file='sequence.out', dir=None, spin_id_col=None,
mol_name_col=None, res_num_col=None, res_name_col=None,
spin_num_col=None, spin_name_col=2, sep=None, spin_id=None)

What really worries me here is that the residue number and name
columns are not specified.  I'm guessing that the format is that
specified by Maddy in her message
(http://thread.gmane.org/gmane.science.nmr.relax.user/1270):

Res_num Res_name        Spin_name
1       Trp     N
2       Trp    N

Therefore you need to set the residue number column to 1, the residue
name column to 2, and the spin name column to 3.  Otherwise the
sequence.read user function will not know what to do.  With the user
function being told that the spin name is in column 2, relax has
created a set of spins (or atoms) with the residue name used for the
spin (or atom) names - and as no molecule or residue has been
specified, all these spins are located within a single unnamed and
unnumbered residue!  You can see this in the print out.  All the spins
you have loaded have the molecule name set to None, the residue name
and number set to None, and the spin number set to None.  The spin
name column in the print out contains the residue names instead of the
spin names.

The next user function spectrum.read_intensities fails with messages such as:

RelaxWarning: Cannot find the spin :42@N within the sequence.

This is because relax is trying to locate the residue number 42 with
the spin name 'N' which is the first line in the peak list.  But there
has been no such spin created because of the bad arguments to the
sequence.read user function above, hence relax gives a warning saying
that it cannot find the spin for that data.

I have recently made relax throw a script terminating RelaxError from
the spectrum.read_intensities user function, which is the last message
you see.  My intent here is to stop you going too far and not
recognising that a fatal failure has occurred earlier in the script.

I would suggest that for each user function call in your script, that
you should very carefully read the documentation for that user
function (either in the user manual PDF file which came with relax,
online at 
http://www.nmr-relax.com/manual/Alphabetical_listing_user_functions.html,
or in the prompt mode by typing "help(sequence.read)").  Specifying
the correct arguments is extremely important, otherwise relax is
unable to interpret what you would like performed and it will
naturally fail.  Hopefully this will allow the script and relax to run
successfully.

Regards,

Edward




On 6 September 2012 20:44, Nicolas Doucet <nicolas.doucet@xxxxxxxxxxx> wrote:
Maddy,

Thanks a lot for your files. After deleting the output files, we tried to
run your T1 'as is' to no avail. As you can see from the message below, we
get an error very similar to the one we previously saw with our own files.
It cannot find spins within the sequence. Can you really run the files you
sent us without a single issue?

I'm starting to wonder whether our problem isn't related to software or
module installation. Are you running relax on linux? We're running
everything on Ubuntu 12.04 LTS with Python 2.7.3. We tried on 32-bit and
64-bit machines. No difference. I did install Python, NumPy, SciPy and
wxPython as dependencies and the GUI also works fine when I boot it up.
Perhaps I'm missing something.

Anyway, I also ran the relax test suites and I'm getting the following Monte
Carlo failures:

System/functional tests:

FAIL: test_monte_carlo_sims
(test_suite.system_tests.n_state_model.N_state_model)
Test the Monte Carlo simulation data of fitting RDCs and PCSs.

GUI tests:

FAIL: test_monte_carlo_sims
(test_suite.gui_tests.n_state_model.N_state_model)
Test the Monte Carlo simulation data of fitting RDCs and PCSs.

The 'unit test' is fine. However, the error message we're getting here is
clearly unrelated to any type of calculation. The software simply doesn't
recognize spins, which could make sense considering they're not written the
same way in your sequence.out and list files.

I'm a bit puzzled as to why it works for you and not for us.

Nick

--
Nicolas Doucet
Assistant Professor
INRS - Institut Armand-Frappier
University of Quebec
Institut Pasteur International Network
531 Boulevard des Prairies
Laval (Quebec) H7V 1B7 CANADA
Phone: (450) 687-5010 #4212
Fax: (450) 686-5501
Email: nicolas.doucet@xxxxxxxxxxx
Web: http://www.profs.inrs.ca/ndoucet/
--



Begin forwarded message:


                                           relax 2.1.0

                              Molecular dynamics by NMR data analysis

                             Copyright (C) 2001-2006 Edward d'Auvergne
                         Copyright (C) 2006-2012 the relax development team

This is free software which you are welcome to modify and redistribute under
the conditions of the
GNU General Public License (GPL).  This program, including all modules, is
licensed under the GPL
and comes with absolutely no warranty.  For details type 'GPL' within the
relax prompt.

Assistance in using the relax prompt and scripting interface can be accessed
by typing 'help' within
the prompt.

Processor fabric:  Uni-processor.

script = 'T1_curve_fit.py'
----------------------------------------------------------------------------------------------------
###############################################################################
#
#
# Copyright (C) 2004-2008 Edward d'Auvergne
#
#
#
# This file is part of the program relax.
#
#
#
# relax is free software; you can redistribute it and/or modify
#
# it under the terms of the GNU General Public License as published by
#
# the Free Software Foundation; either version 2 of the License, or
#
# (at your option) any later version.
#
#
#
# relax is distributed in the hope that it will be useful,
#
# but WITHOUT ANY WARRANTY; without even the implied warranty of
#
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
#
# GNU General Public License for more details.
#
#
#
# You should have received a copy of the GNU General Public License
#
# along with relax; if not, write to the Free Software
#
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
#
#
#
###############################################################################

# Script for relaxation curve fitting.
######################################


# Create the 'rx' data pipe.
pipe.create('rx', 'relax_fit')

# Load sequence and spins
sequence.read('sequence.out', spin_name_col=2)

# Spectrum names.
names = [
    'T1_0111',
    'T1_0333',
    'T1_0555',
    'T1_111',
    'T1_1998',
    'T1_333',
    'T1_4995',
    'T1_666',
    'T1_888',
]

# Relaxation times (in seconds).
times = [
    0.0111,
    0.0333,
    0.0555,
    0.111,
    0.1998,
    0.333,
    0.4995,
    0.666,
    0.888,
]

# Loop over the spectra.
for i in xrange(len(names)):
    # Load the peak intensities.
    spectrum.read_intensities(file=names[i]+'.list', spectrum_id=names[i],
int_method='height')

    # Set the relaxation times.
    relax_fit.relax_time(time=times[i], spectrum_id=names[i])

# Set the baseplane error
spectrum.baseplane_rmsd(error=461070, spectrum_id='T1_0111')
spectrum.baseplane_rmsd(error=437800, spectrum_id='T1_0333')
spectrum.baseplane_rmsd(error=440440, spectrum_id='T1_0555')
spectrum.baseplane_rmsd(error=426960, spectrum_id='T1_111')
spectrum.baseplane_rmsd(error=376040, spectrum_id='T1_1998')
spectrum.baseplane_rmsd(error=323600, spectrum_id='T1_333')
spectrum.baseplane_rmsd(error=262310, spectrum_id='T1_4995')
spectrum.baseplane_rmsd(error=212290, spectrum_id='T1_666')
spectrum.baseplane_rmsd(error=164550, spectrum_id='T1_888')

# Peak intensity error analysis.
spectrum.error_analysis()

# Deselect unresolved spins.
deselect.read(file='unresolved')

# Set the relaxation curve type.
relax_fit.select_model('exp')

# Grid search.
grid_search(inc=11)

# Minimise.
minimise('simplex', scaling=False, constraints=False)

# Monte Carlo simulations.
monte_carlo.setup(number=500)
monte_carlo.create_data()
monte_carlo.initial_values()
minimise('simplex', scaling=False, constraints=False)
monte_carlo.error_analysis()

# Save the relaxation rates.
value.write(param='rx', file='rx.out', force=True)

# Save the results.
results.write(file='results', force=True)

# Create Grace plots of the data.
grace.write(y_data_type='rx', file='rx.agr', force=True)    # Relaxation
rate.

# Display the Grace plots.
grace.view(file='rx.agr')

# Save the program state.
state.save('rx.save', force=True)
----------------------------------------------------------------------------------------------------

relax> pipe.create(pipe_name='rx', pipe_type='relax_fit', bundle=None)

relax> sequence.read(file='sequence.out', dir=None, spin_id_col=None,
mol_name_col=None, res_num_col=None, res_name_col=None, spin_num_col=None,
spin_name_col=2, sep=None, spin_id=None)
Opening the file 'sequence.out' for reading.
# mol_name    res_num    res_name    spin_num    spin_name
None          None       None        None        Res_name
None          None       None        None        Trp
None          None       None        None        Trp
None          None       None        None        Ser
None          None       None        None        Asn
None          None       None        None        Ser
None          None       None        None        Ser
None          None       None        None        Ala
None          None       None        None        Thr
None          None       None        None        Pro
None          None       None        None        Ile
None          None       None        None        Val
None          None       None        None        Gln
None          None       None        None        Phe
None          None       None        None        Gln
None          None       None        None        Gly
None          None       None        None        Glu
None          None       None        None        Ser
None          None       None        None        Asn
None          None       None        None        Cys
None          None       None        None        Leu
None          None       None        None        Lys
None          None       None        None        Cys
None          None       None        None        Phe
None          None       None        None        Arg
None          None       None        None        Tyr
None          None       None        None        Arg
None          None       None        None        Leu
None          None       None        None        Asn
None          None       None        None        Asp
None          None       None        None        Lys
None          None       None        None        His
None          None       None        None        Arg
None          None       None        None        His
None          None       None        None        Leu
None          None       None        None        Phe
None          None       None        None        Asp
None          None       None        None        Leu
None          None       None        None        Ile
None          None       None        None        Ser
None          None       None        None        Ser
None          None       None        None        Thr
None          None       None        None        Trp
None          None       None        None        His
None          None       None        None        Trp
None          None       None        None        Ala
None          None       None        None        Ser
None          None       None        None        Pro
None          None       None        None        Lys
None          None       None        None        Ala
None          None       None        None        Pro
None          None       None        None        His
None          None       None        None        Lys
None          None       None        None        His
None          None       None        None        Ala
None          None       None        None        Ile
None          None       None        None        Val
None          None       None        None        Thr
None          None       None        None        Val
None          None       None        None        Thr
None          None       None        None        Tyr
None          None       None        None        His
None          None       None        None        Ser
None          None       None        None        Glu
None          None       None        None        Glu
None          None       None        None        Gln
None          None       None        None        Arg
None          None       None        None        Gln
None          None       None        None        Gln
None          None       None        None        Phe
None          None       None        None        Leu
None          None       None        None        Asn
None          None       None        None        Val
None          None       None        None        Val
None          None       None        None        Lys
None          None       None        None        Ile
None          None       None        None        Pro
None          None       None        None        Pro
None          None       None        None        Thr
None          None       None        None        Ile
None          None       None        None        Arg
None          None       None        None        His
None          None       None        None        Ala
None          None       None        None        Leu
None          None       None        None        Gly
None          None       None        None        Phe
None          None       None        None        Met
None          None       None        None        Ser
None          None       None        None        Met
None          None       None        None        His
None          None       None        None        Leu
None          None       None        None        Leu

relax> spectrum.read_intensities(file='T1_0111.list', dir=None,
spectrum_id='T1_0111', heteronuc='N', proton='HN', int_method='height',
int_col=None, spin_id_col=None, mol_name_col=None, res_num_col=None,
res_name_col=None, spin_num_col=None, spin_name_col=None, sep=None,
spin_id=None, ncproc=None)
Opening the file 'T1_0111.list' for reading.
Sparky formatted data file.

Number of header lines found: 1
RelaxWarning: Cannot find the spin :42@N within the sequence.
RelaxWarning: Cannot find the spin :79@N within the sequence.
RelaxWarning: Cannot find the spin :35@N within the sequence.
RelaxWarning: Cannot find the spin :39@N within the sequence.
RelaxWarning: Cannot find the spin :80@N within the sequence.
RelaxWarning: Cannot find the spin :37@N within the sequence.
RelaxWarning: Cannot find the spin :49@N within the sequence.
RelaxWarning: Cannot find the spin :20@N within the sequence.
RelaxWarning: Cannot find the spin :26@N within the sequence.
RelaxWarning: Cannot find the spin :66@N within the sequence.
RelaxWarning: Cannot find the spin :30@N within the sequence.
RelaxWarning: Cannot find the spin :74@N within the sequence.
RelaxWarning: Cannot find the spin :36@N within the sequence.
RelaxWarning: Cannot find the spin :83@N within the sequence.
RelaxWarning: Cannot find the spin :29@N within the sequence.
RelaxWarning: Cannot find the spin :7@N within the sequence.
RelaxWarning: Cannot find the spin :31@N within the sequence.
RelaxWarning: Cannot find the spin :59@N within the sequence.
RelaxWarning: Cannot find the spin :71@N within the sequence.
RelaxWarning: Cannot find the spin :13@N within the sequence.
RelaxWarning: Cannot find the spin :75@N within the sequence.
RelaxWarning: Cannot find the spin :22@N within the sequence.
RelaxWarning: Cannot find the spin :68@N within the sequence.
RelaxWarning: Cannot find the spin :41@N within the sequence.
RelaxWarning: Cannot find the spin :67@N within the sequence.
RelaxWarning: Cannot find the spin :52@N within the sequence.
RelaxWarning: Cannot find the spin :4@N within the sequence.
RelaxWarning: Cannot find the spin :86@N within the sequence.
RelaxWarning: Cannot find the spin :10@N within the sequence.
RelaxWarning: Cannot find the spin :54@N within the sequence.
RelaxWarning: Cannot find the spin :88@N within the sequence.
RelaxWarning: Cannot find the spin :34@N within the sequence.
RelaxWarning: Cannot find the spin :60@N within the sequence.
RelaxWarning: Cannot find the spin :65@N within the sequence.
RelaxWarning: Cannot find the spin :57@N within the sequence.
RelaxWarning: Cannot find the spin :15@N within the sequence.
RelaxWarning: Cannot find the spin :78@N within the sequence.
RelaxWarning: Cannot find the spin :84@N within the sequence.
RelaxWarning: Cannot find the spin :25@N within the sequence.
RelaxWarning: Cannot find the spin :40@N within the sequence.
RelaxWarning: Cannot find the spin :56@N within the sequence.
RelaxWarning: Cannot find the spin :48@N within the sequence.
RelaxWarning: Cannot find the spin :61@N within the sequence.
RelaxWarning: Cannot find the spin :12@N within the sequence.
RelaxWarning: Cannot find the spin :53@N within the sequence.
RelaxWarning: Cannot find the spin :6@N within the sequence.
RelaxWarning: Cannot find the spin :43@N within the sequence.
RelaxWarning: Cannot find the spin :33@N within the sequence.
RelaxWarning: Cannot find the spin :72@N within the sequence.
RelaxWarning: Cannot find the spin :32@N within the sequence.
RelaxWarning: Cannot find the spin :16@N within the sequence.
RelaxWarning: Cannot find the spin :19@N within the sequence.
RelaxWarning: Cannot find the spin :11@N within the sequence.
RelaxWarning: Cannot find the spin :21@N within the sequence.
RelaxWarning: Cannot find the spin :58@N within the sequence.
RelaxWarning: Cannot find the spin :8@N within the sequence.
RelaxWarning: Cannot find the spin :28@N within the sequence.
RelaxWarning: Cannot find the spin :62@N within the sequence.
RelaxWarning: Cannot find the spin :45@N within the sequence.
RelaxWarning: Cannot find the spin :91@N within the sequence.
RelaxError: No data could be loaded from the peak list



_______________________________________________
relax (http://www.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 Tue Sep 18 15:20:12 2012