mailRe: pipe.create() user function


Others Months | Index by Date | Thread Index
>>   [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Header


Content

Posted by Edward d'Auvergne on May 31, 2011 - 14:46:
Hi,

Cheers, that is indeed the case.  The script is too old, so I will
update it for the next version of relax.  Seb's suggestion should fix
the script.  There may be other problems though as this script was
originally written in 2005, and relax has changed substantially since
then.

Regards,

Edward



On 31 May 2011 14:09, Sébastien Morin <sebastien.morin.1@xxxxxxxxx> wrote:
Dear Shantanu,

The error comes from the following command:

   value.set('15N', 'heteronucleus')

Indeed, when manually typing this command on the relax command line, the
same error as you get from the script arises. However, after creation of a
data pipe, this error is gone.

The reason why you get the error in all scripts is that the command is
always performed before the pipe creation, i.e. the command is performed
once for the entire script before looping around whatever loop a script
might contain (where data pipes are created).

One possibility is that the behaviour of the function "value.set" has been
changed such that a pipe must exist when it is used, but the sample scripts
have not been updated...

A reason why this problem would not have been catched by the system tests
suite is that in the test suite, for an unknown reason, this value is set
after the creation of the data pipe, hence fixing the problem...

A rapid fix before we correct the problem in the relax source code is to
place the command after the creation of the pipe, from:

====
# Nuclei type
value.set('15N', 'heteronucleus')

# Loop over the pipes.
for name in pipes:
   # Create the data pipe.
   pipe.create(name, 'mf')
====

to:

====
# Loop over the pipes.
for name in pipes:
   # Create the data pipe.
   pipe.create(name, 'mf')

   # Nuclei type
   value.set('15N', 'heteronucleus')
====

taking care to adjust the indentation...

I hope this helps...


Séb  :)


On 11-05-27 11:40 PM, Shantanu S. Bhattacharyya Mr wrote:

Hello,

I am getting the error
RelaxError: No data pipes currently exist.  Please use the pipe.create()
user function first
for most of the scripts I am trying to run.
Here is the output for my attempt to run dasha.py :

*********************************************************************

rulelab-desktop:/usr/local/relax-1.3.10/run_scripts>  sudo relax dasha.py



                                            relax 1.3.10

                              Molecular dynamics by NMR data analysis

                             Copyright (C) 2001-2006 Edward d'Auvergne
                         Copyright (C) 2006-2011 the relax development
team

This is free software which you are welcome to modify and redistribute
under the conditions of the
GNU General Public License (GPL).  This program, including all modules, is
licensed under the GPL
and comes with absolutely no warranty.  For details type 'GPL' within the
relax prompt.

Assistance in using the relax prompt and scripting interface can be
accessed by typing 'help' within
the prompt.

ImportError: relaxation curve fitting is unavailable, the corresponding C
modules have not been compiled.

script = 'dasha.py'

----------------------------------------------------------------------------------------------------
# Script for model-free analysis using the program Dasha.

# Set the data pipe names (also the names of preset model-free models).
#pipes = ['m1', 'm2', 'm3', 'm4', 'm5', 'm6', 'm7', 'm8', 'm9']
pipes = ['m1', 'm2', 'm3', 'm4', 'm5']

# Nuclei type
value.set('15N', 'heteronucleus')

# Loop over the pipes.
for name in pipes:
    # Create the data pipe.
    pipe.create(name, 'mf')

    # Load the sequence.
    sequence.read('noe.500.out', res_num_col=1)

    # Load a PDB file.
    #structure.read_pdb('example.pdb')

    # Load the relaxation data.
    relax_data.read('R1', '600', 600.0 * 1e6, 'r1.600.out', res_num_col=1,
data_col=3, error_col=4)
    relax_data.read('R2', '600', 600.0 * 1e6, 'r2.600.out', res_num_col=1,
data_col=3, error_col=4)
    relax_data.read('NOE', '600', 600.0 * 1e6, 'noe.600.out',
res_num_col=1, data_col=3, error_col=4)
    relax_data.read('R1', '500', 500.0 * 1e6, 'r1.500.out', res_num_col=1,
data_col=3, error_col=4)
    relax_data.read('R2', '500', 500.0 * 1e6, 'r2.500.out', res_num_col=1,
data_col=3, error_col=4)
    relax_data.read('NOE', '500', 500.0 * 1e6, 'noe.500.out',
res_num_col=1, data_col=3, error_col=4)

    # Setup other values.
    diffusion_tensor.init(10e-9, fixed=1)
    #diffusion_tensor.init((10e-9, 0, 0, 40, 30, 80), fixed=1)
    value.set(1.02 * 1e-10, 'bond_length')
    value.set(-172 * 1e-6, 'csa')

    # Select the model-free model.
    model_free.select_model(model=name)

    # Create the Dasha script.
    dasha.create(algor='NR', force=True)

    # Execute Dasha.
    dasha.execute()

    # Read the data.
    dasha.extract()

    # Write the results.
    results.write(file='results_dasha', force=True)

----------------------------------------------------------------------------------------------------

relax>  value.set(val='15N', param='heteronucleus', spin_id=None)
RelaxError: No data pipes currently exist.  Please use the pipe.create()
user function first.

rulelab-desktop:/usr/local/relax-1.3.10/run_scripts>

***********************************************************

Has anyone else faced this problem ?? I am using Ubuntu 10.10 OS.
The strange thing is that sometimes when I copy paste the script into a
new text file and rename it as something-else.py, it works !
With dasha.py, even this is not helping. I am sorry if it sounds weird but
I am really puzzled as well.

Thanks,
Shantanu S. Bhattacharyya


--
Sébastien Morin, Ph.D.
Postdoctoral Fellow, S. Grzesiek NMR Laboratory
Department of Structural Biology
Biozentrum, Universität Basel
Klingelbergstrasse 70
4056 Basel
Switzerland


_______________________________________________
relax (http://nmr-relax.com)

This is the relax-users mailing list
relax-users@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-users




Related Messages


Powered by MHonArc, Updated Tue May 31 15:00:16 2011