Hi, I have an idea as to how this multi-column formatted file can be handled. What could be done is simply to expand the scope of the user function args - increasing the flexibility of relax. The relax_fit and int_col arguments could be allowed to be lists rather than just a float and an int. Then you could use: relax_fit.read(file="generic.txt", dir=sys.path[-1] + "/test_suite/shared_data/peak_lists", format='generic', int_col=[5, 6, 7], relax_time=[0.0109016, 0.0218032, 0.0436064]) This allows a single file to be read and all data extracted by one user function call. Of course the argument tests would be more complex. If one arg is a list, then so must the other be. They must both be the same size. And the elements of the int_col list must all be integers and those of relax_time must be floats. This idea is similar to what the value.set() user function employs. I would highly recommend setting up unit tests for this argument checking in test_suite/unit_tests/_prompt/ before even thinking of implementing this. Alternatively the current user function can be used as is but just called 10 times, changing the int_col and relax_time args each time. I think the list args would be the best solution to match how relax currently operates. Regards, Edward P.S. As another test, maybe the spin name column can be completely removed to see if the user function can handle missing elements. On Fri, 2008-10-17 at 18:23 +0000, sebastien.morin.1@xxxxxxxxx wrote:
Author: semor Date: Fri Oct 17 20:22:59 2008 New Revision: 7799 URL: http://svn.gna.org/viewcvs/relax?rev=7799&view=rev Log: Added prototypes for the generic peak intensities file. Only two files will be needed, instead of one file per delay. The first file (generic_delay.txt) will contain the different delays. The second file (generic_intensity.txt) will contain the peak intensities. There may also be a way of including all this information in one single file... maybe by putting the delays in the header ? This would be even simpler for the user who would only need to input 1 single file. Added: 1.3/test_suite/shared_data/peak_lists/generic_delays.txt 1.3/test_suite/shared_data/peak_lists/generic_intensity.txt Added: 1.3/test_suite/shared_data/peak_lists/generic_delays.txt URL: http://svn.gna.org/viewcvs/relax/1.3/test_suite/shared_data/peak_lists/generic_delays.txt?rev=7799&view=auto ============================================================================== --- 1.3/test_suite/shared_data/peak_lists/generic_delays.txt (added) +++ 1.3/test_suite/shared_data/peak_lists/generic_delays.txt Fri Oct 17 20:22:59 2008 @@ -1,0 +1,10 @@ +intensity_1 0.0109016 +intensity_2 0.0218032 +intensity_3 0.0436064 +intensity_4 0.0436064 +intensity_5 0.0872128 +intensity_6 0.1744260 +intensity_7 0.3488510 +intensity_8 0.6977020 +intensity_9 1.3954000 +intensity_10 1.9949900 Added: 1.3/test_suite/shared_data/peak_lists/generic_intensity.txt URL: http://svn.gna.org/viewcvs/relax/1.3/test_suite/shared_data/peak_lists/generic_intensity.txt?rev=7799&view=auto ============================================================================== --- 1.3/test_suite/shared_data/peak_lists/generic_intensity.txt (added) +++ 1.3/test_suite/shared_data/peak_lists/generic_intensity.txt Fri Oct 17 20:22:59 2008 @@ -1,0 +1,7 @@ +mol_name res_num res_name spin_num spin_name intensity_1 intensity_2 intensity_3 intensity_4 intensity_5 intensity_6 intensity_7 intensity_8 intensity_9 intensity_10 + +None 20 GLY None N 1.0000 0.9714 0.9602 0.9626 0.8839 0.8327 0.7088 0.5098 0.2410 0.1116 +None 23 ALA None N 1.0000 0.9789 0.9751 0.9762 0.9074 0.8532 0.7089 0.5170 0.2444 0.1537 +None 34 CYS None N 1.0000 0.9659 0.9580 0.9559 0.9325 0.8460 0.7187 0.5303 0.2954 0.1683 +None 35 MET None N 1.0000 0.9657 0.9389 0.9366 0.9331 0.8683 0.7169 0.5357 0.2769 0.1625 +None 36 LYS None N 1.0000 1.0060 0.9556 0.9456 0.9077 0.8411 0.6788 0.4558 0.2448 0.1569 _______________________________________________ relax (http://nmr-relax.com) This is the relax-commits mailing list relax-commits@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-commits