Dear Edward. Please excuse me, if I am unclear and you are wasting your time. I apologize, since I have a little problem matching different conventions about the terminology for naming equations and parts of them. Especially here for relax conventions and data structures, analysis scripts in Igor Pro, old data files and paper graphs. What I am looking for, is a graph like this: https://gna.org/support/?3124 The attached file #20208: Figure2_Kjaergaard_et_al_2013_Off-resonance_R1rho_relaxation_dispersion_experiments_using_the_DPL_model. https://gna.org/support/download.php?file_id=20208 I do believe it is on-resonance R1rho value with exchange that I am looking for. And I also agree, that relax is not calculating this value. One might ask what the purpose is to produce such a graph. The best explanation for a wish for such a graph, is to produce a condensed graph, which easily will show if there are any exchange contribution or not. Let me return to this issue when I am trying to solve it. Are you sure that I can't just expand specific_analysis.relax_disp.optimisation.back_calc_r2eff() All the needed data should be available there ? Best Troels Troels Emtekær Linnet 2014-03-12 18:35 GMT+01:00 Edward d'Auvergne <edward@xxxxxxxxxxxxx>:
Hi, For the definitions for the different dispersion models, you should look at the code in the lib.dispersion modules. In each case it is handled differently. Which value are you after exactly? If you are after the measured exponential relaxation rate, directly from the NMR spectrum, that would be spin.r2eff (either from the exponential curve or the two point approach). If you are interested in the R2eff value from the fitted parameters for the specific model, which is what those equations look like, that would be the back-calculated value stored in spin.r2eff_bc. If you are interested in the pure on-resonance R1rho' value with no exchange, that would be spin.r20. From the equations, it looks like you are after the on-resonance R1rho value with exchange. Is this correct? This value is never calculated or stored in relax as it serves no purpose. Are you really sure this is what you are after, and not the back-calculated value which should match the experimental values? If you are really sure, then I suppose it could be calculated. But this would have to be done for all the different R1rho dispersion models, and each is different. You would have to call the functions of lib.dispersion (for every dispersion model this will be different), and set the rotating frame tilt angle to zero. Then the back_calc data structure will contain the required values. I have a feeling that this is not what you are after though. Regards, Edward On 12 March 2014 18:08, Troels Emtekær Linnet <tlinnet@xxxxxxxxx> wrote:Hi Edward. I am looking to calculate R2_eff = spin.r20 + (phi_ex * k_ ex )/ (k_ex^2+w_e^2 ) R2_eff = (spin.r2eff - spin.ri_data['R1'] *cos(t)**2) / sin(t) **2 As also noted here http://thread.gmane.org/gmane.science.nmr.relax.devel/5164 Best Troels Troels Emtekær Linnet 2014-03-12 17:45 GMT+01:00 Edward d'Auvergne <edward@xxxxxxxxxxxxx>:Hi Troels, The R2_eff value stored in spin.r2eff should already contain the R1 contribution. Have a look lib.dispersion.dpl94. The spin.r2eff value is equivalent to the back_calc value. If you would like to isolate the pure R1rho contribution, that would be the spin.r20 parameter. So maybe if you use grace.write with the theta parameter on the X-axis and r20 on the Y-axis, this will already automatically work. Regards, Edward On 12 March 2014 14:32, Troels Emtekær Linnet <tlinnet@xxxxxxxxx> wrote:The two issues I am trying to resolve, is to make graphs of: R2_eff as function of Omega_eff. https://gna.org/support/?3124 where R2,eff = (R1rho - R1*cos(t)*2) / sin(t) *2 I would implement another function to calculate this, as: R1rho : spin.r2eff R1 is the loaded R1 values : spin.ri_data and theta I just calculated. And plot R1rho as function of theta (and looping over offset). I think I will now try to implement the relax_disp.write_disp_curves for R1rho as function of theta. best Troels Troels Emtekær Linnet 2014-03-12 13:54 GMT+01:00 Edward d'Auvergne <edward@xxxxxxxxxxxxx>:Hi, What does the output look like? Could you copy and paste an example? I'm guessing the relax code is now fully functional so that these files can be created. If so, then creating these files in the auto-analysis would not be a problem. What is the plan for the relax_disp.write_disp_curves user function? Regards, Edward On 12 March 2014 13:43, Troels Emtekær Linnet <tlinnet@xxxxxxxxx> wrote:Hi Edward. I would like to add the custom to write out: value.write(param='theta', file='theta.out') value.write(param='w_eff', file='w_eff.out') For those models who are in the list MODEL_LIST_R1RHO_FULL = [MODEL_R2EFF, MODEL_NOREX, MODEL_M61, MODEL_M61B, MODEL_DPL94, MODEL_TP02, MODEL_TAP03, MODEL_MP05, MODEL_NS_R1RHO_2SITE, MODEL_NS_R1RHO_3SITE, MODEL_NS_R1RHO_3SITE_LINEAR] """The list of the R2eff model together with all dispersion models specifically for R1rho-type experiments.""" In the relax_disp auto-analysis, in write_results() I was thinking to add: # The theta/w_eff parameter. if model in MODEL_LIST_R1RHO_FULL: self.interpreter.value.write(param='theta', file='theta.out', dir=path, force=True) self.interpreter.value.write(param='w_eff', file='w_eff.out', dir=path, force=True) Do you support this? Best Troels Troels Emtekær Linnet _______________________________________________ relax (http://www.nmr-relax.com) This is the relax-devel mailing list relax-devel@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-devel