Dear all
Relax (3.3.0 and 4.0.3) both give me the same error when I try to run
dauvergne protocol with local tm setting and structure loaded in:
RelaxError: Positional information could not be found for any spins
I cannot figure what is wrong. Problem appears at:
interatom.unit_vectors()
Here is the script contents:
# Python module imports.
from time import asctime, localtime
# relax module imports.
from auto_analyses.dauvergne_protocol import dAuvergne_protocol
# 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)
# Set up the 15N spins.
#sequence.read(file='hnoe_800.txt', res_num_col=2, res_name_col=3)
#spin.name('N')
#spin.element('N')
#spin.isotope('15N', spin_id='@N')
# Load a PDB file.
structure.read_pdb('2xe6.pdb', set_mol_name='PGK', alt_loc='A')
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*')
# 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='R1_800', ri_type='R1', frq=800.31*1e6,
file='R1_800', 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_800', ri_type='R2', frq=800.31*1e6,
file='R2_800', 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_800', ri_type='NOE', frq=800.31*1e6,
file='hnoe_800', 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_600', ri_type='R1', frq=599.9*1e6, file='R1_600',
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.9*1e6, file='R2_600',
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.9*1e6,
file='hnoe_600', 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=1,
res_num_col=2, res_name_col=3, spin_num_col=4, spin_name_col=5, 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)