Author: bugman
Date: Thu Feb 5 18:47:41 2015
New Revision: 27561
URL: http://svn.gna.org/viewcvs/relax?rev=27561&view=rev
Log:
Big bug fix for the N-state model num_data_points() function.
This is from the specific_analyses.n_state_model.data module. This code was
very much out of date.
It was expecting an ancient behaviour where the spin container 'pcs' variable
and interatomic data
container 'rdc' where lists of floats. However these were converted many years
ago to dictionaries
with keys set to the alignment IDs. The result was that no RDCs nor PCSs were
counted as a base
data point, so the function would in most cases return a value of zero.
Modified:
trunk/specific_analyses/n_state_model/data.py
Modified: trunk/specific_analyses/n_state_model/data.py
URL:
http://svn.gna.org/viewcvs/relax/trunk/specific_analyses/n_state_model/data.py?rev=27561&r1=27560&r2=27561&view=diff
==============================================================================
--- trunk/specific_analyses/n_state_model/data.py (original)
+++ trunk/specific_analyses/n_state_model/data.py Thu Feb 5 18:47:41 2015
@@ -1,6 +1,6 @@
###############################################################################
# #
-# Copyright (C) 2007-2014 Edward d'Auvergne #
+# Copyright (C) 2007-2015 Edward d'Auvergne #
# #
# This file is part of the program relax (http://www.nmr-relax.com). #
# #
@@ -26,6 +26,7 @@
from numpy.linalg import norm
# relax module imports.
+from lib.check_types import is_float
from lib.errors import RelaxError
from pipe_control.interatomic import interatomic_loop
from pipe_control.mol_res_spin import return_spin, spin_loop
@@ -145,8 +146,8 @@
# PCS data (skipping array elements set to None).
if 'pcs' in data_types:
if hasattr(spin, 'pcs'):
- for pcs in spin.pcs:
- if isinstance(pcs, float):
+ for id in spin.pcs:
+ if is_float(spin.pcs[id]):
n = n + 1
# Interatomic data loop.
@@ -154,8 +155,8 @@
# RDC data (skipping array elements set to None).
if 'rdc' in data_types:
if hasattr(interatom, 'rdc'):
- for rdc in interatom.rdc:
- if isinstance(rdc, float):
+ for id in interatom.rdc:
+ if is_float(interatom.rdc[id]):
n = n + 1
# Alignment tensors.
_______________________________________________
relax (http://www.nmr-relax.com)
This is the relax-commits mailing list
[email protected]
To unsubscribe from this list, get a password
reminder, or change your subscription options,
visit the list information page at
https://mail.gna.org/listinfo/relax-commits