Dear Edward. Thank you for your generous email, which helped a-lot.
I am happy to see the active development, and I would be more than happy to join in. I am "quite" good in python programming, and are confident i revision programs as svn and git. And I have courses in scientific computing, so I think i get along quite good. My reason for my interest, is that I think I should change my working habits, to something more effect full. My work-flow at the moment, is this. 1) CPMG/T1-rho experiment acquisition with NLS, through VnmrJ. 2) Data reconstruction in qMDD. (3) Main peak positioning in CcpNmr Analysis.) 4) Small peak adjustment, control in SPARKY. 5) Point sum integration in with: seriesTab<http://spin.niddk.nih.gov/NMRPipe/ref/prog/seriestab.html>with: -dx 1 -dy 1 6) Integration analysis in gnuplot/IgorPro,Originlab. The use of IgorPro,Originlab have been used because of easy use of the global fitting routine, but pose a problem, since we only have a very few licenses. And I weigh open-source very high. :-) The last weeks, I have fiddling around my workflow to try something like this: 1) CPMG/T1-rho experiment acquisition with NLS, through VnmrJ. 2) Data reconstruction in qMDD. (3) Main peak positioning in CcpNmr Analysis.) 4) Small peak adjustment, control in SPARKY. 5) Point sum integration in nmrglue,<http://springer.r.delivery.net/r/r?2.1.Ee.2Tp.1jiDvx.C5t4Ay..H.a%2ace.44Wy.bW89MQ%5f%5fDIJWFRd0>and easy visualization of each integration<https://github.com/jjhelmus/nmrglue/wiki/Plot-and-integrate-peaks-from-nmrpipe-format-and-sparky-list>. Preparation of data for fitting. 6) Global fitting. Either with nessy, relax or with python scipy leastsq. Here I tried to make a nessy database<https://github.com/jjhelmus/nmrglue/wiki/Make-a-nessy-database-for-CPMG-eksperiment>, but nessy came out very buggy. And I was about to set out for some python scipy fitting after nmrglue. But I had a hard time imagining that NMR software were not already developed for this, and I was very pleased to see the development of relax, which have not come to my attention before. And especially the inclusion of the python interpreter, and possibility to write scripts, is genius. Which is similar to the where the power of pymol is shining through. An optimal workflow would be this. 1) CPMG/T1-rho experiment acquisition with NLS, through VnmrJ. 2) Data reconstruction in qMDD. (3) Main peak positioning in CcpNmr Analysis.) 4) Small peak adjustment, control in SPARKY. 5) Point sum integration in nmrglue, and easy visualization of each integration<https://github.com/jjhelmus/nmrglue/wiki/Plot-and-integrate-peaks-from-nmrpipe-format-and-sparky-list>. Preparation of data for fitting. 6) nmrglue<http://springer.r.delivery.net/r/r?2.1.Ee.2Tp.1jiDvx.C5t4Ay..H.a%2ace.44Wy.bW89MQ%5f%5fDIJWFRd0>script preparation for relax, execution, save of result. 7) Graphical inspection of result through relax. So, I think I will try out the current state of the relax-disp branch. Are there any others developing on this branch? Best Troels -- Troels Emtekær Linnet PhD student Copenhagen University SBiNLab, 3-0-41 Ole Maaloes Vej 5 2200 Copenhagen N Tlf: +45 353-22083 2013/5/2 Edward d'Auvergne <[email protected]> > Hi Troels, > > Welcome to the relax mailing lists. For now the answer to your > question is, unfortunately, no - relax does not officially support > relaxation dispersion. The analysis you are running is simple two > parameter exponential curve-fitting > (http://www.nmr-relax.com/manual/Relaxation_curve_fitting.html). This > can be used to find the R2eff or R1rho values if you have measured the > full exponential curves, but otherwise you cannot perform a dispersion > analysis with this. > > This may not be of use for you at the moment, but note that relax has > unofficial and incomplete support for dispersion analyses (both > CPMG-type and R1rho-type data sets). As relax is open source, there > are many NMR spectroscopists who have added code to relax (for example > see http://gna.org/project/memberlist.php?group=relax). An initial > implementation of the relaxation dispersion analysis was added to a > relax branch back in 2009 by Sebastian Morin > (http://thread.gmane.org/gmane.science.nmr.relax.devel/1728). But as > this was not completed at the time, it was never merged back into the > relax main line (the source code where official relax releases come > from). I have recently restored the branch to a partially working > state and added a graphical interface for the analysis - mainly for my > own purposes (http://svn.gna.org/viewcvs/relax/branches/). So at some > point in the near future relax will be able to perform the analyses > you are interested in. > > As relax is open source, if you are interested and adventurous enough > you are most welcome to help in the development. Even if you do not > know how to code, there are many other things which can be done. For > example calculating the partial derivatives of the analytic solutions > to obtain the gradients and Hessians so that with relax you can have > access to far more powerful optimisation algorithms than any of the > other dispersion software has access to. Or to create test data > whereby the solution is know, or to collect the input and output test > data from published results. If you have the subversion version > control software installed, you can obtain the code by typing either: > > $ svn co svn://svn.gna.org/svn/relax/branches/relax-disp > > or: > > $ svn co http://svn.gna.org/svn/relax/branches/relax-disp > > If you are more interested in quickly performing the analysis, I would > point you to Dr. Flemming Hansen's CATIA program: > > http://www.biochem.ucl.ac.uk/hansen/catia/ (the old page is > http://pound.med.utoronto.ca/~flemming/catia/). > > This performs numerically integration of the Bloch-McConnell > equations, so not the optimisation of the analytic solutions of > Meiboom, Richard-Carver, etc. It is also only for CPMG-type data > rather than R1rho, whereas the relax branch will handle both. I hope > this information helps. > > Regards, > > Edward > > > > > On 30 April 2013 18:40, Troels Emtekær Linnet <[email protected]> wrote: > > Dear relax users. > > > > I am looking into different NMR programs to fit > > relaxation data for CPMG relaxation dispersion experiments and T1rho. > > > > Essentially, I am looking for programs for which can fit functions, which > > for example nessy provide: > > http://home.gna.org/nessy/reference.html > > The Meiboom equation or Richard-Carver equation > > > > Nessy is very buggy, and I am looking for a replacement. > > > > I should be able to: > > R2eff = -1.0/time_T2*log(Intensity/averageZero) > > > > ncyc_arr=[28, 0, 4, 32, 60, 2, 10, 16, 8, 20, 50, 18, 40, 6, 12, 0, 24] > > time_T2 = 0.06 second > > nu = ncyc_arr[i]/time_T2 > > > > R2cpmg_slow: > > tau_cpmg = 1.0/(4*nu) > > R2eff = R2+ka*(1.0-sin(Domega*tau_cpmg)/(Domega*tau_cpmg)) > > > > > > I have followed the tutorial in the homepage manual: > > > > Can relax analyse these kinds of experiments? > > Should i provide the: relax_fit.relax_time(time to be equal tau_cpmg ? > > I put in time_T2, even though its wrong. I just wanted to try the > program. > > :-) > > > > ---------------------------------------------------------------- > > """Script for relaxation curve fitting.""" > > # Create the 'rx' data pipe. > > pipe.create('rx', 'relax_fit') > > ## Load the backbone amide 15N spins from a PDB file. > > pdbfile=False > > if pdbfile: > > structure.read_pdb(pdbfile) > > structure.load_spins(spin_id='@N') > > else: > > molecule.create(mol_name='protein', mol_type='protein') > > residue.create(res_num=2, res_name='VAL') > > spin.create(res_num=2, spin_name='N') > > residue.create(res_num=3, res_name='PHE') > > spin.create(res_num=3, spin_name='N') > > residue.create(res_num=4, res_name='GLY') > > spin.create(res_num=4, spin_name='N') > > residue.create(res_num=5, res_name='ARG') > > spin.create(res_num=5, spin_name='N') > > residue.create(res_num=6, res_name='CYS') > > .... and so on > > > > ## Loop over the spectra intensities. Relaxation times should be in > seconds. > > readint=True > > if readint: > > spectrum.read_intensities(dir='relax', file='proc_list.txt.0int', > > spectrum_id='0_0.0', int_method='point sum', heteronuc='N', proton='HN', > > int_col=3) > > relax_fit.relax_time(time=0.06, spectrum_id='0_0.0') > > spectrum.read_intensities(dir='relax', file='proc_list.txt.1int', > > spectrum_id='1_133.33', int_method='point sum', heteronuc='N', > proton='HN', > > int_col=3) > > relax_fit.relax_time(time=0.06, spectrum_id='1_133.33') > > spectrum.read_intensities(dir='relax', file='proc_list.txt.2int', > > spectrum_id='2_166.67', int_method='point sum', heteronuc='N', > proton='HN', > > int_col=3) > > relax_fit.relax_time(time=0.06, spectrum_id='2_166.67') > > spectrum.read_intensities(dir='relax', file='proc_list.txt.3int', > > spectrum_id='3_333.33', int_method='point sum', heteronuc='N', > proton='HN', > > int_col=3) > > relax_fit.relax_time(time=0.06, spectrum_id='3_333.33') > > spectrum.read_intensities(dir='relax', file='proc_list.txt.4int', > > spectrum_id='4_33.33', int_method='point sum', heteronuc='N', > proton='HN', > > int_col=3) > > relax_fit.relax_time(time=0.06, spectrum_id='4_33.33') > > ... and so on > > > > # Specify the duplicated spectra. > > spectrum.replicated(spectrum_ids=['0_0.0', '18_0.0']) > > spectrum.error_analysis() > > > > # Deselect unresolved spins. > > #deselect.read(file='unresolved', mol_name_col=1, res_num_col=2, > > res_name_col=3, spin_num_col=4, spin_name_col=5) > > > > # Set the relaxation curve type. > > relax_fit.select_model('exp') > > > > # Grid search. > > grid_search(inc=11) > > > > # Minimise. > > minimise('simplex', scaling=False, constraints=False) > > > > ## Monte Carlo simulations. > > monte_carlo.setup(number=10) > > monte_carlo.create_data() > > monte_carlo.initial_values() > > minimise('simplex', scaling=False, constraints=False) > > monte_carlo.error_analysis() > > > > ## Save the relaxation rates. > > value.write(param='rx', file='rx.out', force=True) > > > > ## Save the results. > > results.write(file='results', force=True) > > > > # Save the program state. > > state.save('rx.save', force=True) > > > > Best > > > > Troels Emtekær Linnet > > Ved kløvermarken 9, 1.th > > 2300 København S > > Mobil: +45 60210234 > > > > _______________________________________________ > > relax (http://www.nmr-relax.com) > > > > This is the relax-users mailing list > > [email protected] > > > > 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 > > >
_______________________________________________ relax (http://www.nmr-relax.com) This is the relax-users mailing list [email protected] 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

