I have data at 3 field strengths. Thanks for the references--I had already had your 2008 papers, but some of the others could be useful. Also good to know I was using the wrong script!
Tyler Quoting Edward d'Auvergne <[EMAIL PROTECTED]>: > On Tue, Oct 21, 2008 at 3:44 AM, Tyler Reddy <[EMAIL PROTECTED]> wrote: >> Hello, >> >> 1) I changed that line and I'm still having a bit of trouble (see output >> below). >> >> 2) The errors that I'm using are described as 'the standard error for each >> parameter... [which] is an easy calculation from the covariance matrix.' >> Paraphrasing from the author there--I'm guessing this isn't the optimal >> input? > > These are not completely unreasonable for a simple exponential fit, > but are not great. The use of the covariance matrix is known to be > the dirtiest and roughest technique for parameter errors and requires > that the optimisation space be quadratic, which is often not the case. > The space in the immediate vacinity of the minimum is quadratic, but > further out where the errors are scattered, the space is more > convoluted and hence the errors aren't very accurate. > > >> 3) I'm not sure it's explicitly stated in the manual, but I'm proceeding on >> the >> assumption that you run the multi-model script first and then modsel to >> decide >> on the right model for each given residue. A few weeks ago I was >> experimenting >> with this and if I didn't leave the global correlation time as fixed the >> computation seemed to take a VERY long time (unclear if it was ever going to >> finish). > > If you have data at more than one field strength, I would recommend > the 'full_analysis.py' sample script. The reasons are given in > d'Auvergne, E. J. and Gooley, P. R. (2008). Optimisation of NMR > dynamic models II. (http://www.nmr-relax.com/refs.html). If not, then > you'll need to be careful as to what you do here. The multi-model and > modsel script are only a small part of the picture. You need to then > optimise the diffusion tensor. These are 3 components of one element > of the analysis. You must repeat these until convergence of the > global model. Please see figures 6.1, 6.2, and 6.3 of the 1.3.2 or > 1.2.14 relax manuals for more details. I can't emphasise enough how > important applying all of these steps are. And if you want to avoid > the problems of artificial motions (d'Auvergne E. J., Gooley P. R. > (2007). Set theory formulation of the model-free problem and the > diffusion seeded model-free paradigm. Mol. Biosyst., 3(7), 483-494. > http://www.nmr-relax.com/refs.html), then I would highly recommend > data at 2 or more field strengths. > > And finally, once convergence of the global model has been reached, > you can then do Monte Carlo simulations to propagate the errors from > the relaxation data to the model-free parameters. This will generate > the s2_sim, etc. data structures that are missing from the LaTeX table > generating script. I'll add checks to this script so that errors are > not required, but an analysis must have Monte Carlo simulations. > > As for the calculation taking a very long time when optimisating the > global model (model-free parameters of all spins + diffusion tensor), > that is because this model is absolutely huge, the space is highly > convoluted, and you are starting a very long way away from the global > minimum. And then which model-free models are selected influence this > model and vice verse. Again see the 2007 reference for a full > investigation of this issue. > > >> Also, as a side note, since my peptide is actually in a micelle, I'm not >> sure if >> there's anything extra I can do for diffusion tensor and correlation time >> type >> stuff. I know some programs (i.e. the Mathematica notebooks by Dr. >> Spyracopoulos) read in PDB files for diffusion tensor calculations, but I >> suspect it's a bit of a mess when the system is more complicated than the >> structure in the PDB file would suggest. > > Ah, so you'll have quite a mobile system. You will have nanosecond > motions throughout the system on top of the diffusion tensor and the > fast picosecond internal motions. I would suggest you look to the > similar bacteriorhodopsin work of Orekhov, V. Y., Korzhnev, D. M., > Diercks, T., Kessler, H., and Arseniev, A. S. (1999). H-1-N-15 NMR > dynamic study of an isolated alpha-helical peptide > (1-36)-bacteriorhodopsin reveals the equilibrium helix-coil > transitions. J. Biomol. NMR, 14(4), 345–356. The verdict, and I would > 100% recommend as being 100% essential - you must, must have data at > more than 1 field strength to study this system! This system is > absolutely impossible to study the dynamics of otherwise. If you > don't believe me, see also sections 6.4.3, 6.4.4, and all of chapter 5 > of my PhD thesis (http://repository.unimelb.edu.au/10187/2281). > Chapter 5, which is almost the same as my 2007 Mol. Biosyst. paper, > will point you to many other references which should hopefully > demonstrate the absolute must of having multiple field strength data > for such a highly mobile system. > > Regards, > > Edward > > >> >> Output: >> >> Latex() >> ---------------------------------------------------------------------------------------------------- >> >> relax> pipe.create(pipe_name='results', pipe_type='mf') >> >> relax> results.read(file='results', dir=None) >> Opening the file 'results' for reading. >> Traceback (most recent call last): >> File "/Applications/relax-1.3.1/relax-1.3/relax", line 408, in <module> >> Relax() >> File "/Applications/relax-1.3.1/relax-1.3/relax", line 125, in __init__ >> self.interpreter.run(self.script_file) >> File "/Applications/relax-1.3.1/relax-1.3/prompt/interpreter.py", line 270, >> in >> run >> return run_script(intro=self.__intro_string, local=self.local, >> script_file=script_file, quit=self.__quit_flag, >> show_script=self.__show_script, >> raise_relax_error=self.__raise_relax_error) >> File "/Applications/relax-1.3.1/relax-1.3/prompt/interpreter.py", line 531, >> in >> run_script >> return console.interact(intro, local, script_file, quit, >> show_script=show_script, raise_relax_error=raise_relax_error) >> File "/Applications/relax-1.3.1/relax-1.3/prompt/interpreter.py", line 427, >> in >> interact_script >> execfile(script_file, local) >> File "latex_mf_table.py", line 220, in <module> >> Latex() >> File "latex_mf_table.py", line 68, in __init__ >> self.table_body() >> File "latex_mf_table.py", line 186, in table_body >> self.file.write("%9.3f & %9.3f & " % (spin.s2, spin.s2_err)) >> AttributeError: 'SpinContainer' object has no attribute 's2_err' >> >> >> >> Quoting Edward d'Auvergne <[EMAIL PROTECTED]>: >> >>> Hi, >>> >>> Using a new system test, I found one more bug in the script. This has >>> been fixed in the 1.3 repository line. If you haven't used subversion >>> to check out (and update) the 1.3 line, then you can see the changes >>> required in my commit at: >>> >>> https://mail.gna.org/public/relax-commits/2008-10/msg00402.html >>> >>> Just change the line starting with '-' to the line starting with '+'. >>> Oh, it may take a few minutes for the link to be generated. >>> >>> Regards, >>> >>> Edward >>> >>> >>> On Mon, Oct 20, 2008 at 10:12 PM, Edward d'Auvergne >>> <[EMAIL PROTECTED]> wrote: >>>> >>>> Hi, >>>> >>>> That's a bug in the sample script. Try adding a ':' character to the >>>> end of line 171 in your script. I've fixed this in the 1.3 repository >>>> line and will try to add a system test to the program to try to catch >>>> any bugs before you do ;) >>>> >>>> Cheers, >>>> >>>> Edward >>>> >>>> >>>> >>>> On Mon, Oct 20, 2008 at 9:27 PM, Tyler Reddy <[EMAIL PROTECTED]> wrote: >>>>> >>>>> I've been trying to use the latex python script on the aic results file. >>>>> I get >>>>> the syntax error below. Not sure if I'm doing something wrong or if >>>>> there's >>>>> just a small problem with that line of code: >>>>> >>>>> Latex() >>>>> >>>>> ---------------------------------------------------------------------------------------------------- >>>>> Traceback (most recent call last): >>>>> File "/Applications/relax-1.3.1/relax-1.3/relax", line 408, in <module> >>>>> Relax() >>>>> File "/Applications/relax-1.3.1/relax-1.3/relax", line 125, in __init__ >>>>> self.interpreter.run(self.script_file) >>>>> File "/Applications/relax-1.3.1/relax-1.3/prompt/interpreter.py", >>>>> line 270, in >>>>> run >>>>> return run_script(intro=self.__intro_string, local=self.local, >>>>> script_file=script_file, quit=self.__quit_flag, >>>>> show_script=self.__show_script, >>>>> raise_relax_error=self.__raise_relax_error) >>>>> File "/Applications/relax-1.3.1/relax-1.3/prompt/interpreter.py", >>>>> line 531, in >>>>> run_script >>>>> return console.interact(intro, local, script_file, quit, >>>>> show_script=show_script, raise_relax_error=raise_relax_error) >>>>> File "/Applications/relax-1.3.1/relax-1.3/prompt/interpreter.py", >>>>> line 427, in >>>>> interact_script >>>>> execfile(script_file, local) >>>>> File "latex_mf_table.py", line 171 >>>>> for spin, spin_id in spin_loop(return_id=True) >>>>> SyntaxError: invalid syntax >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> Quoting Edward d'Auvergne <[EMAIL PROTECTED]>: >>>>> >>>>>> On Mon, Oct 20, 2008 at 5:12 PM, Tyler Reddy <[EMAIL PROTECTED]> wrote: >>>>>>> >>>>>>> Hello, >>>>>>> >>>>>>> 1) >>>>>>> >>>>>>> I have been using the multi model and model selection scripts in >>>>>>> relax 1.3.2 but >>>>>>> I have trouble displaying the output in a tabulated format. Both >>>>>>> scripts seem >>>>>>> to produce an xml document with various headers that isn't easy to >>>>>>> read. It >>>>>>> looks like format='columnar' isn't supported. I wonder what other >>>>>>> options I >>>>>>> have to look at this data? For some reason, I don't recall having >>>>>>> this problem >>>>>>> on a Linux machine a few weeks ago (using a Mac OS 10.4 at the >>>>>>> moment), but >>>>>>> anyways it would be nice to get readable model-free output. >>>>>> >>>>>> The results file is now in XML format and the more readable 'columnar' >>>>>> format has been removed from the 1.3 line. With the change to the new >>>>>> XML results file all the contents of a data pipe, irrespective of what >>>>>> that data is, is packaged. So you can put data into this pipe >>>>>> yourself and it will save that information (for advanced users, >>>>>> complex python objects will need the to_xml() and from_xml() methods >>>>>> to package and unpackage the data). The reason for removing the >>>>>> 'columnar' format was that it was considered too inflexible for the >>>>>> changes occuring in the 1.3 line, it contained duplicate information, >>>>>> had numerical precision issues, and there were alternatives to easily >>>>>> view this data. You can use the value.display() and value.write() >>>>>> user functions to display and save the results for a single parameter. >>>>>> If needed, these user functions could be extended to accept a list of >>>>>> parameters. >>>>>> >>>>>> Then there is the sample_scripts/latex_mf_table.py sample script which >>>>>> will generate a LaTeX table of the model-free results. This file can >>>>>> be copied and modified - this requires learning a bit of python - to >>>>>> format and display the results any way you wish. And finally if >>>>>> anyone really wants to, and has the skills to, they can modify this >>>>>> sample script to recreate a version of the 'columnar' format. This >>>>>> could be added to the relax sample scripts, and if their skills are >>>>>> very advanced, then much code from the 1.2 relax versions can be >>>>>> recycled. >>>>>> >>>>>> >>>>>>> 2) >>>>>>> >>>>>>> The error input for the relaxation rate parameters is currently my >>>>>>> non-linear >>>>>>> curve fitting standard deviation. I'm not sure if that means >>>>>>> subsequent >>>>>>> analysis will be completely incorrect? I guess it depends on the >>>>>>> comparison of >>>>>>> magnitude between these errors and the type of error that is >>>>>>> propagated by >>>>>>> relax during its own curve-fitting (which I am unable to do at the >>>>>>> moment). >>>>>> >>>>>> I'm guessing this is the sum of squared error value (SSE) from the >>>>>> fit. Or is it a regression coefficient or a chi-squared value? Did >>>>>> the fitting use a technique such as bootstrapping or jackknife >>>>>> simulations to estimate the parameter errors via propagation? Or did >>>>>> it use the covariance matrix? If it is the SSE, chi-squared, or >>>>>> regression coefficient then that value cannot be used. This will be >>>>>> wildly wrong and cause massive failure in model selection. It will >>>>>> cause big problems in optimisation, and if you are unlucky and have >>>>>> spaces with long, curved valleys or flat curved spaces leading to the >>>>>> minimum (that's model-free models m5 to m8 in most cases and not so >>>>>> uncommon in model m4) then the minimum can be squeezed and appear in >>>>>> another completely different region in the space. It will likely also >>>>>> cause model failure issues, which although removed by the eliminate() >>>>>> user function, might discount the best solution. I would guess that >>>>>> all of this will have a measurable affect on the final diffusion >>>>>> tensor as well and, if so, this will cause the appearance of >>>>>> artificial motions (my 2007 JBNMR paper at >>>>>> http://dx.doi.org/10.1039/b702202f explains these problems in detail). >>>>>> If one is not careful with the errors and they are significantly off, >>>>>> then the result is that the results may not be real. So I would only >>>>>> use the error if it comes from an established error propagation >>>>>> technique (i.e. from data to parameter error propagation). >>>>>> >>>>>> Regards, >>>>>> >>>>>> Edward >>>>>> >>>>> >>>>> >>>>> >>>>> >>>>> _______________________________________________ >>>>> relax (http://nmr-relax.com) >>>>> >>>>> This is the relax-users mailing list >>>>> relax-users@gna.org >>>>> >>>>> 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-users >>>>> >>>> >>> >> >> >> >> > _______________________________________________ relax (http://nmr-relax.com) This is the relax-users mailing list relax-users@gna.org 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-users