mailr20328 - /branches/relax_disp/lib/dispersion/cr72.py


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

Header


Content

Posted by edward on July 16, 2013 - 11:17:
Author: bugman
Date: Tue Jul 16 11:17:47 2013
New Revision: 20328

URL: http://svn.gna.org/viewcvs/relax?rev=20328&view=rev
Log:
Small speed up for the lib.dispersion.cr72 module for the R20A != R20B case.

Replicated calculations have been minimised.


Modified:
    branches/relax_disp/lib/dispersion/cr72.py

Modified: branches/relax_disp/lib/dispersion/cr72.py
URL: 
http://svn.gna.org/viewcvs/relax/branches/relax_disp/lib/dispersion/cr72.py?rev=20328&r1=20327&r2=20328&view=diff
==============================================================================
--- branches/relax_disp/lib/dispersion/cr72.py (original)
+++ branches/relax_disp/lib/dispersion/cr72.py Tue Jul 16 11:17:47 2013
@@ -90,14 +90,17 @@
     # Repetitive calculations (to speed up calculations).
     dw2 = dw**2
     r20_kex = (r20a + r20b + kex) / 2.0
+    k_AB = pA * kex
+    k_BA = pB * kex
 
     # The Psi and zeta values.
     if r20a != r20b:
-        Psi = (r20a - r20b - pA*kex + pB*kex)**2 - dw2 + 4.0*pA*pB*kex**2
-        zeta = 2.0*dw * (r20a - r20b - pA*kex + pB*kex)
+        fact = r20a - r20b - k_AB + k_BA
+        Psi = fact**2 - dw2 + 4.0*pA*pB*kex**2
+        zeta = 2.0*dw * fact
     else:
         Psi = kex**2 - dw2
-        zeta = -2.0*dw * (pA*kex - pB*kex)
+        zeta = -2.0*dw * (k_AB - k_BA)
 
     # More repetitive calculations.
     sqrt_psi2_zeta2 = sqrt(Psi**2 + zeta**2)




Related Messages


Powered by MHonArc, Updated Tue Jul 16 12:20:02 2013