mailr18245 - /trunk/specific_fns/n_state_model.py


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

Header


Content

Posted by edward on January 21, 2013 - 21:17:
Author: bugman
Date: Mon Jan 21 21:17:37 2013
New Revision: 18245

URL: http://svn.gna.org/viewcvs/relax?rev=18245&view=rev
Log:
Fixes for the support of the paramagnetic centre optimisation during Monte 
Carlo simulations.


Modified:
    trunk/specific_fns/n_state_model.py

Modified: trunk/specific_fns/n_state_model.py
URL: 
http://svn.gna.org/viewcvs/relax/trunk/specific_fns/n_state_model.py?rev=18245&r1=18244&r2=18245&view=diff
==============================================================================
--- trunk/specific_fns/n_state_model.py (original)
+++ trunk/specific_fns/n_state_model.py Mon Jan 21 21:17:37 2013
@@ -151,19 +151,18 @@
         # The paramagnetic centre.
         if hasattr(cdp, 'paramag_centre_fixed') and not 
cdp.paramag_centre_fixed:
             if not hasattr(cdp, 'paramagnetic_centre'):
-                param_vector.append(0.0)
-                param_vector.append(0.0)
-                param_vector.append(0.0)
-
+                for i in range(3):
+                    param_vector.append(0.0)
             elif sim_index != None:
-                
param_vector.append(cdp.paramagnetic_centre_sim[sim_index][0])
-                
param_vector.append(cdp.paramagnetic_centre_sim[sim_index][1])
-                
param_vector.append(cdp.paramagnetic_centre_sim[sim_index][2])
-
+                if cdp.paramagnetic_centre_sim[sim_index] == None:
+                    for i in range(3):
+                        param_vector.append(0.0)
+                else:
+                    for i in range(3):
+                        
param_vector.append(cdp.paramagnetic_centre_sim[sim_index][i])
             else:
-                param_vector.append(cdp.paramagnetic_centre[0])
-                param_vector.append(cdp.paramagnetic_centre[1])
-                param_vector.append(cdp.paramagnetic_centre[2])
+                for i in range(3):
+                    param_vector.append(cdp.paramagnetic_centre[i])
 
         # Convert all None values to zero (to avoid conversion to NaN).
         for i in range(len(param_vector)):
@@ -643,6 +642,8 @@
 
             # Monte Carlo simulated positions.
             else:
+                if cdp.paramagnetic_centre_sim[sim_index] == None:
+                    cdp.paramagnetic_centre_sim[sim_index] = [None, None, 
None]
                 cdp.paramagnetic_centre_sim[sim_index][0] = param_vector[-3]
                 cdp.paramagnetic_centre_sim[sim_index][1] = param_vector[-2]
                 cdp.paramagnetic_centre_sim[sim_index][2] = param_vector[-1]
@@ -895,13 +896,15 @@
         atomic_pos = array(atomic_pos, float64)
 
         # The paramagnetic centre.
-        if hasattr(cdp, 'paramagnetic_centre'):
-            if sim_index != None and hasattr(cdp, 'paramag_centre_fixed') 
and not cdp.paramag_centre_fixed:
+        if not hasattr(cdp, 'paramagnetic_centre'):
+            paramag_centre = zeros(3, float64)
+        elif sim_index != None:
+            if cdp.paramagnetic_centre_sim[sim_index] == None:
+                paramag_centre = zeros(3, float64)
+            else:
                 paramag_centre = 
array(cdp.paramagnetic_centre_sim[sim_index])
-            else:
-                paramag_centre = array(cdp.paramagnetic_centre)
         else:
-            paramag_centre = zeros(3, float64)
+            paramag_centre = array(cdp.paramagnetic_centre)
 
         # Return the data structures.
         return atomic_pos, paramag_centre




Related Messages


Powered by MHonArc, Updated Mon Jan 21 21:20:02 2013