mailRe: crash on save in 1.3.0 tag


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

Header


Content

Posted by Edward d'Auvergne on April 10, 2007 - 12:35:
On 4/10/07, Gary S. Thompson <garyt@xxxxxxxxxxxxxxx> wrote:
Edward d'Auvergne wrote:

> Hi,
>
> I'm sorry that I was unable to respond to emails last week.  That week
> was my last at Melbourne Uni and I had to pack and prepare for my
> postdoc position in Europe which will be starting soon.
>
can you give us details?

Well, I'll be working as a postdoc in the laboratory of Prof.
Christian Griesinger in Goettingen, Germany.  I'll be continuing with
the study of protein dynamics using NMR but until the project is
underway and the details are more concrete I shouldn't say much more
than that ;)


> As for the error, I'm not sure what is happening.



we think we do now ;-)

> Each Element
> container corresponding to a residue for which relaxation data has
> been loaded must have the 'num_ri' variable.  The script is definitely
> not the source of the error and I can't find the problem reported in
> the bug tracker (https://gna.org/bugs/?group=relax).  Would you like
> to have a go at trying to find the bug Gary?  Could you run the script
> using relax version 1.2.10, 1.3.0, or the 1.2 repository line to see
> if the bug is located in that code as well or if it is something which
> is solely found in the code of the multi_processor branch?


Its not a multiprocessor specific bug because it appears in the 1.3.0
tag. It appears that in  write_columnar_results


                    /# No simulation values.
/                    *else*:
                        /# Sphere.
/                        *if* self.relax.data.diff[self.run].type == 
*'sphere'*:
                            diff_params = [None]

                        /# Spheroid.
/                        *elif* self.relax.data.diff[self.run].type == 
*'spheroid'*:
                            diff_params = [None, None, None, None]

                        /# Ellipsoid.
/                        *elif* self.relax.data.diff[self.run].type == 
*'ellipsoid'*:
                            diff_params = [None, None, None, None, None, None]

                /# Loop over the sequence.
/                *for* j *in* xrange(len(self.relax.data.res[self.run])):
                    /# Reassign data structure.
/                    data = self.relax.data.res[self.run][j]

                    /# Model details.
/                    model = None
                    *if* hasattr(data, *'model'*):
                        model = data.model

                    equation = None
                    *if* hasattr(data, *'equation'*):
                        equation = data.equation


we should have

                /# Loop over the sequence.
/                *for* j *in* xrange(len(self.relax.data.res[self.run])):
                    /# Reassign data structure.
/                    data = self.relax.data.res[self.run][j]

                    if not data.selected:
                        continue

which avoids writing mc data for residues with no relaxation data (the
data sets I was using were some of the ones chris cooked up for
'selection' problems). I can test this against a 1.2  version but I have
no idea what revison  to try against. Chris isn't sure either. I also
don't have any data (old 'correct' montecarlo results files) which I can
test the current behaviour against.

The skipping in the results file should not occur.  There should be a
line for each deselected spin system as well.  This stores all the
info on that spin.  For example the deselection could be temporary and
there could be much data associated with that spin that you could use
later on.  The problem is elsewhere, and I think I have just spotted
it.

The structure of the write_columnar_results() function is divided into
4 sections: the header, the value, the error, and the simulation.
This mirrors the results file.  The problem could be that the code for
assembling the relaxation data in the value section and the simulation
section is different!  In the first, the structure 'num_ri' is checked
for and the section skipped if it does not exist.  In the second, the
test is absent.  I'll make changes to the multi_processor branch to
see if they will work.  If it fixes the bug, I'll hand port it to the
1.2 and 1.3 lines.  Otherwise Gary, could you revert the revision.
One other thing, could you make a bug report for the problem Gary?
This will very useful for others who encounter the problem to see that
it has been fixed (or is in the process of being fixed).

Thanks,

Edward



Related Messages


Powered by MHonArc, Updated Thu Apr 12 09:40:39 2007