mailRe: model free analysis without structure


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

Header


Content

Posted by Edward d'Auvergne on February 03, 2014 - 11:41:
Hi Ji Hun,

Looking back over your script, I can see that you call the user function:

interatom.unit_vectors()


This is actually where your problem arises.  See the documentation at http://www.nmr-relax.com/manual/interatom_unit_vectors.html (which I have updated at http://article.gmane.org/gmane.science.nmr.relax.scm/19873).  You can only calculate the interatomic 15N-1H vector if you have a 3D structure.  So if you delete that line, you should be able to complete the analysis.


Regards,


Edward






On 3 February 2014 10:13, Edward d'Auvergne <edward@xxxxxxxxxxxxx> wrote:
Hi Ji Hun,

Welcome to the relax mailing lists!  For your question, relax does support the model-free analysis of a protein without a 3D structure.  You will however not be able to optimise the spheroidal or ellipsoidal diffusion tensors.  Therefore you have to be careful about fake internal dynamics when looking at the spherical diffusion tensor - including both the artificial nanosecond motions and artificial Rex (see my paper at http://dx.doi.org/10.1039/b702202f for a description of this and for citations to all the relevant literature).

From your email address and the relax version number, I would guess that you are using the SBGrid infrastructure (http://www.sbgrid.org/software/title/relax).  As relax is now up to version 3.1.4, I would suggest that you ask them to update the relax version to a this more recent release.  This will help you avoid a number of other bugs.

For the problem you are seeing, I will need a bit more information.  There are unfortunately not enough details for me to determine what the issue is.  Would you be able to create a bug report using the link https://gna.org/bugs/?func=additem&group=relax ?  Cheers!  The more detail, the better.  You can capture the relax messages by running relax with:

$ relax --tee log my_script.py

This will create the file 'log' which you can then attach to the bug report (please do not email files to a public mailing list).  It would be useful to attach your script to the bug report as well.  If you are using the Mac OS X dmg file, the '--tee' option will not be available, so you would instead need to copy all the text from the relax controller window in the GUI and paste it into a text file.  The best would be if you created a temporary directory and copied all your data files into there.  Then delete all data so that only ~2 spin systems are left in the files.  Then run the script with the relax '--tee' option and see if the problem is still there.  If so, then the whole directory can be zipped, gzipped, bzipped, etc. and attached to the bug report.  If you'd like to keep your data private, you could randomise the relaxation data slightly and rerun the script to make sure the problem is still there.  If I am able to reproduce the problem, then I should be able to have a solution within minutes.

Cheers,

Edward





On 31 January 2014 19:37, Ji Hun Kim <ji.hun.kim@xxxxxxxxxxxxxx> wrote:

Hello

 

I ran the model free analysis without structure using dauvergne_protocol.py in Relax3.0.0.

 

Like this.

# Analysis variables.

#####################

# The diffusion model.

DIFF_MODEL = 'local_tm'

# The model-free models.  Do not change these unless absolutely necessary, the protocol is likely to fail if these are changed.

MF_MODELS = ['m0', 'm1', 'm2', 'm3', 'm4', 'm5', 'm6', 'm7', 'm8', 'm9']

LOCAL_TM_MODELS = ['tm0', 'tm1', 'tm2', 'tm3', 'tm4', 'tm5', 'tm6', 'tm7', 'tm8', 'tm9']

# The grid search size (the number of increments per dimension).

GRID_INC = 11

# The optimisation technique.

MIN_ALGOR = 'newton'

# The number of Monte Carlo simulations to be used for error analysis at the end of the analysis.

MC_NUM = 500

# Automatic looping over all rounds until convergence (must be a boolean value of True or False).

CONV_LOOP = True

# Set up the data pipe.

#######################

# The following sequence of user function calls can be changed as needed.

# Create the data pipe.

pipe_bundle = "mf (%s)" % asctime(localtime())

name = "origin - " + pipe_bundle

pipe.create(name, 'mf', bundle=pipe_bundle)

# Load the PDB file.

#structure.read_pdb('1f3y.pdb', set_mol_name='Ap4Aase', read_model=3)

# Set up the 15N and 1H spins (both backbone and Trp indole sidechains).

#structure.load_spins('@N', ave_pos=True)

#structure.load_spins('@NE1', ave_pos=True)

#structure.load_spins('@H', ave_pos=True)

#structure.load_spins('@HE1', ave_pos=True)

#spin.isotope('15N', spin_id='@N*')

#spin.isotope('1H', spin_id='@H*')

# Set up the 15N spins (alternative to the structure-based approach).

sequence.read(file='seq.out', dir=None, spin_num_col=1, spin_name_col=2, res_num_col=3, res_name_col=4)

spin.element(element='N', spin_id='@N*')

#spin.element(element='H', spin_id='@H*')

spin.isotope('15N', spin_id='@N*')

# Generate the 1H spins for the magnetic dipole-dipole relaxation interaction (alternative to the structure-based approach).

sequence.attach_protons()

# Load the relaxation data.

relax_data.read(ri_id='NOE_600', ri_type='NOE', frq=600.133*1e6, file='NOE.600.out',  spin_num_col=1, spin_name_col=2, res_num_col=3, res_name_col=4, data_col=5, error_col=6)

relax_data.read(ri_id='R1_600',  ri_type='R1',  frq=600.133*1e6, file='R1.600.out',  spin_num_col=1, spin_name_col=2, res_num_col=3, res_name_col=4, data_col=5, error_col=6)

relax_data.read(ri_id='R2_600',  ri_type='R2',  frq=600.133*1e6, file='R2.600.out',   spin_num_col=1, spin_name_col=2, res_num_col=3, res_name_col=4, data_col=5, error_col=6)

relax_data.read(ri_id='R1_800',  ri_type='R1',  frq=800.444*1e6, file='R1.800.out',  spin_num_col=1, spin_name_col=2, res_num_col=3, res_name_col=4, data_col=5, error_col=6)

relax_data.read(ri_id='R2_800',  ri_type='R2',  frq=800.444*1e6, file='R2.800.out',  spin_num_col=1, spin_name_col=2, res_num_col=3, res_name_col=4, data_col=5, error_col=6)

relax_data.read(ri_id='NOE_800', ri_type='NOE', frq=800.444*1e6, file='NOE.800.out',  spin_num_col=1, spin_name_col=2, res_num_col=3, res_name_col=4, data_col=5, error_col=6)

#relax_data.read(ri_id='R1_600',  ri_type='R1',  frq=599.719*1e6, file='r1.600.out',  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)

#relax_data.read(ri_id='R2_600',  ri_type='R2',  frq=599.719*1e6, file='r2.600.out',  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)

#relax_data.read(ri_id='NOE_600', ri_type='NOE', frq=599.719*1e6, file='noe.600.out', 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)

#relax_data.read(ri_id='R1_500',  ri_type='R1',  frq=500.208*1e6, file='r1.500.out',  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)

#relax_data.read(ri_id='R2_500',  ri_type='R2',  frq=500.208*1e6, file='r2.500.out',  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)

#relax_data.read(ri_id='NOE_500', ri_type='NOE', frq=500.208*1e6, file='noe.500.out', 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)

# Deselect spins to be excluded (including unresolved and specifically excluded spins).

deselect.read(file='unresolved', dir=None, spin_id_col=None, mol_name_col=None, res_num_col=3, res_name_col=4, spin_num_col=1, spin_name_col=2, sep=None, spin_id=None, boolean='AND', change_all=False)

deselect.read(file='exclude', spin_id_col=1)

# Define the magnetic dipole-dipole relaxation interaction.

interatom.define(spin_id1='@N', spin_id2='@H', direct_bond=True)

#interatom.define(spin_id1='@NE1', spin_id2='@HE1', direct_bond=True)

interatom.set_dist(spin_id1='@N*', spin_id2='@H*', ave_dist=1.02 * 1e-10)

interatom.unit_vectors()

# Define the chemical shift relaxation interaction.

value.set(-172 * 1e-6, 'csa', spin_id='@N*')

# Execution.

############

# Do not change!

dAuvergne_protocol(pipe_name=name, pipe_bundle=pipe_bundle, diff_model=DIFF_MODEL, mf_models=MF_MODELS, local_tm_models=LOCAL_TM_MODELS, grid_inc=GRID_INC, min_algor=MIN_ALGOR, mc_sim_num=MC_NUM, conv_loop=CONV_LOOP)

 

However, I fail to run this program.

 

This program stopped with this message

“relax> interatom.unit_vector(ave=true)

Averaging all vectors.

RelaxError: positional information could not be found for any spins.”

 

How I can solve this problem.

 

Thank You

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

Kim, Ji Hun

Rm. 5110A MRBIII, 465 21st Ave S.

Vanderbilt University School of Medicine, Nashville, TN 37232-8725

Phone: 615-936-3757 / Fax: 615-936-2211

 




이 이메일은 바이러스와 악성코드로 부터 자유롭습니다. 왜냐하면 avast! 안티바이러스 보호가 활성화되었습니다.



_______________________________________________
relax (http://www.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 Mon Feb 03 17:20:05 2014