[yt-dev] Issue #861: Plotting random particle data produces broadcasting error (yt_analysis/yt)
Nathan Goldbaum
issues-reply at bitbucket.org
Fri Jul 18 22:28:03 PDT 2014
New issue 861: Plotting random particle data produces broadcasting error
https://bitbucket.org/yt_analysis/yt/issue/861/plotting-random-particle-data-produces
Nathan Goldbaum:
This traceback comes from executing the last cell of the loading generic particle data notebook in the docs:
```
#!python traceback
/var/lib/jenkins/jobs/yt-docs-3.0/workspace/yt/visualization/plot_window.pyc in SlicePlot(ds, normal, fields, axis, *args, **kwargs)
1883 del kwargs['north_vector']
1884
-> 1885 return AxisAlignedSlicePlot(ds, normal, fields, *args, **kwargs)
/var/lib/jenkins/jobs/yt-docs-3.0/workspace/yt/visualization/plot_window.pyc in __init__(self, ds, axis, fields, center, width, axes_unit, origin, fontsize, field_parameters, window_size, aspect)
1089 slc = ds.slice(axis, center[axis],
1090 field_parameters = field_parameters, center=center)
-> 1091 slc.get_data(fields)
1092 PWViewerMPL.__init__(self, slc, bounds, origin=origin,
1093 fontsize=fontsize, fields=fields,
/var/lib/jenkins/jobs/yt-docs-3.0/workspace/yt/data_objects/data_containers.pyc in get_data(self, fields)
633
634 fields_to_generate += gen_fluids + gen_particles
--> 635 self._generate_fields(fields_to_generate)
636 for field in self.field_data.keys():
637 if field not in ofields:
/var/lib/jenkins/jobs/yt-docs-3.0/workspace/yt/data_objects/data_containers.pyc in _generate_fields(self, fields_to_generate)
653 fi = self.ds._get_field_info(*field)
654 try:
--> 655 fd = self._generate_field(field)
656 if type(fd) == np.ndarray:
657 fd = self.ds.arr(fd, fi.units)
/var/lib/jenkins/jobs/yt-docs-3.0/workspace/yt/data_objects/data_containers.pyc in _generate_field(self, field)
255 tr = self._generate_particle_field(field)
256 else:
--> 257 tr = self._generate_fluid_field(field)
258 if tr is None:
259 raise YTCouldNotGenerateField(field, self.ds)
/var/lib/jenkins/jobs/yt-docs-3.0/workspace/yt/data_objects/data_containers.pyc in _generate_fluid_field(self, field)
273 finfo.check_available(gen_obj)
274 except NeedsGridType as ngt_exception:
--> 275 rv = self._generate_spatial_fluid(field, ngt_exception.ghost_zones)
276 else:
277 rv = finfo(gen_obj)
/var/lib/jenkins/jobs/yt-docs-3.0/workspace/yt/data_objects/data_containers.pyc in _generate_spatial_fluid(self, field, ngz)
289 o = self._current_chunk.objs[0]
290 with o._activate_cache():
--> 291 ind += o.select(self.selector, self[field], rv, ind)
292 else:
293 chunks = self.index._chunk(self, "spatial", ngz = ngz)
/var/lib/jenkins/jobs/yt-docs-3.0/workspace/yt/data_objects/data_containers.pyc in __getitem__(self, key)
218 return self.field_data[f]
219 else:
--> 220 self.get_data(f)
221 # fi.units is the unit expression string. We depend on the registry
222 # hanging off the dataset to define this unit object.
/var/lib/jenkins/jobs/yt-docs-3.0/workspace/yt/data_objects/data_containers.pyc in get_data(self, fields)
633
634 fields_to_generate += gen_fluids + gen_particles
--> 635 self._generate_fields(fields_to_generate)
636 for field in self.field_data.keys():
637 if field not in ofields:
/var/lib/jenkins/jobs/yt-docs-3.0/workspace/yt/data_objects/data_containers.pyc in _generate_fields(self, fields_to_generate)
653 fi = self.ds._get_field_info(*field)
654 try:
--> 655 fd = self._generate_field(field)
656 if type(fd) == np.ndarray:
657 fd = self.ds.arr(fd, fi.units)
/var/lib/jenkins/jobs/yt-docs-3.0/workspace/yt/data_objects/data_containers.pyc in _generate_field(self, field)
255 tr = self._generate_particle_field(field)
256 else:
--> 257 tr = self._generate_fluid_field(field)
258 if tr is None:
259 raise YTCouldNotGenerateField(field, self.ds)
/var/lib/jenkins/jobs/yt-docs-3.0/workspace/yt/data_objects/data_containers.pyc in _generate_fluid_field(self, field)
275 rv = self._generate_spatial_fluid(field, ngt_exception.ghost_zones)
276 else:
--> 277 rv = finfo(gen_obj)
278 return rv
279
/var/lib/jenkins/jobs/yt-docs-3.0/workspace/yt/fields/derived_field.pyc in __call__(self, data)
182 "for %s" % (self.name,))
183 with self.unit_registry(data):
--> 184 dd = self._function(self, data)
185 for field_name in data.keys():
186 if field_name not in original_fields:
/var/lib/jenkins/jobs/yt-docs-3.0/workspace/yt/fields/particle_fields.pyc in particle_cic(field, data)
114
115 def particle_cic(field, data):
--> 116 pos = data[ptype, coord_name]
117 d = data.deposit(pos, [data[ptype, mass_name]], method = "cic")
118 d = data.apply_units(d, data[ptype, mass_name].units)
/var/lib/jenkins/jobs/yt-docs-3.0/workspace/yt/data_objects/octree_subset.pyc in __getitem__(self, key)
74
75 def __getitem__(self, key):
---> 76 tr = super(OctreeSubset, self).__getitem__(key)
77 try:
78 fields = self._determine_fields(key)
/var/lib/jenkins/jobs/yt-docs-3.0/workspace/yt/data_objects/data_containers.pyc in __getitem__(self, key)
218 return self.field_data[f]
219 else:
--> 220 self.get_data(f)
221 # fi.units is the unit expression string. We depend on the registry
222 # hanging off the dataset to define this unit object.
/var/lib/jenkins/jobs/yt-docs-3.0/workspace/yt/data_objects/data_containers.pyc in get_data(self, fields)
627
628 read_particles, gen_particles = self.index._read_particle_fields(
--> 629 particles, self, self._current_chunk)
630 for f, v in read_particles.items():
631 self.field_data[f] = self.ds.arr(v, input_units = finfos[f].units)
/var/lib/jenkins/jobs/yt-docs-3.0/workspace/yt/geometry/geometry_handler.pyc in _read_particle_fields(self, fields, dobj, chunk)
231 self._chunk_io(dobj, cache = False),
232 selector,
--> 233 fields_to_read)
234 for field in fields_to_read:
235 ftype, fname = field
/var/lib/jenkins/jobs/yt-docs-3.0/workspace/yt/utilities/io_handler.pyc in _read_particle_selection(self, chunks, selector, fields)
172 #mylog.debug("Filling %s from %s to %s with %s",
173 # field_f, my_ind, my_ind+vals.shape[0], field_r)
--> 174 rv[field_f][my_ind:my_ind + vals.shape[0],...] = vals
175 ind[field_f] += vals.shape[0]
176 # Now we need to truncate all our fields, since we allow for
ValueError: could not broadcast input array from shape (5000000) into shape (521728)
```
More information about the yt-dev
mailing list