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

commits-noreply at bitbucket.org commits-noreply at bitbucket.org
Fri Oct 24 14:25:14 PDT 2014


1 new commit in yt:

https://bitbucket.org/yt_analysis/yt/commits/89f43c999bf6/
Changeset:   89f43c999bf6
Branch:      yt
User:        chummels
Date:        2014-10-24 21:25:03+00:00
Summary:     Merged in ngoldbaum/yt (pull request #1282)

Improving support for reduced dimensionality and old (Enzo-1.5 era) enzo datasets
Affected #:  3 files

diff -r 840185d54851673d51b494f973231d9926220a0d -r 89f43c999bf661261f2ccac2571f9e966d51a481 yt/frontends/enzo/data_structures.py
--- a/yt/frontends/enzo/data_structures.py
+++ b/yt/frontends/enzo/data_structures.py
@@ -444,8 +444,7 @@
                 try:
                     gf = self.io._read_field_names(grid)
                 except self.io._read_exception:
-                    mylog.debug("Grid %s is a bit funky?", grid.id)
-                    continue
+                    raise IOError("Grid %s is a bit funky?", grid.id)
                 mylog.debug("Grid %s has: %s", grid.id, gf)
                 field_list = field_list.union(gf)
             if "AppendActiveParticleType" in self.dataset.parameters:

diff -r 840185d54851673d51b494f973231d9926220a0d -r 89f43c999bf661261f2ccac2571f9e966d51a481 yt/frontends/enzo/fields.py
--- a/yt/frontends/enzo/fields.py
+++ b/yt/frontends/enzo/fields.py
@@ -203,11 +203,13 @@
                 units="code_velocity**2")
             # Subtract off B-field energy
             def _sub_b(field, data):
-                return data[te_name] - 0.5*(
-                    data["x-velocity"]**2.0
-                    + data["y-velocity"]**2.0
-                    + data["z-velocity"]**2.0 ) \
-                    - data["MagneticEnergy"]/data["Density"]
+                ret = data[te_name] - 0.5*data["x-velocity"]**2.0
+                if data.ds.dimensionality > 1:
+                    ret -= 0.5*data["y-velocity"]**2.0
+                if data.ds.dimensionality > 2:
+                    ret -= 0.5*data["z-velocity"]**2.0
+                ret -= data["MagneticEnergy"]/data["Density"]
+                return ret
             self.add_field(
                 ("gas", "thermal_energy"),
                 function=_sub_b, units = "erg/g")
@@ -217,10 +219,12 @@
                 units = "code_velocity**2")
             self.alias(("gas", "total_energy"), ("enzo", te_name))
             def _tot_minus_kin(field, data):
-                return data[te_name] - 0.5*(
-                    data["x-velocity"]**2.0
-                    + data["y-velocity"]**2.0
-                    + data["z-velocity"]**2.0 )
+                ret = data[te_name] - 0.5*data["x-velocity"]**2.0
+                if data.ds.dimensionality > 1:
+                    ret -= 0.5*data["y-velocity"]**2.0
+                if data.ds.dimensionality > 2:
+                    ret -= 0.5*data["z-velocity"]**2.0
+                return ret
             self.add_field(
                 ("gas", "thermal_energy"),
                 function = _tot_minus_kin,

diff -r 840185d54851673d51b494f973231d9926220a0d -r 89f43c999bf661261f2ccac2571f9e966d51a481 yt/frontends/enzo/io.py
--- a/yt/frontends/enzo/io.py
+++ b/yt/frontends/enzo/io.py
@@ -36,7 +36,10 @@
     def _read_field_names(self, grid):
         if grid.filename is None: return []
         f = h5py.File(grid.filename, "r")
-        group = f["/Grid%08i" % grid.id]
+        try:
+            group = f["/Grid%08i" % grid.id]
+        except KeyError:
+            group = f
         fields = []
         add_io = "io" in grid.ds.particle_types
         for name, v in group.iteritems():
@@ -366,6 +369,8 @@
                     #print "Opening (count) %s" % g.filename
                     f = h5py.File(g.filename, "r")
                 gds = f.get("/Grid%08i" % g.id)
+                if gds is None:
+                    gds = f
                 for field in fields:
                     ftype, fname = field
                     ds = np.atleast_3d(gds.get(fname).value.transpose())

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