[yt-svn] commit/yt: ngoldbaum: Merged in ngoldbaum/yt (pull request #2508)

commits-noreply at bitbucket.org commits-noreply at bitbucket.org
Wed Feb 1 11:26:04 PST 2017


1 new commit in yt:

https://bitbucket.org/yt_analysis/yt/commits/22ce92624c6f/
Changeset:   22ce92624c6f
Branch:      yt
User:        ngoldbaum
Date:        2017-02-01 19:25:58+00:00
Summary:     Merged in ngoldbaum/yt (pull request #2508)

Ensure the left_edge and right_edge of region data object have the dataset's unit registry attached
Affected #:  3 files

diff -r 2e2dcac8a83a1086033d4640cb4767373478a4ad -r 22ce92624c6f5d630852e58f427262dd516f3d82 yt/data_objects/selection_data_containers.py
--- a/yt/data_objects/selection_data_containers.py
+++ b/yt/data_objects/selection_data_containers.py
@@ -609,11 +609,13 @@
         if not isinstance(left_edge, YTArray):
             self.left_edge = self.ds.arr(left_edge, 'code_length')
         else:
-            self.left_edge = left_edge
+            # need to assign this dataset's unit registry to the YTArray
+            self.left_edge = self.ds.arr(left_edge.copy())
         if not isinstance(right_edge, YTArray):
             self.right_edge = self.ds.arr(right_edge, 'code_length')
         else:
-            self.right_edge = right_edge
+            # need to assign this dataset's unit registry to the YTArray
+            self.right_edge = self.ds.arr(right_edge.copy())
 
 class YTDataCollection(YTSelectionContainer3D):
     """

diff -r 2e2dcac8a83a1086033d4640cb4767373478a4ad -r 22ce92624c6f5d630852e58f427262dd516f3d82 yt/data_objects/static_output.py
--- a/yt/data_objects/static_output.py
+++ b/yt/data_objects/static_output.py
@@ -867,9 +867,9 @@
         # list or other non-array iterable before calculating
         # the center
         if not isinstance(left_edge, np.ndarray):
-            left_edge = np.array(left_edge)
+            left_edge = np.array(left_edge, dtype='float64')
         if not isinstance(right_edge, np.ndarray):
-            right_edge = np.array(right_edge)
+            right_edge = np.array(right_edge, dtype='float64')
         c = (left_edge + right_edge)/2.0
         return self.region(c, left_edge, right_edge, **kwargs)
 

diff -r 2e2dcac8a83a1086033d4640cb4767373478a4ad -r 22ce92624c6f5d630852e58f427262dd516f3d82 yt/data_objects/tests/test_regions.py
--- /dev/null
+++ b/yt/data_objects/tests/test_regions.py
@@ -0,0 +1,17 @@
+from yt.testing import \
+    assert_array_equal, \
+    fake_random_ds
+from yt.units import cm
+
+def test_box_creation():
+
+    # test that creating a region with left and right edge
+    # with units works
+    ds = fake_random_ds(32, length_unit=2)
+    reg = ds.box([0, 0, 0]*cm, [2, 2, 2]*cm)
+    dens_units = reg['density']
+
+    reg = ds.box([0, 0, 0], [1, 1, 1])
+    dens_no_units = reg['density']
+
+    assert_array_equal(dens_units, dens_no_units)

Repository URL: https://bitbucket.org/yt_analysis/yt/

--

This is a commit notification from bitbucket.org. You are receiving
this because you have the service enabled, addressing the recipient of
this email.



More information about the yt-svn mailing list