On Tue, Oct 7, 2008 at 7:48 PM, Tyler Reddy <TREDDY@xxxxxx> wrote:
Hi Edward, Thanks for your continued patience.
That's okay, it's not a problem.
Okay, it seems that aligning the data height column by the left most digit rather than the right most digit is not tolerated. Now the script (1.2) almost gets to the end, but there is still an error output, where the program opens noe.out for writing (see below). The noe.out file is created, but it's blank. Assuming I can get functional input for the 1.2 version (which is supposed to work), if this input doesn't work for the 1.3 version I'm happy to submit the bug report at that stage.
relax simply splits the text file by whitespace so alignment is only an issue if columns fuse. I think there is another issue somewhere. I've tried the analysis with some of my old data, but I get the following error: relax> calc(run='noe', print_flag=1) relax> value.write(run='noe', param='noe', file='noe.out', dir=None, force=1) Opening the file 'noe.out' for writing. Traceback (most recent call last): File "/data/relax/releases/relax-1.2.14/relax", line 457, in <module> Relax() File "/data/relax/releases/relax-1.2.14/relax", line 167, in __init__ self.interpreter.run() File "/data/relax/releases/relax-1.2.14/prompt/interpreter.py", line 216, in run run_script(intro=self.relax.intro_string, local=self.local, script_file=self.relax.script_file, quit=1) File "/data/relax/releases/relax-1.2.14/prompt/interpreter.py", line 391, in run_script console.interact(intro, local, script_file, quit) File "/data/relax/releases/relax-1.2.14/prompt/interpreter.py", line 343, in interact_script execfile(script_file, local) File "noe.py", line 29, in <module> value.write(name, param='noe', file='noe.out', force=1) File "/data/relax/releases/relax-1.2.14/prompt/value.py", line 506, in write self.__relax__.generic.value.write(run=run, param=param, file=file, dir=dir, force=force) File "/data/relax/releases/relax-1.2.14/generic_fns/value.py", line 537, in write self.write_data(file, return_value) File "/data/relax/releases/relax-1.2.14/generic_fns/value.py", line 549, in write_data self.function_type = self.relax.data.run_types[self.relax.data.run_names.index(run)] ValueError: list.index(x): x not in list This is exactly what you see. So I then tested this on many previous relax releases and found that all versions up to 1.2.12 function properly. This error is a regression which appeared in the 1.2.13 version and still exists in 1.2.14. So a temporary but quick fix would be to do the NOE analysis using relax-1.2.12. For relaxation curve fitting and model-free analysis, the 1.3.1 version can be used (there are system tests for these analyses there so this is much less likely to fail). I'm sorry if this caused inconveniences, I have no idea how this error was introduced. I've created a bug report for this issue (https://gna.org/bugs/index.php).
Also, I think it would be very useful if a sample of functional input data, as you supplied for me in the previous email, would be incorporated in the relax manual. Different labs can have different naming conventions and formats, even within a Sparky list, and the column alignment can be tricky (even if trivial once you know about it). Also, if there is sensitivity to the nomenclature system employed (as some of your previous responses on this topic attest), then an example directly in the manual would definitely be appreciated. I know that part of the design philosophy is that it's very easy to incorporate new format tolerance into relax, but it's even faster for a new user who uses a slightly different format to just read the relevant section of the manual and format that way.
Done, I've added exactly the text you suggest (https://mail.gna.org/public/relax-commits/2008-10/msg00079.html). Thanks for the idea, that should be of help to others as well. Don't worry about creating a bug report for relax-1.3.x as I'm now in the process of creating a system test for the NOE analysis using a subset of my old data. Cheers, Edward