Hi Troels,

For the tutorial at
http://wiki.nmr-relax.com/Tutorial_for_The_relaxation_dispersion_auto-analysis_in_the_GUI
, I would suggest also adding that relax can be run using OpenMPI to
speed up the relaxation dispersion analysis.  So that if you have a
machine with 8 cores and OpenMPI and python-mpi4py installed
(http://www.nmr-relax.com/manual/The_multi_processor_framework.html),
you can run relax with 7 slaves by typing:

$ mpirun -n 8 relax --multi='mpi4py' --gui --tee my.log

Regards,

Edward



On 18 November 2014 12:27, Edward d'Auvergne <edw...@nmr-relax.com> wrote:
> Hi Troels and Prem,
>
> Troels, for a suggestion for improving the script in your tutorial,
> you could use:
>
> """
> from time import asctime, localtime
>
> pipe_bundle = "relax_disp (%s)" % asctime(localtime())
> pipe_name = "origin - %s" % pipe_bundle
> """
>
> This is how the new analysis wizard in relax creates these names
> (http://www.nmr-relax.com/api/3.3/gui.analyses.wizard-pysrc.html#Data_pipe_page.on_display).
> This script really saves a lot of time.  But, as it does not replicate
> the bug, Prem, could you still create the bug report and include all
> steps required to produce the error you observed?
>
> Cheers,
>
> Edward
>
>
>
> On 18 November 2014 12:08, Troels Emtekær Linnet <tlin...@nmr-relax.com> 
> wrote:
>> Hi Prem.
>>
>> I added the tutorial here:
>>
>> http://wiki.nmr-relax.com/Tutorial_for_The_relaxation_dispersion_auto-analysis_in_the_GUI
>>
>> I tried to take power of the scripting, to get around the tedious work on
>> defining the experiment settings for all spectra.
>>
>> So this script should take you to the "end point" before staring the
>> analysis.
>>
>> Best
>> Troels
>>
>>
>>
>> 2014-11-18 11:51 GMT+01:00 Troels Emtekær Linnet <tlin...@nmr-relax.com>:
>>
>>> Dear Prem.
>>>
>>> Welcome to the mailing list!
>>>
>>> I guess that you mean the manual at:
>>> http://www.nmr-relax.com/manual/Contents.html
>>>
>>> The relaxation dispersion auto-analysis in the GUI
>>>
>>> http://www.nmr-relax.com/manual/The_relaxation_dispersion_auto_analysis_in_the_GUI.html
>>>
>>> Where the test data is in:
>>> test_suite/shared_data/dispersion/Hansen
>>>
>>> I will write it up here as a script instead.
>>> This goes a little faster testing.
>>>
>>> You can also find more inspiration at the wiki:
>>> http://wiki.nmr-relax.com
>>> http://wiki.nmr-relax.com/Category:Tutorials
>>>
>>> In terminal
>>> mkdir -p $HOME/test
>>> cd $HOME/test
>>> gedit test.py
>>>
>>> Then I build the script onwards.
>>> I run relax repeatedly, to execute code. Then I write new code in the
>>> script, and run again.
>>> relax test.py
>>>
>>> When I am satisfied, you can then do like this.
>>>
>>> relax -g -t log.txt
>>> User functions -> Script -> test.py
>>>
>>> THEN:
>>> View -> Data pipe editor -> Right click on pipe -> Associate with a new
>>> Auto analysis
>>>
>>> This should bring you to a window, where all settings have been set.
>>>
>>> Relaxations dispersion models: ['R2eff', 'No Rex', 'CR72', 'NS CPMG 2-site
>>> expanded']
>>> Grid increements: 11 (For speed-up in test phase)
>>> Monte-Carlo simulations number: 5 (For speed up in test phase)
>>>
>>> Then a quick click on spin.isotope function, and GO.
>>>
>>>
>>>
>>> test.py
>>> ----------------
>>> #python modules
>>> import os
>>> import glob
>>>
>>> # relax modules
>>> from lib.io import sort_filenames
>>>
>>> # Set path to data
>>> data =
>>> '/sbinlab2/tlinnet/software/NMR-relax/relax_trunk/test_suite/shared_data/dispersion/Hansen'
>>>
>>> # Create the data pipe.
>>> pipe_name = 'origin - relax_disp (Tue Nov 18 10:39:36 2014)'
>>> pipe_bundle = 'relax_disp (Tue Nov 18 10:39:36 2014)'
>>> pipe.create(pipe_name=pipe_name, bundle=pipe_bundle,
>>> pipe_type='relax_disp')
>>>
>>> # Create spin to hold data.
>>> sequence.read(file='fake_sequence.in', dir=data, res_num_col=1,
>>> res_name_col=2)
>>> deselect.read(file='unresolved', dir=data+os.sep+'500_MHz',
>>> spin_id_col=None, mol_name_col=None, res_num_col=1, boolean='AND',
>>> change_all=False)
>>> deselect.read(file='unresolved', dir=data+os.sep+'800_MHz',
>>> spin_id_col=None, mol_name_col=None, res_num_col=1, res_name_col=2,
>>> boolean='AND', change_all=False)
>>>
>>> # Give the spins attributes.
>>> spin.isotope(isotope='15N', spin_id='@*', force=True)
>>> spin.name(name='N')
>>>
>>> # Do for 800.
>>> ###############################################
>>> # Change directory.
>>> os.chdir(data + os.sep + '500_MHz')
>>>
>>> # Get the file list, and sort the file list Alphanumeric.
>>> flist500 = glob.glob('*.in_sparky')
>>> flist500 = sort_filenames(filenames=flist500)
>>>
>>> # Make ID
>>> ID500 = []
>>> for f in flist500: ID500.append("500_"+f.split(".in_sparky")[0])
>>>
>>> # Then Read
>>> spectrum.read_intensities(file=flist500, spectrum_id=ID500)
>>>
>>> # Repeat for the replicated spectra.
>>> flist500rep = glob.glob('*in.bis_sparky')
>>> flist500rep = sort_filenames(filenames=flist500rep)
>>>
>>> # Make ID
>>> ID500rep = []
>>> for f in flist500rep:
>>> ID500rep.append("500_"+f.split(".in.bis_sparky")[0]+'b')
>>>
>>> # Then Read
>>> spectrum.read_intensities(file=flist500rep, spectrum_id=ID500rep)
>>>
>>> # Then map replicated
>>> for b_id in ID500rep:
>>>     a_id = b_id[:-1]
>>>     spectrum.replicated(spectrum_ids=[a_id, b_id])
>>>
>>> # Then check
>>> print cdp.replicates
>>>
>>> # Then repeat for 800.
>>> ###############################################
>>> # Change directory.
>>> os.chdir(data + os.sep + '800_MHz')
>>>
>>> # Get the file list, and sort the file list Alphanumeric.
>>> flist800 = glob.glob('*.in_sparky')
>>> flist800 = sort_filenames(filenames=flist800)
>>>
>>> # Make ID
>>> ID800 = []
>>> for f in flist800: ID800.append("800_"+f.split(".in_sparky")[0])
>>>
>>> # Then Read
>>> spectrum.read_intensities(file=flist800, spectrum_id=ID800)
>>>
>>> # Repeat for the replicated spectra.
>>> flist800rep = glob.glob('*in.bis_sparky')
>>> flist800rep = sort_filenames(filenames=flist800rep)
>>>
>>> # Make ID
>>> ID800rep = []
>>> for f in flist800rep:
>>> ID800rep.append("800_"+f.split(".in.bis_sparky")[0]+'b')
>>>
>>> # Then Read
>>> spectrum.read_intensities(file=flist800rep, spectrum_id=ID800rep)
>>>
>>> # Then map replicated
>>> for b_id in ID800rep:
>>>     a_id = b_id[:-1]
>>>     spectrum.replicated(spectrum_ids=[a_id, b_id])
>>>
>>> # Then check
>>> print cdp.replicates
>>> ################################################
>>> print len(ID500), len(ID500rep), len(ID800), len(ID800rep)
>>>
>>> # Then set spectrum properties
>>> all_ID = ID500 + ID500rep + ID800 + ID800rep
>>>
>>> for cur_id in all_ID:
>>>     # Split from name
>>>     sfrq_str, vcpmg_str = cur_id.split("_")
>>>
>>>     if vcpmg_str == 'reference':
>>>          vcpmg = None
>>>     else:
>>>         vcpmg = float(vcpmg_str.split("b")[0])
>>>     print cur_id, sfrq_str, vcpmg
>>>
>>>     # Set the current experiment type.
>>>     relax_disp.exp_type(spectrum_id=cur_id, exp_type='SQ CPMG')
>>>
>>>     # Set the NMR field strength of the spectrum.
>>>     spectrometer.frequency(id=cur_id, frq=float(sfrq_str), units='MHz')
>>>
>>>     # Relaxation dispersion CPMG constant time delay T (in s).
>>>     relax_disp.relax_time(spectrum_id=cur_id, time=0.03)
>>>
>>>     # Set the relaxation dispersion CPMG frequencies.
>>>     relax_disp.cpmg_setup(spectrum_id=cur_id, cpmg_frq=vcpmg)
>>> -------------------------------------------------------
>>>
>>>
>>>
>>>
>>>
>>> 2014-11-18 0:06 GMT+01:00 Prem Raj Joseph <prbj123re...@gmail.com>:
>>> >
>>> > Hello all,
>>> >
>>> > I was using the GUI version of the software to run the tutorial available
>>> > in the manual for analysis of relaxation dispersion.
>>> > When i execute the run I get the following error
>>> >
>>> > RelaxPipeError: RelaxError: The data pipe 'R2eff - relax_disp (Mon Nov 17
>>> > 10:50:08 2014)' already exists.
>>> >
>>> > Not sure where the error is arising from. Any help is greatly
>>> appreciated.
>>> >
>>> > Thanks
>>> >
>>> > Prem
>>> >
>>> > Department of Biochemistry and Molecular Biology
>>> > Sealy Center for Structural Biology and Molecular Biophysics
>>> > 5.142 Medical Branch  Building
>>> > University of Texas Medical Branch
>>> > Galveston, TX 77555-1055
>>> > Lab: 409-772-2181
>>> > Cell: 409-354-8536
>>> >
>>> > !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
>>> > Error analysis
>>> > ==============
>>> >
>>> > Skipping the error analysis as it has already been performed.
>>> >
>>> > relax> relax_disp.r1_fit(fit=False)
>>> >
>>> >
>>> >
>>> > ---------------------
>>> > - The 'R2eff' model -
>>> > ---------------------
>>> >
>>> >
>>> > relax> pipe.copy(pipe_from='origin - relax_disp (Mon Nov 17 10:50:08
>>> > 2014)', pipe_to='R2eff - relax_disp (Mon Nov 17 10:50:08 2014)',
>>> > bundle_to='relax_disp (Mon Nov 17 10:50:08 2014)')
>>> > Exception raised in thread.
>>> >
>>> > Traceback (most recent call last):
>>> >   File "/home/prem/programs/relax-3.3.2/gui/analyses/execute.py", line
>>> 87,
>>> > in run
>>> >     self.run_analysis()
>>> >   File "/home/prem/programs/relax-3.3.2/gui/analyses/auto_relax_disp.py",
>>> > line 726, in run_analysis
>>> >     Relax_disp(pipe_name=self.data.pipe_name,
>>> > pipe_bundle=self.data.pipe_bundle, results_dir=self.data.save_dir,
>>> > models=self.data.models, grid_inc=self.data.inc,
>>> > mc_sim_num=self.data.mc_sim_num, exp_mc_sim_num=self.data.exp_mc_sim_num,
>>> > pre_run_dir=self.data.pre_run_dir,
>>> > mc_sim_all_models=self.data.mc_sim_all_models,
>>> > insignificance=self.data.insignificance,
>>> > numeric_only=self.data.numeric_only, r1_fit=self.data.r1_fit)
>>> >   File "/home/prem/programs/relax-3.3.2/auto_analyses/relax_disp.py",
>>> line
>>> > 137, in __init__
>>> >     self.run()
>>> >   File "/home/prem/programs/relax-3.3.2/auto_analyses/relax_disp.py",
>>> line
>>> > 614, in run
>>> >     self.interpreter.pipe.copy(pipe_from=self.pipe_name,
>>> > pipe_to=model_pipe, bundle_to=self.pipe_bundle)
>>> >   File "/home/prem/programs/relax-3.3.2/prompt/uf_objects.py", line 225,
>>> in
>>> > __call__
>>> >     self._backend(*new_args, **uf_kargs)
>>> >   File "/home/prem/programs/relax-3.3.2/pipe_control/pipes.py", line 191,
>>> > in copy
>>> >     raise RelaxPipeError(pipe_to)
>>> > RelaxPipeError: RelaxError: The data pipe 'R2eff - relax_disp (Mon Nov 17
>>> > 10:50:08 2014)' already exists.
>>> > _______________________________________________
>>> > 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
>>>
>> _______________________________________________
>> 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

_______________________________________________
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

Reply via email to