Hi Anna,<div><br></div><div>Check out <a href="https://bitbucket.org/atmyers/yt/changeset/53fa42c3dbc9c0228203900a1b1a169e732e9a8c">this</a> changeset, which I think fixes the problem. I'm not 100% sure that I understand the distinction between "fallback" and "known" fields, but I can confirm that with those changes all the basic orion fields work. </div>
<div><br></div><div>-Andrew<br><br><div class="gmail_quote">On Mon, Nov 12, 2012 at 4:04 PM, Anna Rosen <span dir="ltr"><<a href="mailto:rosen@ucolick.org" target="_blank">rosen@ucolick.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi all,<br>
<br>
I am unable to access the derived fields written for Orion such as temperature, pressure, etc.<br>
The definitions are these fields are located here: yt-x86_64/src/yt-hg/yt/frontends/orion/fields.py<br>
<br>
This is the error that I get if I try to access temperature:<br>
<br>
In [14]: mi,ma= dd.quantities["Extrema"]("Temperature")[0]<br>
---------------------------------------------------------------------------<br>
KeyError                                  Traceback (most recent call last)<br>
<ipython-input-14-c8df716340ab> in <module>()<br>
----> 1 mi,ma= dd.quantities["Extrema"]("Temperature")[0]<br>
<br>
/home1/arosen2/yt-x86_64/src/yt-hg/yt/data_objects/derived_quantities.pyc in __call__(self, *args, **kwargs)<br>
     90                           self._<a href="http://data_source.pf.h.io" target="_blank">data_source.pf.h.io</a>)<br>
     91         if lazy_reader and not self.force_unlazy:<br>
---> 92             return self._call_func_lazy(args, kwargs)<br>
     93         else:<br>
     94             return self._call_func_unlazy(args, kwargs)<br>
<br>
/home1/arosen2/yt-x86_64/src/yt-hg/yt/data_objects/derived_quantities.pyc in _call_func_lazy(self, args, kwargs)<br>
     97         self.retvals = [ [] for i in range(self.n_ret)]<br>
     98         for gi,g in enumerate(self._get_grids()):<br>
---> 99             rv = self.func(GridChildMaskWrapper(g, self._data_source), *args, **kwargs)<br>
    100             if not iterable(rv): rv = (rv,)<br>
    101             for i in range(self.n_ret): self.retvals[i].append(rv[i])<br>
<br>
/home1/arosen2/yt-x86_64/src/yt-hg/yt/data_objects/derived_quantities.pyc in _Extrema(data, fields, non_zero, filter)<br>
    586     mins, maxs = [], []<br>
    587     for field in fields:<br>
--> 588         if data[field].size < 1:<br>
    589             mins.append(1e90)<br>
    590             maxs.append(-1e90)<br>
<br>
/home1/arosen2/yt-x86_64/src/yt-hg/yt/data_objects/derived_quantities.pyc in __getitem__(self, item)<br>
     58     def __getitem__(self, item):<br>
     59         if item not in self.local_cache:<br>
---> 60             data = self.data_source._get_data_from_grid(self.grid, item)<br>
     61             self.local_cache[item] = data<br>
     62         return self.local_cache[item]<br>
<br>
/home1/arosen2/yt-x86_64/src/yt-hg/yt/data_objects/data_containers.pyc in save_state(self, grid, field, *args, **kwargs)<br>
     89         old_keys = grid.field_data.keys()<br>
     90         grid.field_parameters = self.field_parameters<br>
---> 91         tr = func(self, grid, field, *args, **kwargs)<br>
     92         grid.field_parameters = old_params<br>
     93         grid.field_data = YTFieldData( [(k, grid.field_data[k]) for k in old_keys] )<br>
<br>
/home1/arosen2/yt-x86_64/src/yt-hg/yt/data_objects/data_containers.pyc in _get_data_from_grid(self, grid, field)<br>
   2555             return na.array([f[i,:][pointI] for i in range(3)])<br>
   2556         else:<br>
-> 2557             tr = grid[field]<br>
   2558             if tr.size == 1: # dx, dy, dz, cellvolume<br>
   2559                 tr = tr * na.ones(grid.ActiveDimensions, dtype='float64')<br>
<br>
/home1/arosen2/yt-x86_64/src/yt-hg/yt/data_objects/grid_patch.pyc in __getitem__(self, key)<br>
    155         """<br>
    156         if not self.field_data.has_key(key):<br>
--> 157             self.get_data(key)<br>
    158         return self.field_data[key]<br>
    159<br>
<br>
/home1/arosen2/yt-x86_64/src/yt-hg/yt/data_objects/grid_patch.pyc in get_data(self, field, convert)<br>
    198                     else: raise<br>
    199             else:<br>
--> 200                 self._generate_field(field)<br>
    201         return self.field_data[field]<br>
    202<br>
<br>
/home1/arosen2/yt-x86_64/src/yt-hg/yt/data_objects/grid_patch.pyc in _generate_field(self, field)<br>
    145                 self[field] = self.pf.field_info[field](self)<br>
    146         else: # Can't find the field, try as it might<br>
--> 147             raise exceptions.KeyError(field)<br>
    148<br>
    149     def has_key(self, key):<br>
<br>
KeyError: 'Temperature'<br>
<br>
Thanks!<br>
<br>
Anna Rosen<br>
Graduate Student<br>
UCSC, Astronomy & Astrophysics<br>
<a href="mailto:rosen@ucolick.org">rosen@ucolick.org</a><br>
<br>
<br>
<br>
_______________________________________________<br>
yt-users mailing list<br>
<a href="mailto:yt-users@lists.spacepope.org">yt-users@lists.spacepope.org</a><br>
<a href="http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org</a><br>
</blockquote></div><br></div>