mailThe results file and deselected spin systems.


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

Header


Content

Posted by Edward d'Auvergne on December 21, 2006 - 15:32:
This post starts a new thread
(https://mail.gna.org/public/relax-devel/2006-12/threads.html) but is
a continuation of Chris' post
(https://mail.gna.org/public/relax-devel/2006-12/msg00030.html,
Message-id: <1166702448.7569.147.camel@mrspell>) of the thread started
by the bug #8059 report
(https://mail.gna.org/public/relax-devel/2006-12/msg00019.html,
Message-id: <20061219-144351.sv4125.40900@xxxxxxx>).  The subject of
the previous thread was "Re: [bug #8059] RelaxFault in eliminate()".


1 The results file

The concept of the relax results file is to contain every last bit of
data associated with the 'run' or the 'data pipe'.  The fact that the
file currently contains no data for deselected (or unselected) spin
systems is a design flaw on my part.  I made the assumption a very
long time ago that once a spin had been deselected that it was no
longer of interest and the data associated with it would be stale and
unreliable and hence would not be placed in the results file.  The
exclusion of the data in the file also allows you to quickly
discriminate between selected and deselected spins.  However that is
not the major purpose of the results file.  Therefore I suggest we
follow Chris' suggestion and change the model-free and reduced
spectral density mapping results file read and writing functions (the
other analyses do not implement these functions yet).


2 Robustness

One problem which may arise is that parts of the current functions may
not be robust enough to handle the situation whereby a spin system has
been deselected in the middle of the analysis.  I've tried to code it
so each bit of data put into the file is independent from other data
to avoid these issues.  I.e. it shouldn't matter how much data is
loaded or generated, where abouts you are up to in the analysis, or
even if there is zero data.  However if there are problems it can be
fixed.


3 Compatibility

Compatibility wise, assuming we put this into the 1.2 line, both
forwards and backwards compatibility must be considered.

Backwards compatibility:  The modifications to the 1.2 line must
preserve backwards compatibility.  The new relax version must be able
to read all previous 1.2.x version results files.

Forwards compatibility:  This is not necessary, i.e. relax 1.2.9 need
not be able to read a results file from relax 1.2.10.  Nevertheless if
the only difference between the two is that the rows of the deselected
spins are no longer truncated then forwards compatibility may occur
accidentally anyway.


4 Where to make the modifications

The modifications should go into the 1.3 repository line.  If you have
a look back at the subversion commit messages for the 1.2 line, you'll
see that the only changes which now occur within that line are ported
revisions of the 1.3 line.  The 1.2 line is in maintenance mode (I am
the current maintainer of that line, although that could change ;) and
only bug fixes, ported from 1.3, are placed in there.

One question I have is, do you see this fix as being important enough
to backport to 1.2?


5 Assignment

I'll be taking summer holidays off and won't be back for a couple of
weeks.  I'll leave the bug report (http://gna.org/bugs/?8059)
unassigned so if anyone would like to attempt make the modifications,
feel free to assign the bug to yourself.


Cheers,

Edward



On 12/21/06, Chris MacRaild <c.a.macraild@xxxxxxxxxxx> wrote:
On Thu, 2006-12-21 at 21:31 +1100, Edward d'Auvergne wrote:
> Chris,
>
> I've downloaded the saved state and have noticed something strange -
> there is no diffusion tensor data setup for models m6, m7, and m8?!?
> Would you be able to attach the full script (or scripts) used to get
> to this point?  Was the model-free data read out of results files?  I
> have a feeling that this missing data is the issue and that something
> prior to the eliminate() user function is causing the problem.

Indeed, I think this is the crux of the problem. The saved state is the
one triggered by the exception in debug mode. The scripts to get to this
point are just the sample scripts mf_multimodel.py and modsel.py, using
just 3 datasets and running over m0-m9.  It has just occured to me as I
write this that the problem likely lies with the reading and/or writing
of results files - the diffusion tensor is set up in mf_multimodel.py
for all runs, but not passed to modsel.py.

I've now just checked and ofcourse the results file contains no
diffusion tensor for un-selected residues, so it can't be read for
models m6-m8. So there are two solutions I can see: either we write
everything to the results file even for un-selected residues, or we
detect this state when reading the data and raise an error. The first
option seems most graceful?

Chris

>
> In the function 'self.determine_param_set_type()' of the file
> 'specific_fns/model_free.py', None is returned if no diffusion tensor
> has been setup.  I might change this to raise the RelaxNoTensorError
> instead of returning None so that the error message is more
> comprehensible than the RelaxFault.
>
> Edward
>
>
> On 12/20/06, Chris MacRaild <NO-REPLY.INVALID-ADDRESS@xxxxxxx> wrote:
> >
> > URL:
> >   <http://gna.org/bugs/?8059>
> >
> >                  Summary: RelaxFault in eliminate()
> >                  Project: relax
> >             Submitted by: macraild
> >             Submitted on: Tuesday 12/19/2006 at 14:43
> >                 Category: relax's source code
> >                 Severity: 3 - Normal
> >                 Priority: 5 - Normal
> >                   Status: None
> >                  Privacy: Public
> >              Assigned to: None
> >          Originator Name:
> >         Originator Email:
> >              Open/Closed: Open
> >          Discussion Lock: Any
> >                  Release: Other (missing version)
> >         Operating System: None
> >
> >     _______________________________________________________
> >
> > Details:
> >
> > Traceback:
> >
> > relax> eliminate(run=None, function=None, args=None)
> >
> > relax> state.save(file='relax_state_20061912_143734', dir=None, force=0,
> > compress_type=1)
> > Opening the file 'relax_state_20061912_143734.bz2' for writing.
> > Traceback (most recent call last):
> >   File "test_modsel.py", line 20, in ?
> >     eliminate()
> >   File "/home/chris/relax_devel/1.2/prompt/eliminate.py", line 97, in
> > eliminate
> >     self.relax.generic.eliminate.eliminate(run=run, function=function,
> > args=args)
> >   File "/home/chris/relax_devel/1.2/generic_fns/eliminate.py", line 56, in
> > eliminate
> >     for i in xrange(num_instances(self.run)):
> >   File "/home/chris/relax_devel/1.2/specific_fns/model_free.py", line 
2605,
> > in num_instances
> >     raise RelaxFault
> > RelaxFault: RelaxError: Impossible to be here, please re-run relax with 
the
> > '--debug' flag and summit a bug report at https://gna.org/projects/relax/.
> >
> >
> > The problem appears to be trigered when eliminate() is called with one or
> > more models without any selected residues.
> >
> > The saved state is attached.
> >
> >
> >
> >     _______________________________________________________
> >
> > File Attachments:
> >
> >
> > -------------------------------------------------------
> > Date: Tuesday 12/19/2006 at 14:43  Name: relax_state_20061912_143734.bz2
> > Size: 28kB   By: macraild
> >
> > <http://gna.org/bugs/download.php?file_id=1701>
> >
> >     _______________________________________________________
> >
> > Reply to this item at:
> >
> >   <http://gna.org/bugs/?8059>
> >
> > _______________________________________________
> >   Message sent via/by Gna!
> >   http://gna.org/
> >
> >
> > _______________________________________________
> > relax (http://nmr-relax.com)
> >
> > This is the relax-devel mailing list
> > relax-devel@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-devel
> >
>





Related Messages


Powered by MHonArc, Updated Thu Dec 21 15:40:29 2006