Author: bugman Date: Mon Dec 1 16:00:40 2008 New Revision: 8082 URL: http://svn.gna.org/viewcvs/relax?rev=8082&view=rev Log: Merged revisions 8026-8028,8061,8064 via svnmerge from svn+ssh://bugman@xxxxxxxxxxx/svn/relax/1.3 ........ r8026 | bugman | 2008-11-26 18:02:05 +0100 (Wed, 26 Nov 2008) | 3 lines Wrote 8 system tests for reading various PDB files using the internal and Scientific python objects. ........ r8027 | bugman | 2008-11-27 09:57:19 +0100 (Thu, 27 Nov 2008) | 3 lines Added a lactose PDB file and 2 system tests reading this file. ........ r8028 | bugman | 2008-11-27 10:12:55 +0100 (Thu, 27 Nov 2008) | 5 lines Fix for the __atom_index() method. This is a partial fix for bug #12637 (https://gna.org/bugs/?12637). The struct_index of None is now handled. ........ r8061 | bugman | 2008-11-29 17:53:30 +0100 (Sat, 29 Nov 2008) | 14 lines Manually ported the CHANGES file changes to the 1.3 line. The command used was: svn merge -r8059:8060 svn+ssh://bugman@xxxxxxxxxxx/svn/relax/tags/1.3.3 . ..... r8060 | bugman | 2008-11-29 17:51:50 +0100 (Sat, 29 Nov 2008) | 3 lines Changed paths: M /tags/1.3.3/docs/CHANGES Updated the CHANGES file for relax 1.3.3. ..... ........ r8064 | bugman | 2008-11-29 18:32:37 +0100 (Sat, 29 Nov 2008) | 14 lines Manually ported the user manual fixes of r8063 from the 1.3.3 tag. The command used was: svn merge -r8062:8063 svn+ssh://bugman@xxxxxxxxxxx/svn/relax/tags/1.3.3 . ..... r8063 | bugman | 2008-11-29 18:31:20 +0100 (Sat, 29 Nov 2008) | 3 lines Changed paths: M /tags/1.3.3/docs/latex/relax.tex Fixed the spacing in the table of contents of the user manual. ..... ........ Added: branches/spectral_errors/test_suite/shared_data/structures/lactose_MCMM4_S1_1.pdb - copied unchanged from r8064, 1.3/test_suite/shared_data/structures/lactose_MCMM4_S1_1.pdb Modified: branches/spectral_errors/ (props changed) branches/spectral_errors/docs/CHANGES branches/spectral_errors/docs/latex/relax.tex branches/spectral_errors/generic_fns/structure/internal.py branches/spectral_errors/test_suite/system_tests/structure.py Propchange: branches/spectral_errors/ ------------------------------------------------------------------------------ --- svnmerge-integrated (original) +++ svnmerge-integrated Mon Dec 1 16:00:40 2008 @@ -1,1 +1,1 @@ -/1.3:1-8021 +/1.3:1-8081 Modified: branches/spectral_errors/docs/CHANGES URL: http://svn.gna.org/viewcvs/relax/branches/spectral_errors/docs/CHANGES?rev=8082&r1=8081&r2=8082&view=diff ============================================================================== --- branches/spectral_errors/docs/CHANGES (original) +++ branches/spectral_errors/docs/CHANGES Mon Dec 1 16:00:40 2008 @@ -1,3 +1,46 @@ +Version 1.3.3 +(29 November 2008, from /1.3) +http://svn.gna.org/svn/relax/tags/1.3.3 + + Features: + * Dasha can be run from within relax again. + * Art Palmer's Modelfree can be run from within relax again. + * OpenDX execution and control is once again supported. + * NMRView peak lists are now supported. + * XEasy peak lists are again supported. + + Changes: + * Internal relax cleanups by the addition of the specific model_loop() method - this should eliminate a series of potential hidden bugs. + * The results.write() and results.display() now only support XML output. + * More information is now extracted from the Modelfree mfout files. + * The version of the Modelfree program is checked and if it is an old, buggy version, relax will refuse to execute it. + * The system tests can now handle the sometimes large differences in Modelfree results between the GNU gcc and Portland C compiler versions. + * Fixes and improvements to much of the API documentation. + + Bugfixes: + * A failure of the minimisation set() function has been fixed. + * The reset() user function now works again. + * Fixes to the relax data store methods add(), to_xml() and from_xml(). + * Many fixes for the support of Art Palmer's Modelfree program. + * The mapping of the global parameter space (diffusion tensor, etc.) for visualisation in OpenDX has been fixed. + * state.save() no longer fails after running state.load() (bug #12437). + * Sparky peak lists with the assignment '?-?' are now handled properly (bug #11913). + * Error analysis in relaxation curve-fitting was incorrectly implemented with standard deviation rather than variance averaging (bug #12456). + * A number of fixes for the LaTeX table generating sample script. + * Fixes for the teeing and logging via the -l and -t command line arguments (bug #12489). + * Fix for when XH bond vector data from a PDB file is missing for a spin system (bug #12487). + * Many fixes for when structural data is missing. + * The relax script is no longer overwritten if the log or tee file is not specified on the command line (bug #12498). + * Missing RelaxError failure in the sequence handling code (found when trying to solve bug #12582). + * A failure in the results.write() user function has been fixed (bug #12582). + * Model selection no longer fails if no model is ever selected. + * Model selection was failing if spins were deselected (bug #12591). + * The directory name can now be part of the file name argument to results.read() (bug #12588). + * Optimisation of only the diffusion tensor after calling fix() was failing if some spins were deselected (bug #12607). + * The internal PDB reader was failing when the PDB file contained CONECT records (bug #12637). + + + Version 1.3.2 (8 October 2008, from /1.3) http://svn.gna.org/svn/relax/tags/1.3.2 Modified: branches/spectral_errors/docs/latex/relax.tex URL: http://svn.gna.org/viewcvs/relax/branches/spectral_errors/docs/latex/relax.tex?rev=8082&r1=8081&r2=8082&view=diff ============================================================================== --- branches/spectral_errors/docs/latex/relax.tex (original) +++ branches/spectral_errors/docs/latex/relax.tex Mon Dec 1 16:00:40 2008 @@ -14,6 +14,9 @@ % Obliterate those painful LaTeX margins! \usepackage{vmargin} + +% Better Table of contents (Toc), List of figures (Lof), and List of tables (Lot). +\usepackage{tocloft} % Better maths. \usepackage{amsmath} @@ -35,6 +38,11 @@ % New environment. \newenvironment{exampleenv}{\footnotesize \begin{ttfamily} \sloppy}{\fussy \end{ttfamily}} \newenvironment{spacedpara}{\setlength{\parindent}{0pt} \setlength{\parskip}{2ex plus 0.5ex minus 0.2ex}}{} + +% Modify the Toc, Lof, and Lot layout. +\setlength{\cftsecnumwidth}{10mm} +\setlength{\cftsubsecnumwidth}{16mm} +\setlength{\cftfignumwidth}{12mm} % Maths commands. \newcommand{\Par}{{\scriptscriptstyle \parallel}} Modified: branches/spectral_errors/generic_fns/structure/internal.py URL: http://svn.gna.org/viewcvs/relax/branches/spectral_errors/generic_fns/structure/internal.py?rev=8082&r1=8081&r2=8082&view=diff ============================================================================== --- branches/spectral_errors/generic_fns/structure/internal.py (original) +++ branches/spectral_errors/generic_fns/structure/internal.py Mon Dec 1 16:00:40 2008 @@ -123,11 +123,17 @@ @rtype: int """ - # Loop over the atoms. - for i in xrange(len(self.structural_data[struct_index].atom_num)): - # Return the index. - if self.structural_data[struct_index].atom_num[i] == atom_num: - return i + # Loop over the structures. + for i in xrange(self.num): + # Skip non-matching structures. + if struct_index != None and struct_index != i: + continue + + # Loop over the atoms. + for j in xrange(len(self.structural_data[i].atom_num)): + # Return the index. + if self.structural_data[i].atom_num[j] == atom_num: + return j # Should not be here, the PDB connect records are incorrect. warn(RelaxWarning("The atom number " + `atom_num` + " from the CONECT record cannot be found within the ATOM and HETATM records.")) Modified: branches/spectral_errors/test_suite/system_tests/structure.py URL: http://svn.gna.org/viewcvs/relax/branches/spectral_errors/test_suite/system_tests/structure.py?rev=8082&r1=8081&r2=8082&view=diff ============================================================================== --- branches/spectral_errors/test_suite/system_tests/structure.py (original) +++ branches/spectral_errors/test_suite/system_tests/structure.py Mon Dec 1 16:00:40 2008 @@ -128,3 +128,106 @@ # Check the atomic data. self.assertEqual(cdp.structure.structural_data[0].peptide_chains[0].sequence(), res_name) + + + def test_read_pdb_internal1(self): + """Load the '1F35_N_H_molmol.pdb' PDB file (using the internal structural object PDB reader).""" + + # Path of the files. + path = sys.path[-1] + '/test_suite/shared_data/structures' + + # Read the PDB. + self.relax.interpreter._Structure.read_pdb(file='1F35_N_H_molmol.pdb', dir=path, parser='internal') + + + def test_read_pdb_internal2(self): + """Load the 'Ap4Aase_res1-12.pdb' PDB file (using the internal structural object PDB reader).""" + + # Path of the files. + path = sys.path[-1] + '/test_suite/shared_data/structures' + + # Read the PDB. + self.relax.interpreter._Structure.read_pdb(file='Ap4Aase_res1-12.pdb', dir=path, parser='internal') + + + def test_read_pdb_internal3(self): + """Load the 'gromacs_phthalic_acid.pdb' PDB file (using the internal structural object PDB reader).""" + + # Path of the files. + path = sys.path[-1] + '/test_suite/shared_data/structures' + + # Read the PDB. + self.relax.interpreter._Structure.read_pdb(file='gromacs_phthalic_acid.pdb', dir=path, parser='internal') + + + def test_read_pdb_internal4(self): + """Load the 'tylers_peptide_trunc.pdb' PDB file (using the internal structural object PDB reader).""" + + # Path of the files. + path = sys.path[-1] + '/test_suite/shared_data/structures' + + # Read the PDB. + self.relax.interpreter._Structure.read_pdb(file='tylers_peptide_trunc.pdb', dir=path, parser='internal') + + + def test_read_pdb_internal5(self): + """Load the 'lactose_MCMM4_S1_1.pdb' PDB file (using the internal structural object PDB reader).""" + + # Path of the files. + path = sys.path[-1] + '/test_suite/shared_data/structures' + + # Read the PDB. + self.relax.interpreter._Structure.read_pdb(file='lactose_MCMM4_S1_1.pdb', dir=path, parser='internal') + + + def test_read_pdb_scientific1(self): + """Load the '1F35_N_H_molmol.pdb' PDB file (using the Scientific python structural object PDB reader).""" + + # Path of the files. + path = sys.path[-1] + '/test_suite/shared_data/structures' + + # Read the PDB. + self.relax.interpreter._Structure.read_pdb(file='1F35_N_H_molmol.pdb', dir=path, parser='scientific') + + + def test_read_pdb_scientific2(self): + """Load the 'Ap4Aase_res1-12.pdb' PDB file (using the Scientific python structural object PDB reader).""" + + # Path of the files. + path = sys.path[-1] + '/test_suite/shared_data/structures' + + # Read the PDB. + self.relax.interpreter._Structure.read_pdb(file='Ap4Aase_res1-12.pdb', dir=path, parser='scientific') + + + def test_read_pdb_scientific3(self): + """Load the 'gromacs_phthalic_acid.pdb' PDB file (using the Scientific python structural object PDB reader).""" + + # Path of the files. + path = sys.path[-1] + '/test_suite/shared_data/structures' + + # Read the PDB. + self.relax.interpreter._Structure.read_pdb(file='gromacs_phthalic_acid.pdb', dir=path, parser='scientific') + + + def test_read_pdb_scientific4(self): + """Load the 'tylers_peptide_trunc.pdb' PDB file (using the Scientific python structural object PDB reader).""" + + # Path of the files. + path = sys.path[-1] + '/test_suite/shared_data/structures' + + # Read the PDB. + self.relax.interpreter._Structure.read_pdb(file='tylers_peptide_trunc.pdb', dir=path, parser='scientific') + + + def test_read_pdb_scientific5(self): + """Load the 'lactose_MCMM4_S1_1.pdb' PDB file (using the Scientific python structural object PDB reader).""" + + # Path of the files. + path = sys.path[-1] + '/test_suite/shared_data/structures' + + # Read the PDB. + self.relax.interpreter._Structure.read_pdb(file='lactose_MCMM4_S1_1.pdb', dir=path, parser='scientific') + + +