[Yt-svn] yt-commit r693 - trunk/yt/lagos

mturk at wrangler.dreamhost.com mturk at wrangler.dreamhost.com
Thu Jul 24 17:20:14 PDT 2008


Author: mturk
Date: Thu Jul 24 17:20:13 2008
New Revision: 693
URL: http://yt.spacepope.org/changeset/693

Log:
Added "TotalQuantity" to Derived Quantities, which adds up all of a given list
of fields.



Modified:
   trunk/yt/lagos/DerivedQuantities.py

Modified: trunk/yt/lagos/DerivedQuantities.py
==============================================================================
--- trunk/yt/lagos/DerivedQuantities.py	(original)
+++ trunk/yt/lagos/DerivedQuantities.py	Thu Jul 24 17:20:13 2008
@@ -256,3 +256,24 @@
 add_quantity("Extrema", function=_Extrema, combine_function=_combExtrema,
              n_ret=3)
         
+def _TotalQuantity(data, fields):
+    """
+    This function sums up a given field over the entire region
+
+    :param fields: The fields to sum up
+    """
+    fields = ensure_list(fields)
+    totals = []
+    for field in fields:
+        if data[field].size < 1:
+            totals.append(0)
+            continue
+        totals.append(data[field].sum())
+    return len(fields), totals
+def _combTotalQuantity(data, n_fields, totals):
+    totals = na.atleast_2d(totals)
+    n_fields = totals.shape[1]
+    return [na.sum(totals[:,i]) for i in range(n_fields)]
+add_quantity("TotalQuantity", function=_TotalQuantity,
+                combine_function=_combTotalQuantity, n_ret=2)
+        



More information about the yt-svn mailing list