Dear Atul. Please use the support tracker when you upload files. The email list is fragile, and cannot handle email attachment.
I made small modifications to your script. I normally split them up. 1st script for setup, and printing stuff to check. 2nd script, which just call the previous script, and run analysis. So, I would: relax 1_setup_r1rho.py to check everything. When I am happy, I just: relax 2_pre_run_r2eff.py which call script 1, setup, and then run. Did you know you can also: relax 1_setup_r1rho.py -p This runs the script, and enters terminal. Like "python -i script.py" Any variable saved in the "cdp" can be accessed. Try: relax 1_setup_r1rho.py -p print cdp.temp You can also run relax with the debug option "-d" relax 2_pre_run_r2eff.py -d This gives more information about where the error is. Anyway. The problem seems related to, that you only have one reference intensity per offset. ----1_setup_r1rho.py # Python module imports. from os import sep, getcwd # relax module imports. from pipe_control.mol_res_spin import generate_spin_string, return_spin, spin_loop from specific_analyses.relax_disp.data import average_intensity, generate_r20_key, get_curve_type, has_exponential_exp_type, has_r1rho_exp_type, loop_exp_frq, loop_exp_frq_offset_point, loop_exp_frq_offset_point_time, loop_time, return_grace_file_name_ini, return_param_key_from_data # Set up the data pipe. ####################### # The path to the data files. DATA_PATH = getcwd() # Create the data pipe. pipe_name = 'base pipe' pipe_bundle = 'relax_disp' pipe.create(pipe_name=pipe_name, bundle=pipe_bundle, pipe_type='relax_disp') # Read the spins from a spectum file instead. This already contain the spin name. spectrum.read_spins(file='2100_off_reso_R1rho.list', dir=DATA_PATH) # Set the isotope information. spin.isotope(isotope='15N') # Loop over spins, to see current setup. for cur_spin, mol_name, resi, resn, spin_id in spin_loop(full_info=True, return_id=True, skip_desel=True): print mol_name, resi, resn, spin_id print " " print cur_spin # The spectral data - spectrum ID, peak list file name, spin-lock field strength (Hz), the spin-lock offset (ppm), the relaxation time (s), spectrometer frequency (Hz), and experimental error (RMSD of the base plane noise for each spectrum). data = [ ['ref_off_reso_R1rho', 'ref_off_reso_R1rho.list', None, 150.87, 0.320, 900.21422558574e6, 90000.0], ['2100_off_reso_R1rho', '2100_off_reso_R1rho.list', 1500.0, 141.01, 0.320, 900.21422558574e6, 90000.0], ['2728_off_reso_R1rho', '2728_off_reso_R1rho.list', 1500.0, 147.89, 0.320, 900.21422558574e6, 90000.0], ['3357_off_reso_R1rho', '3357_off_reso_R1rho.list', 1500.0, 154.78, 0.320, 900.21422558574e6, 90000.0], ['3985_off_reso_R1rho', '3985_off_reso_R1rho.list', 1500.0, 161.66, 0.320, 900.21422558574e6, 90000.0], ['4614_off_reso_R1rho', '4614_off_reso_R1rho.list', 1500.0, 168.55, 0.320, 900.21422558574e6, 90000.0], ['5242_off_reso_R1rho', '5242_off_reso_R1rho.list', 1500.0, 175.43, 0.320, 900.21422558574e6, 90000.0], ['5871_off_reso_R1rho', '5871_off_reso_R1rho.list', 1500.0, 182.32, 0.320, 900.21422558574e6, 90000.0], ['6500_off_reso_R1rho', '6500_off_reso_R1rho.list', 1500.0, 189.21, 0.320, 900.21422558574e6, 90000.0] ] # Loop over the spectra. for id, file, field, offset, relax_time, H_frq, rmsd in data: print("\n###############") print("id=%s, field=%s, offset=%3.2f, time=%1.3f, frq=%3.1f, rmsd=%3.2f" % (id, field, offset, relax_time, H_frq/1e6, rmsd) ) # Load the peak intensities and set the errors. spectrum.read_intensities(file=file, dir=DATA_PATH, spectrum_id=id, int_method='height') spectrum.baseplane_rmsd(spectrum_id=id, error=rmsd) # Set the relaxation dispersion experiment type. relax_disp.exp_type(spectrum_id=id, exp_type='R1rho') # Set the relaxation dispersion spin-lock field strength (nu1). relax_disp.spin_lock_field(spectrum_id=id, field=field) # Set the spin-lock offset. relax_disp.spin_lock_offset(spectrum_id=id, offset=offset) # Set the relaxation times (in s). relax_disp.relax_time(spectrum_id=id, time=relax_time) # Set the NMR field strength of the spectrum. spectrometer.frequency(id=id, frq=H_frq) # Load the R1 data. relax_data.read(ri_id='R1', ri_type='R1', frq=H_frq, file='R1_relax.out', dir=DATA_PATH, mol_name_col=1, res_num_col=2, res_name_col=3, spin_num_col=4, spin_name_col=5, data_col=6, error_col=7) # Read the chemical shift data. chemical_shift.read(file='2100_off_reso_R1rho.list', dir=DATA_PATH) # Loop over spins, to see current setup. for cur_spin, mol_name, resi, resn, spin_id in spin_loop(full_info=True, return_id=True, skip_desel=True): print mol_name, resi, resn, spin_id print " " print cur_spin print " " # Loop over setup. for id in cdp.exp_type.keys(): print id, cdp.exp_type[id], cdp.spectrometer_frq[id], cdp.spin_lock_offset[id], cdp.spin_lock_nu1[id] print "" cdp.temp = [] for exp_type, frq, offset, point, ei, mi, oi, di in loop_exp_frq_offset_point(return_indices=True): for time, ti in loop_time(exp_type=exp_type, frq=frq, offset=offset, point=point, return_indices=True): print exp_type, frq, offset, point, time cdp.temp.append([exp_type, frq, offset, point, time]) ------2_pre_run_r2eff.py # Python module imports. from os import sep, getcwd # relax module imports. from auto_analyses.relax_disp import Relax_disp # Analysis variables. ##################### # The dispersion models. MODELS = ['R2eff'] # The grid search size (the number of increments per dimension). GRID_INC = 11 # The number of Monte Carlo simulations to be used for error analysis at the end of the analysis. MC_NUM = 10 # A flag which if True will activate Monte Carlo simulations for all models. Note this will hugely increase the computation time. MC_SIM_ALL_MODELS = False # The results directory. RESULTS_DIR = getcwd() + sep + 'results_T' # The directory of results of an earlier analysis without clustering. PRE_RUN_DIR = None # The model selection technique to use. MODSEL = 'AIC' # The flag for only using numeric models in the final model selection. NUMERIC_ONLY = False # The R1rho value in rad/s by which to judge insignificance. If the maximum difference between two points on all dispersion curves for a spin is less than this value, that spin will be deselected. INSIGNIFICANCE = 1.0 # Run the setup script script('1_setup_r1rho.py') pipe_name = 'base pipe' pipe_bundle = 'relax_disp' # Auto-analysis execution. ########################## # Do not change! Relax_disp(pipe_name=pipe_name, pipe_bundle=pipe_bundle, results_dir=RESULTS_DIR, models=MODELS, grid_inc=GRID_INC, mc_sim_num=MC_NUM, modsel=MODSEL, insignificance=INSIGNIFICANCE, numeric_only=NUMERIC_ONLY) 2014-08-22 23:01 GMT+02:00 Atul Srivastava <asriv...@umn.edu>: > Dear Edward, > > Thanks for providing help and insights. I used an improved script. The > scripts is able to calculate the R2eff and the omegaeffective properly, but > it is not able to fit any model. It also sees dispersion point as a constant > 1500 Hz (see attached file in results/R2eff/disp_55_N.out). > > I have attached all sample data, script and results for your review. Please > see the last few lines in the log file for the error message. > > Thanks, > Atul > > > > > On Fri, Aug 22, 2014 at 3:02 AM, Edward d'Auvergne <edw...@nmr-relax.com> > wrote: >> >> Hi Atul, >> >> Again continuing from Troels' post at >> http://thread.gmane.org/gmane.science.nmr.relax.user/1718/focus=1732. >> Well, actually, as Troels fully covered all of you questions in more >> detail than I could have provided, I don't have anything to add. If >> you have other questions, please don't hesitate to ask. >> >> Regards, >> >> Edward >> >> >> On 21 August 2014 12:00, Troels Emtekær Linnet <tlin...@nmr-relax.com> >> wrote: >> >> [snip] >> >> > relax_disp.relax_time(spectrum_id=id, time=relax_time) >> > -> This is used for the initial R2eff calculation, for exponential >> > curve fitting. >> > >> > # Set the NMR field strength of the spectrum. >> > spectrometer.frequency(id=id, frq=H_frq) >> > -> This is used for conversion between nucleus, etc. >> > >> > # Load the R1 data. >> > relax_data.read(ri_id='500MHz', ri_type='R1', frq=500e6, >> > file='R1_500MHz.out', dir=DATA_PATH, mol_name_col=1, res_num_col=2, >> > res_name_col=3, spin_num_col=4, spin_name_col=5, data_col=6, >> > error_col=7) >> > -> R1 needs to be loaded. This is because that R1 is part of the >> > equations. :-) The next release of relax, will implement feature where >> > R1 is fitted. >> >> Note, that fitting introduces another variable in the equations. >> > >> > # Read the chemical shift data. >> > chemical_shift.read(file='ref_500MHz.list', dir=DATA_PATH) >> > >> > -> This is needed to get the ppm position of the nucleus. >> > -> See now: >> > http://www.nmr-relax.com/manual/Dispersion_model_summary.html >> > -> The "average resonance in the rotating frame" Omega(bar) = w_(bar) - >> > w_rf." >> > -> Here w_bar is the chemical shift, and w_rf is the offset. >> > -> Let is review figure Fig1_Palmer_Massi_2006.png >> > -> This is the S_z axis. >> > >> > That should be it. >> > >> > If you have any questions, please don't hesitate to write again. >> > >> > If you need more help, consider writing a support request on the >> > homepage tracker. >> > - https://gna.org/support/?group=relax >> > >> > Add following information: >> > # Please attach a system info file >> >> relax -i -t relax_i.txt >> > >> > # Please write up, which buttons you pushed, or attach your script. >> > # Consider adding your data in "sample" format. Meaning that you >> > delete all confidential information from the files, and only have 1-2 >> > residues left for testing. >> > >> > If you write such a support request, it it easier to share script files, >> > and >> > help other users. >> > >> > The benefits from such a support request is: >> > - The information is available to all users, which can benefit >> > others in same situation. >> > - The information can be tracked back. >> > - The relax manual can be expanded, to help future users in same >> > situation. >> > >> > >> > Good luck! >> > >> > Best >> > Troels Emtekær Linnet >> > PhD student >> > Copenhagen University >> > SBiNLab, 3-0-41 >> > Ole Maaloes Vej 5 >> > 2200 Copenhagen N >> > Tlf: +45 353-22083 >> > Lync Tlf: +45 353-30195 > > _______________________________________________ relax (http://www.nmr-relax.com) This is the relax-users mailing list relax-users@gna.org 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-users