Author: bugman Date: Mon Feb 18 17:31:35 2013 New Revision: 18479 URL: http://svn.gna.org/viewcvs/relax?rev=18479&view=rev Log: Created the Structure.test_rmsd system test. This test checks the currently unimplemented structure.add_model and structure.rmsd user functions. Modified: trunk/test_suite/system_tests/structure.py Modified: trunk/test_suite/system_tests/structure.py URL: http://svn.gna.org/viewcvs/relax/trunk/test_suite/system_tests/structure.py?rev=18479&r1=18478&r2=18479&view=diff ============================================================================== --- trunk/test_suite/system_tests/structure.py (original) +++ trunk/test_suite/system_tests/structure.py Mon Feb 18 17:31:35 2013 @@ -20,6 +20,7 @@ ############################################################################### # Python module imports. +from math import sqrt from numpy import float64, zeros from os import sep from tempfile import mktemp @@ -882,6 +883,28 @@ self.assertAlmostEqual(cdp.interatomic[0].vector[2], -0.6675913) + def test_rmsd(self): + """Test the structure.rmsd user function.""" + + # Set up 3 models. + self.interpreter.structure.add_model() + self.interpreter.structure.add_model() + self.interpreter.structure.add_model() + + # Create a structure with some atoms. + self.interpreter.structure.add_atom(atom_name='A', res_name='UNK', res_num=1, pos=[[1., 0., 0.], [0., 0., 0.], [0., 0., 1.]], element='S') + self.interpreter.structure.add_atom(atom_name='A', res_name='UNK', res_num=2, pos=[[1., 2., 0.], [0., 2., 0.], [0., 2., 1.]], element='S') + self.interpreter.structure.add_atom(atom_name='A', res_name='UNK', res_num=3, pos=[[1., 20., 0.], [0., 20., 0.], [0., 20., 1.]], element='S') + + # Calculate the RMSD. + self.interpreter.structure.rmsd() + + # Checks. + self.assert_(hasattr(cdp, 'structure')) + self.assert_(hasattr(cdp.structure, 'rmsd')) + self.assertEqual(cdp.structure.rmsd, 3*sqrt(2)) + + def test_superimpose_fit_to_first(self): """Test of the structure.superimpose user function, fitting to the first structure."""