Dear Edward, dear relax users, what is the best way of handling relaxation data that have no corresponding residues in the crystal structure? My first step is to read the pdb and load the spins (e.g. resdidues 7 to 61):
structure.read_pdb(file='./mypdb.pdb', dir=None, read_mol=None, set_mol_name=None, read_model=None, set_model_num=None, parser='internal') structure.load_spins(spin_id='@N*', ave_pos=True) structure.load_spins(spin_id='@H*', ave_pos=True)
If I try to load my relaxation data sets (ranging from residue 6 to 62), relax complains that there is no spin set up for residue 6 (and 62):
relax_data.read(ri_id='R1_600', ri_type='R1', frq=600179910.0, file='./600/rx_t1.out', res_num_col=2, res_name_col=3, spin_num_col=4, spin_name_col=5, data_col=6, error_col=7) Opening the file './600/rx_t1.out' for reading. RelaxError: The spin ':6@N' does not exist.
I can imagine the following workarounds: a) delete spin relaxation data for res. 6 and 62 from all data files, b) create residues 6 and 62 by hand (residue.create, spin.create) and deselect them, or c) read a sequence file containing all missing N spins, and "None" spins for all the spins I want to load from the pdb file. So far I have been successful with a) but I don't like fiddling with my input files too much, as it quickly becomes a mess of different versions etc. Option b) gave me weird errors after t_m fitting ("deepcopy(spin2) IndexError: list assignment index out of range") I guess are related to the additional spins. I tried using c) but I ran into problems with the spin setup: Obviously relax set up spins of type "0" and wants me to set up the isotope type of it. So, what kind of approach do you have? Cheers, Martin