Author: semor Date: Tue Dec 2 22:53:27 2008 New Revision: 8097 URL: http://svn.gna.org/viewcvs/relax?rev=8097&view=rev Log: Continued the implementation of the reading of the generic peak intensity file. The delays and intensities can now be read for the different peaks. The remaining tasks include passing these information (delays + intensities) to relax... Modified: 1.3/generic_fns/spectrum.py Modified: 1.3/generic_fns/spectrum.py URL: http://svn.gna.org/viewcvs/relax/1.3/generic_fns/spectrum.py?rev=8097&r1=8096&r2=8097&view=diff ============================================================================== --- 1.3/generic_fns/spectrum.py (original) +++ 1.3/generic_fns/spectrum.py Tue Dec 2 22:53:27 2008 @@ -38,6 +38,7 @@ from relax_errors import RelaxError, RelaxArgNotInListError, RelaxImplementError, RelaxNoSequenceError from relax_io import extract_data, strip from relax_warnings import RelaxWarning, RelaxNoSpinWarning +from specific_fns.relax_fit import Relax_fit def __errors_height_no_repl(): @@ -410,7 +411,7 @@ __errors_repl() -def intensity_generic(line, int_col): +def intensity_generic(line, int_col, file_data_header): """Function for returning relevant data from the generic peak intensity line. The residue number, heteronucleus and proton names, and peak intensity will be returned. @@ -449,7 +450,13 @@ #h_name = '' #h_name = line[5] - ## The peak intensity column. + # Extract both delays and associated intensities. + i = 0 + while i < num_delays: + i = i + 1 + delay = file_data_header[0][i + 4] + intensity = line[i + 4] + Relax_fit.relax_time(time=file_data_header[0][i + 6], spectrum_id=line[i + 6]) ## Intensity. #try: @@ -775,6 +782,11 @@ num = number_of_header_lines(file_data, format, int_col, intensity_fn) print "Number of header lines found: " + `num` + # Store the header (if using the generic file type). + if format == 'generic': + file_data_header = file_data[:num] + file_data_header = strip(file_data_header) + # Remove the header. file_data = file_data[num:] @@ -796,7 +808,10 @@ # Loop over the peak intensity data. for i in xrange(len(file_data)): # Extract the data. - res_num, H_name, X_name, intensity = intensity_fn(file_data[i], int_col) + if format == 'generic': + res_num, H_name, X_name, intensity = intensity_fn(file_data[i], int_col, file_data_header) + else: + res_num, H_name, X_name, intensity = intensity_fn(file_data[i], int_col) # Skip data. if X_name != heteronuc or H_name != proton: