[yt-dev] Issue #1235: ytdata reloaded projection of ('gas', 'density') cannot create the ('gas', 'cell_mass') field (yt_analysis/yt)
Nathan Goldbaum
issues-reply at bitbucket.org
Wed Jun 22 20:31:54 PDT 2016
New issue 1235: ytdata reloaded projection of ('gas', 'density') cannot create the ('gas', 'cell_mass') field
https://bitbucket.org/yt_analysis/yt/issues/1235/ytdata-reloaded-projection-of-gas-density
Nathan Goldbaum:
The following script illustrates the issue:
```
import yt
ds = yt.load('IsolatedGalaxy/galaxy0030/galaxy0030')
prj = ds.proj(['density', 'radius'], 0)
prj.save_as_dataset()
ds2 = yt.load('galaxy0030_proj.h5')
ad = ds2.all_data()
ad['cell_mass']
```
This produces the following traceback:
```
ValueError Traceback (most recent call last)
/Users/goldbaum/Documents/yt-hg/yt/mods.pyc in <module>()
3 ds2 = yt.load('galaxy0030_proj.h5')
4 ad = ds2.all_data()
----> 5 ad['cell_mass']
/Users/goldbaum/Documents/yt-hg/yt/data_objects/data_containers.pyc in __getitem__(self, key)
270 return self.field_data[f]
271 else:
--> 272 self.get_data(f)
273 # fi.units is the unit expression string. We depend on the registry
274 # hanging off the dataset to define this unit object.
/Users/goldbaum/Documents/yt-hg/yt/data_objects/data_containers.pyc in get_data(self, fields)
1188
1189 fields_to_generate += gen_fluids + gen_particles
-> 1190 self._generate_fields(fields_to_generate)
1191 for field in list(self.field_data.keys()):
1192 if field not in ofields:
/Users/goldbaum/Documents/yt-hg/yt/data_objects/data_containers.pyc in _generate_fields(self, fields_to_generate)
1208 fi = self.ds._get_field_info(*field)
1209 try:
-> 1210 fd = self._generate_field(field)
1211 if fd is None:
1212 raise RuntimeError
/Users/goldbaum/Documents/yt-hg/yt/data_objects/data_containers.pyc in _generate_field(self, field)
307 tr = self._generate_particle_field(field)
308 else:
--> 309 tr = self._generate_fluid_field(field)
310 if tr is None:
311 raise YTCouldNotGenerateField(field, self.ds)
/Users/goldbaum/Documents/yt-hg/yt/data_objects/data_containers.pyc in _generate_fluid_field(self, field)
327 rv = self._generate_spatial_fluid(field, ngt_exception.ghost_zones)
328 else:
--> 329 rv = finfo(gen_obj)
330 return rv
331
/Users/goldbaum/Documents/yt-hg/yt/fields/derived_field.pyc in __call__(self, data)
196 "for %s" % (self.name,))
197 with self.unit_registry(data):
--> 198 dd = self._function(self, data)
199 for field_name in data.keys():
200 if field_name not in original_fields:
/Users/goldbaum/Documents/yt-hg/yt/fields/fluid_fields.pyc in _cell_mass(field, data)
58
59 def _cell_mass(field, data):
---> 60 return data[ftype, "density"] * data[ftype, "cell_volume"]
61
62 registry.add_field((ftype, "cell_mass"),
/Users/goldbaum/Documents/yt-hg/yt/units/yt_array.pyc in __mul__(self, right_object)
956 """
957 ro = sanitize_units_mul(self, right_object)
--> 958 return super(YTArray, self).__mul__(ro)
959
960 def __rmul__(self, left_object):
ValueError: operands could not be broadcast together with shapes (41119,) (55672,)
```
More information about the yt-dev
mailing list