[prev in list] [next in list] [prev in thread] [next in thread]
List: relax-devel
Subject: Re: Deficiencies and errors in the storage of model-free contents in NMR-STAR.
From: Sébastien_Morin <sebastien.morin.1 () domain ! hid>
Date: 2009-03-10 14:59:08
Message-ID: 49B6803C.5020207 () domain ! hid
[Download RAW message or body]
Hi,
See comments below on the alpha parameter for us-ms motions...
Regards,
Séb
Edward d'Auvergne wrote:
> 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.
>
>
This is almost exact. In most model-free analysis, Rex has been treated
as being scaled quadratically, with alpha = 2. However, alpha = 1 is
intermediate exchange, while slow exchange is with alpha -> 0.
...
The exchange limit is defined by both kex and DeltaOmega, respectively
the exchange rate and the difference in chemical shift of states A and
B. The parameter alpha can be calculated to establish the exchange regime.
alpha = [ 2 * ( k_ex / DeltaOmega )^2 ] / [ 1 + ( k_ex / DeltaOmega )^2 ]
Slow exchange: alpha between 0 and 1
Intermediate exchange: alpha ~ 1
Fast exchange: alpha between 1 and 2
This alpha function was introduced in the following paper by Millet (see
equation 14) : Millet et al., JACS, 2000, 122: 2867-2877.
> 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>
>
> _______________________________________________
> relax (http://nmr-relax.com)
>
> This is the relax-devel mailing list
> relax-devel@domain.hid
>
> 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-devel
>
>
>
--
Sébastien Morin
PhD Student
S. Gagné NMR Laboratory
Université Laval & PROTEO
Québec, Canada
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic