Dear Eldon, I am ready to dump the contents of a model-free analysis into the NMR-STAR file, but have noticed a few issues. For an idea of all the spin specific data that can be archived, I've cut and paste an XML formatted relax spin container at the end. I'll go through the issues one by one. 1. The current design is centred on Art Palmer's Modelfree output. 1.1 Some are cosmetic, for example _Order_param.Tau_e_val and _Order_param.Tau_e_val_fit_err. The last one might be better called _Order_param.Tau_e_err. The errors are propagated from the relaxation data to the model-free parameters via Monte Carlo simulations (if done correctly by progam X). This is most definately not a fit error. 1.2 This one is important, _Order_param.Model_fit. This is not well defined. In relax and in my papers, I've defined the following strings to identify the model: 'm0' = {}, 'm1' = {S2}, 'm2' = {S2, te}, 'm3' = {S2, Rex}, 'm4' = {S2, te, Rex}, 'm5' = {S2f, S2, ts}, 'm6' = {S2f, tf, S2, ts}, 'm7' = {S2f, S2, ts, Rex}, 'm8' = {S2f, tf, S2, ts, Rex}, 'm9' = {Rex}. In Modelfree4, Art has the following set: Model 1: S2s Model 2: S2s and te Model 3: S2s and Rex Model 4: S2s, te and Rex Model 5: Sf2, Ss2, and te But in the mfout file (Modelfree4's output), the model is the string '0000110', identifying the parameters used. I think this field needs a well defined set of values for it to be useful between different programs. 1.3 This is a badly/incorrectly defined entry: _Order_param.Model_free_sum_squared_errs. It's origin is obviously Modelfree4 where it is incorrectly named. What is minimised is the chi-squared value in Modelfree4, Dasha, relax, Tensor2, DYNAMICS, etc. None of these programs minimise the SSE value. The chi-squared value is where each SSE element { (Rx - Rx(theta))^2 } is divided by the relaxation data error squared. I could dump the chi^2 value into this field, but it is misleading as it could be intepreted as relax not using the errors in optimisation, which in fact it does. 2. S2, S2f, and S2s. In Modelfree4, S2 is named S2s when S2f is not in the model. But in Clore et al.'s extended model-free formula, there is no direct link between S2 and the extended parameters S2f and S2s. In fact, when either tf or ts goes to zero, either order parameter collapses to S2. So how should this be handled? I would guess: S2 -> _Order_param.Order_param_val S2f -> _Order_param.Sf2_val S2s -> _Order_param.Ss2_val Would _Order_param.S2_val be better for the first, or is this something completely different from S2? The same issue occurs in the te, tf, and ts parameters within Modelfree4, but this is not an issue in the NMR-STAR definition. 3. Rex. Assuming Rex is fast exchange, then the value scales quadratically with field strength. Therefore to store the Rex value in _Order_param.Rex_val, you need to know the field strength the parameter is reported at, and the alpha parameter (from memory, i.e. I could be wrong, this ranges from 1 is slow exchange to 2 for fast exchange). In relax, alpha is always assumed to be 2. I'll start to implement this, but I will have a few problems. Cheers, Edward P.S. An example of a spin container in relax (here the output XML storage format). Note that there are three major groupings of parameters here, the values, the errors, and the Monte Carlo simulation data. This container holds absolutely everything related to a single spin, and obviously not all should be stored in the BMRB. Would you be able to go through and identify the data you would like archived in the database? Cheers. <res desc="Residue container" name="Gln" num="9"> <spin desc="Spin container" name="None" num="None"> <select desc="The spin selection flag"> True </select> <fixed desc="The fixed flag"> False </fixed> <proton_type desc="The proton spin type"> '1H' </proton_type> <heteronuc_type desc="The heteronucleus spin type"> '15N' </heteronuc_type> <attached_proton> 'H' </attached_proton> <nucleus> None </nucleus> <model desc="The model"> 'm5' </model> <equation desc="The model equation"> 'mf_ext' </equation> <params desc="The model parameters"> ['S2f', 'S2', 'ts'] </params> <xh_vect desc="XH bond vector"> array([-0.66346716, -0.54562747, 0.51195898]) </xh_vect> <s2 desc="S2, the model-free generalised order parameter (S2 = S2f.S2s)" ieee_754_byte_array="[79, 245, 59, 46, 197, 71, 232, 63]"> 0.75876101522559647 </s2> <s2f desc="S2f, the faster motion model-free generalised order parameter" ieee_754_byte_array="[85, 238, 71, 7, 206, 199, 235, 63]"> 0.86814023420397268 </s2f> <s2s desc="S2s, the slower motion model-free generalised order parameter" ieee_754_byte_array="[241, 110, 49, 110, 222, 247, 235, 63]"> 0.87400743028726258 </s2s> <local_tm desc="The spin specific global correlation time (ns)"> None </local_tm> <te desc="Single motion effective internal correlation time (ps)"> None </te> <tf desc="Faster motion effective internal correlation time (ps)"> None </tf> <ts desc="Slower motion effective internal correlation time (ps)" ieee_754_byte_array="[218, 245, 99, 46, 43, 185, 255, 61]"> 4.6163499272395248e-10 </ts> <rex desc="Chemical exchange relaxation (600 MHz)"> None </rex> <r desc="Bond length (Angstrom)" ieee_754_byte_array="[12, 45, 225, 165, 156, 9, 220, 61]"> 1.0200000000000001e-10 </r> <csa desc="Chemical shift anisotropy (ppm)" ieee_754_byte_array="[240, 104, 227, 136, 181, 248, 36, 191]"> -0.00015999999999999999 </csa> <chi2 desc="Chi-squared value"> None </chi2> <iter desc="Optimisation iterations"> None </iter> <f_count desc="Number of function calls"> None </f_count> <g_count desc="Number of gradient calls"> None </g_count> <h_count desc="Number of Hessian calls"> None </h_count> <warning desc="Optimisation warning"> None </warning> <num_frq desc="Number of spectrometer frequencies"> 2 </num_frq> <frq desc="Frequencies"> [600000000.0, 800000000.0] </frq> <frq_labels desc="Frequency labels"> ['600', '800'] </frq_labels> <num_ri desc="Number of relaxation data sets"> 6 </num_ri> <ri_labels desc="Relaxation data set labels"> ['R1', 'R2', 'NOE', 'R1', 'R2', 'NOE'] </ri_labels> <remap_table desc="Table mapping frequencies to relaxation data"> [0, 0, 0, 1, 1, 1] </remap_table> <noe_r1_table desc="Table mapping the NOE to the corresponding R1"> [None, None, 0, None, None, 3] </noe_r1_table> <relax_data desc="The relaxation data"> [1.3500000000000001, 9.8499999999999996, 0.52300000000000002, 0.89000000000000001, 11.273, 0.59799999999999998] </relax_data> <relax_error desc="The relaxation data errors"> [0.049000000000000002, 0.64800000000000002, 0.041000000000000002, 0.037999999999999999, 0.80400000000000005, 0.044999999999999998] </relax_error> <s2_err ieee_754_byte_array="[87, 48, 121, 224, 164, 254, 164, 63]"> 0.04100527992395147 </s2_err> <s2f_err ieee_754_byte_array="[161, 87, 243, 76, 29, 198, 160, 63]"> 0.032761493342760468 </s2f_err> <s2s_err ieee_754_byte_array="[15, 24, 168, 63, 237, 77, 149, 63]"> 0.02080507946995885 </s2s_err> <local_tm_err> None </local_tm_err> <te_err> None </te_err> <tf_err> None </tf_err> <ts_err ieee_754_byte_array="[245, 234, 87, 107, 14, 23, 232, 61]"> 1.7527828292232752e-10 </ts_err> <rex_err> None </rex_err> <r_err ieee_754_byte_array="[113, 97, 204, 73, 226, 50, 176, 58]"> 5.2341033882074777e-26 </r_err> <csa_err ieee_754_byte_array="[135, 170, 37, 1, 12, 89, 12, 60]"> 1.9209243180375657e-19 </csa_err> <s2_sim> [0.72126495270768964, 0.7307712098756376, 0.76644743845801167] </s2_sim> <s2f_sim> [0.81915405965996979, 0.87574326104926303, 0.87203256421955588] </s2f_sim> <s2s_sim> [0.8804997597241796, 0.83445827376401549, 0.87892066180345008] </s2s_sim> <local_tm_sim> [None, None, None] </local_tm_sim> <te_sim> [None, None, None] </te_sim> <tf_sim> [None, None, None] </tf_sim> <ts_sim> [5.0162380542358768e-10, 5.1905636720006613e-10, 4.9878987257130834e-10] </ts_sim> <rex_sim> [None, None, None] </rex_sim> <r_sim> [1.0200000000000001e-10, 1.0200000000000001e-10, 1.0200000000000001e-10] </r_sim> <csa_sim> [-0.00015999999999999999, -0.00015999999999999999, -0.00015999999999999999] </csa_sim> <relax_sim_data> [[1.2259341365150942, 9.5384246795844483, 0.53496232953857514, 0.86811125282694646, 11.216112862776725, 0.64002633181568969], [1.3308243333245262, 10.066727729132351, 0.500 </relax_sim_data> <chi2_sim> [0.57322913112490592, 5.8309178978062732, 4.4746991237114315] </chi2_sim> <f_count_sim> [22, 50, 14] </f_count_sim> <g_count_sim> [10, 14, 8] </g_count_sim> <h_count_sim> [6, 10, 5] </h_count_sim> <iter_sim> [6, 10, 5] </iter_sim> <select_sim> [True, True, True] </select_sim> <warning_sim> [None, None, None] </warning_sim> </spin> </res>