Issue #1092: Nyx and Castro particles are broken (yt_analysis/yt)
New issue 1092: Nyx and Castro particles are broken https://bitbucket.org/yt_analysis/yt/issues/1092/nyx-and-castro-particles-ar... Andrew Myers: We used to support Nyx and Castro particles, but it was broken at some point: ``` #!python import yt ds = yt.load('nyx_small/nyx_small_00000/') ad = ds.all_data() ad['particle_position_x'] ``` Traceback: ``` #!python --------------------------------------------------------------------------- AttributeError Traceback (most recent call last) <ipython-input-7-3933388c1ff5> in <module>() 2 ds = yt.load('nyx_small/nyx_small_00000/') 3 ad = ds.all_data() ----> 4 ad['particle_position_x'] /Users/atmyers/yt-x86_64/src/yt-hg/yt/data_objects/data_containers.pyc in __getitem__(self, key) 251 return self.field_data[f] 252 else: --> 253 self.get_data(f) 254 # fi.units is the unit expression string. We depend on the registry 255 # hanging off the dataset to define this unit object. /Users/atmyers/yt-x86_64/src/yt-hg/yt/data_objects/data_containers.pyc in get_data(self, fields) 743 744 read_particles, gen_particles = self.index._read_particle_fields( --> 745 particles, self, self._current_chunk) 746 for f, v in read_particles.items(): 747 self.field_data[f] = self.ds.arr(v, input_units = finfos[f].units) /Users/atmyers/yt-x86_64/src/yt-hg/yt/geometry/geometry_handler.pyc in _read_particle_fields(self, fields, dobj, chunk) 232 self._chunk_io(dobj, cache = False), 233 selector, --> 234 fields_to_read) 235 return fields_to_return, fields_to_generate 236 /Users/atmyers/yt-x86_64/src/yt-hg/yt/utilities/io_handler.pyc in _read_particle_selection(self, chunks, selector, fields) 159 # Here, ptype_map means which particles contribute to a given type. 160 # And ptf is the actual fields from disk to read. --> 161 psize = self._count_particles_chunks(chunks, ptf, selector) 162 # Now we allocate 163 # ptf, remember, is our mapping of what we want to read /Users/atmyers/yt-x86_64/src/yt-hg/yt/utilities/io_handler.pyc in _count_particles_chunks(self, chunks, ptf, selector) 130 def _count_particles_chunks(self, chunks, ptf, selector): 131 psize = defaultdict(lambda: 0) # COUNT PTYPES ON DISK --> 132 for ptype, (x, y, z) in self._read_particle_coords(chunks, ptf): 133 psize[ptype] += selector.count_points(x, y, z, 0.0) 134 return dict(psize.items()) AttributeError: 'IOHandlerBoxlib' object has no attribute '_read_particle_coords' ``` Responsible: atmyers
participants (1)
-
Andrew Myers