On Fri, Mar 13, 2009 at 4:50 PM, Eldon Ulrich <elu@xxxxxxxxxxxxx> wrote:
Hi Edward, I am working on the dictionary and the enumerations for various tags. Below are proposed enumerations with a few comments. I should have this in good shape over the weekend.
Cheers.
Comment #1: The 'General_relaxation' saveframe is intended for standard two spin relaxation data, but would include more than just R1, R1rho, and R2 as you can see below. I think it would be best to reserve this saveframe for rates and not include time constants. It would not include cross-correlation data.
I don't know if any programs would generate time constants, T1, T2, etc., but some people are still very old school. I thought the units tag covered this though?
Comment #2: For the 'Temp_calibration_method', I have spelled out the names of the chemical compounds as there are too many abbreviations and acronyms that might cause confusion.
That's true. Thinking about this tag again, I'm not sure how useful it would be to allow it to be computer parsable. If it's a fixed list, then it will be safe either way.
Comment #3: I kept the 'Temp_control_method' as an enumerated tag instead of breaking it into two tags as you suggested. This allows for the designation of 'no temperature control applied' and for additional types of control methods to be added.
That's a good idea.
Comment #4: The 'Temp_calibration_method' and 'Temp_calibration_method' tags also have been added to the saveframe where a complete description of the NMR experiment is contained (NMR_spec_expt). The table where you suggested putting these tags is intended only to link NMR experiments with samples and sample conditions and the details for each of these are give in the specific saveframes.
Ok.
Comment #5: We agree here that the 'Order_parameter' saveframe should be redefined as 'Model_free'. The draft proposal for renaming the tags in the new 'Model_free' saveframe are given below. I also included just an idea for how to handle the bond_vector issue you raised by creating a separate table for this information that is linked to each order parameter value in the main data table.
I have no problem either way. If it's ok to name it that way, then that will make the SRLS people happy. Then there could be the 'Slowly_relaxing_local_structure' and 'RDC_model_free' saveframe categories added in the future.
I am afraid I have some family obligations to take care of now, but will be back to work on this later this afternoon and as I said hope to have a complete proposal ready over the weekend. Thanks, Eldon
Thank you. There's still plenty of time until the ENC, so please don't spend too much time on the weekend with this. I have a few more points are below.
save__General_relaxation_list.Relaxation_coherence_type loop_ _item_enumeration_value _item_enumeration_description Iz 'R1 longitudinal' Sz 'R1 longitudinal' I+ 'R1rho transverse' I- 'R1rho transverse' S+ 'R1rho transverse' S- 'R1rho transverse' (I+)+(I-) 'R1rho transverse' (S+)+(S-) 'R1rho transverse' I+ 'R2 transverse' I- 'R2 transverse' S+ 'R2 transverse' S- 'R2 transverse' (I+)+(I-) 'R2 transverse' (S+)+(S-) 'R2 transverse' I-S+ 'ZQ relaxation' I+S- 'ZQ relaxation' (I+S-)+(I-S+) 'ZQ relaxation' IzSz 'longitudinal spin order' I+Sz 'single quantum antiphase' I-Sz 'single quantum antiphase' IzS+ 'single quantum antiphase' IzS- 'single quantum antiphase' ((I+)+(I-))Sz 'single quantum antiphase' Iz((S+)+(S-)) 'single quantum antiphase' I+S+ 'DQ relaxation' I-S- 'DQ relaxation' (I+S+)+(I-S-) 'DQ relaxation' stop_ save_
This is missing the NOE? This could either be sigma_NOE, the cross-relaxation rate, or the measured steady state NOE: NOE = 1 + gH/gN * sigma_NOE/R1 Should General_relaxation include NOE relaxation rather than leaving it in the Heteronucl_NOEs saveframe category?
save__General_relaxation_list.Relaxation_type_common_name loop_ _item_enumeration_value _item_enumeration_description R1 . R2 . R1rho . 'ZQ relaxation' . 'longitudinal spin order' . 'single quantum antiphase' . 'DQ relaxation' . stop_ save_ save__General_relaxation_list.Relaxation_val_units loop_ _item_enumeration_value _item_enumeration_description s-1 . ms-1 . us-1 . ps-1 . stop_ save_
ns-1 is missing. I would assume these will be reported only in s-1 though as the rates are on the order of seconds.
save__General_relaxation_list.Temp_calibration_method loop_ _item_enumeration_value _item_enumeration_description methanol . 'monoethylene glycol' . 'no calibration applied' . stop_ save_
This I can easily handle in relax.
save__General_relaxation_list.Temp_control_method loop_ _item_enumeration_value _item_enumeration_description 'single scan interleaving' . 'temperature compensation block' . 'single scan interleaving and temperature compensation block' . 'no temperature control applied' . stop_ save_
This too.
save_ save_order_parameter_list_1 _Model_free_list.Sf_category _Model_free_list.Sf_framecode _Model_free_list.ID _Model_free_list.Sample_condition_list_ID _Model_free_list.Sample_condition_list_label _Model_free_list.Tau_e_val_units _Model_free_list.Tau_s_val_units _Model_free_list.Global_chi_squared_fit_val _Model_free_list.Global_tau_c_val _Model_free_list.Details
The _Model_free_list.Global_chi_squared_fit_val tag is quite useful. I can use that straight away. Would it be useful to match _Model_free.Chi_squared_val and call it _Model_free_list.Global_chi_squared_val? As for the diffusion tensor, I've looked into the BMRB for saveframes and there appears to be nothing I can use. This is actually quite complex, as the diffusion tensor can be spherical (with just a tau_c), spheroidal, and ellipsoidal. The ellipsoidal diffusion tensor is composed of 6 parameters, {Diso, Da, Dr, alpha, beta, gamma}. Alternatively you can specify this using the eigenvalues {Dx, Dy, Dz, alpha, beta, gamma}. The Euler angles in relax are in the zyz notation (not always though), and are defined from 0 from their axes (this changes things too). They are folded between: 0 <= alpha <= 2pi, 0 <= beta <= pi, 0 <= gamma <= 2pi. The spheroidal tensor is composed of 4 parameters, {Diso, Da, theta, phi} (or {Dpar, Dper, theta, phi}). Theta and phi are the polar angles, and are defined in relax starting at 0 to pi and 2pi respectively. This is all described in the relax manual on page 163 (http://download.gna.org/relax/manual/1.3/relax.pdf). relax can dump all of these parameters, including all permutations of parameters, if you wish. Things can get more complicated though because of what I have called hybrid diffusion models in relax. A good example would be a 2-domain protein. Each domain would have it's own diffusion tensor, each being one of the ellipsoid, spheroid, and sphere. Alternatively, a stretch of residues could be described by the local_tau_m parameter, and the rest belonging to a rigid core of the protein being described by a single or multiple diffusion tensors. Therefore for the global diffusion tensor info, quite a bit needs to be stored, including a list of the spin systems that the tensor covers. I can also guarantee that much more complex global diffusion models will exist in the future (I'll talk to you again later once I develop these).
loop_ _Model_free_input.Saveframe_category_ID _Model_free_input.Saveframe_label _Model_free_experiment.Model_free_list_ID stop_
I'm still not sure what I'm supposed to put into the Model_free_input saveframe?
loop_ _Model_free_software.Software_ID _Model_free_software.Software_label _Model_free_software.Method_ID _Model_free_software.Method_label _Model_free_software.Model_free_list_ID stop_ loop_ _Model_free.ID _Model_free.Assembly_ID _Model_free.Entity_assembly_ID _Model_free.Entity_ID _Model_free.Comp_index_ID _Model_free.Comp_ID _Model_free.Obs_atom_ID _Model_free.Attached_atom_ID _Model_free.Bond_vector_x_val _Model_free.Bond_vector_y_val _Model_free.Bond_vector_z_val
Should the above 3 tags be removed?
_Model_free.Bond_length_val _Model_free.Bond_length_val_err _Model_free.S2_val _Model_free.S2_val_err _Model_free.S2f_val _Model_free.S2f_val_err _Model_free.S2s_val _Model_free.S2s_val_err _Model_free.Local_tau_c_val _Model_free.Local_tau_c_val_err _Model_free.Tau_e_val _Model_free.Tau_e_val_err _Model_free.Tau_f_val _Model_free.Tau_f_val_err _Model_free.Tau_s_val _Model_free.Tau_s_val_err _Model_free.Rex_val _Model_free.Rex_val_err _Model_free.Chi_squared_val _Model_free.Model_fit _Model_free.Model_free_list_ID stop_ loop_ _Bond_vector.ID _Bond_vector.Model_free_ID _Bond_vector.X_val _Bond_vector.Y_val _Bond_vector.Z_val _Bond_vector.Model_free_list_ID Stop_
Do I put this Bond_vector saveframe into the Model_free saveframe category, or is it its own saveframe category? Cheers, Edward