mailr3550 - /1.3/generic_fns/spin.py


Others Months | Index by Date | Thread Index
>>   [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Header


Content

Posted by edward on November 18, 2007 - 20:02:
Author: bugman
Date: Sun Nov 18 20:02:39 2007
New Revision: 3550

URL: http://svn.gna.org/viewcvs/relax?rev=3550&view=rev
Log:
Implemented the generic_fns.spin.renumber() function.


Modified:
    1.3/generic_fns/spin.py

Modified: 1.3/generic_fns/spin.py
URL: 
http://svn.gna.org/viewcvs/relax/1.3/generic_fns/spin.py?rev=3550&r1=3549&r2=3550&view=diff
==============================================================================
--- 1.3/generic_fns/spin.py (original)
+++ 1.3/generic_fns/spin.py Sun Nov 18 20:02:39 2007
@@ -219,42 +219,33 @@
             spin.name = new_name
 
 
-def renumber(res_id, new_number=None):
-    """Function for renumbering residues.
-
-    @param res_id:      The identifier string for the residue to renumber.
-    @type res_id:       str
-    @param new_number:  The new residue number.
+def renumber(spin_id, new_number=None):
+    """Function for renumbering spins`.
+
+    @param spin_id:     The identifier string for the spin to renumber.
+    @type spin_id:      str
+    @param new_number:  The new spin number.
     @type new_number:   str
     """
 
     # Split up the selection string.
-    mol_token, res_token, spin_token = tokenise(res_id)
-
-    # Disallow spin selections.
-    if spin_token != None:
-        raise RelaxSpinSelectDisallowError
+    mol_token, res_token, spin_token = tokenise(spin_id)
 
     # Parse the tokens.
-    residues = parse_token(res_token)
+    spins = parse_token(spin_token)
 
     # Catch multiple renumberings!
     number = 0
-    for mol in molecule_loop(mol_token):
-        # Loop over the residues of the molecule.
-        for i in xrange(len(mol.res)):
-            # Rename the residue is there is a match.
-            if mol.res[i].num in residues or mol.res[i].name in residues:
-                number = number + 1
-
-    # Fail if multiple residues are numbered.
+    for spin in spin_loop(spin_id):
+        if spin.num in spins or spin.name in spins:
+            number = number + 1
+
+    # Fail if multiple spins are numbered.
     if number > 1:
-        raise RelaxError, "The renumbering of multiple residues is 
disallowed."
-
-    # Molecule loop.
-    for mol in molecule_loop(mol_token):
-        # Loop over the residues of the molecule.
-        for i in xrange(len(mol.res)):
-            # Rename the residue is there is a match.
-            if mol.res[i].num in residues or mol.res[i].name in residues:
-                mol.res[i].num = new_number
+        raise RelaxError, "The renumbering of multiple spins is disallowed."
+
+    # Spin loop.
+    for spin in spin_loop(spin_id):
+        # Rename the spin if there is a match.
+        if spin.num in spins or spin.name in spins:
+            spin.num = new_number




Related Messages


Powered by MHonArc, Updated Sun Nov 18 20:20:30 2007