[Yt-svn] yt-commit r501 - in trunk/yt: lagos reason
mturk at wrangler.dreamhost.com
mturk at wrangler.dreamhost.com
Thu May 29 00:10:22 PDT 2008
Author: mturk
Date: Thu May 29 00:10:21 2008
New Revision: 501
URL: http://yt.spacepope.org/changeset/501
Log:
Added a 'display_field' option to derived fields, which is just another attempt
at keeping some fields in, some fields out. I think this one is appropriate
for things that are normal, useful derived fields that might not need to be
plotted. I am currently also using it to suppress 'Dark matter density' in the
views, but I think that one should be dealt with separately.
Modified:
trunk/yt/lagos/DerivedFields.py
trunk/yt/reason/App.py
trunk/yt/reason/Functions.py
trunk/yt/reason/Notebook.py
trunk/yt/reason/Windows.py
Modified: trunk/yt/lagos/DerivedFields.py
==============================================================================
--- trunk/yt/lagos/DerivedFields.py (original)
+++ trunk/yt/lagos/DerivedFields.py Thu May 29 00:10:21 2008
@@ -130,6 +130,7 @@
units = "", projected_units = "",
take_log = True, validators = None,
particle_type = False, vector_field=False,
+ display_field = True,
projection_conversion = "cm"):
self.name = name
self._function = function
@@ -146,6 +147,7 @@
self.particle_type = particle_type
self.vector_field = vector_field
self.projection_conversion = projection_conversion
+ self.display_field = display_field
def check_available(self, data):
for validator in self.validators:
validator(data)
@@ -238,24 +240,24 @@
def _dx(field, data):
return data.dx
return na.ones(data.ActiveDimensions, dtype='float64') * data.dx
-add_field('dx', validators=[ValidateSpatial(0)])
+add_field('dx', display_field=False, validators=[ValidateSpatial(0)])
def _dy(field, data):
return data.dy
return na.ones(data.ActiveDimensions, dtype='float64') * data.dy
-add_field('dy', validators=[ValidateSpatial(0)])
+add_field('dy', display_field=False, validators=[ValidateSpatial(0)])
def _dz(field, data):
return data.dz
return na.ones(data.ActiveDimensions, dtype='float64') * data.dz
-add_field('dz', validators=[ValidateSpatial(0)])
+add_field('dz', display_field=False, validators=[ValidateSpatial(0)])
def _coordX(field, data):
dim = data.ActiveDimensions[0]
return (na.ones(data.ActiveDimensions, dtype='float64')
* na.arange(data.ActiveDimensions[0]).reshape(dim,1,1)
+0.5) * data['dx'] + data.LeftEdge[0]
-add_field('x', function=_coordX,
+add_field('x', function=_coordX, display_field=False,
validators=[ValidateSpatial(0)])
def _coordY(field, data):
@@ -263,7 +265,7 @@
return (na.ones(data.ActiveDimensions, dtype='float64')
* na.arange(data.ActiveDimensions[1]).reshape(1,dim,1)
+0.5) * data['dy'] + data.LeftEdge[1]
-add_field('y', function=_coordY,
+add_field('y', function=_coordY, display_field=False,
validators=[ValidateSpatial(0)])
def _coordZ(field, data):
@@ -271,7 +273,7 @@
return (na.ones(data.ActiveDimensions, dtype='float64')
* na.arange(data.ActiveDimensions[2]).reshape(1,1,dim)
+0.5) * data['dz'] + data.LeftEdge[2]
-add_field('z', function=_coordZ,
+add_field('z', function=_coordZ, display_field=False,
validators=[ValidateSpatial(0)])
@@ -307,12 +309,14 @@
def _OnesOverDx(field, data):
return na.ones(data["Density"].shape,
dtype=data["Density"].dtype)/data['dx']
-add_field("OnesOverDx")
+add_field("OnesOverDx", display_field=False)
def _Ones(field, data):
return na.ones(data.ActiveDimensions, dtype='float64')
-add_field("Ones", validators=[ValidateSpatial(0)], projection_conversion="1")
-add_field("CellsPerBin", function=_Ones, validators=[ValidateSpatial(0)])
+add_field("Ones", validators=[ValidateSpatial(0)], projection_conversion="1",
+ display_field = False)
+add_field("CellsPerBin", function=_Ones, validators=[ValidateSpatial(0)],
+ display_field = False)
def _SoundSpeed(field, data):
return ( data.pf["Gamma"]*data["Pressure"] / \
@@ -346,6 +350,9 @@
add_field("particle mass", function=particle_func("particle_mass"),
validators=[ValidateSpatial(0)], particle_type=True)
+add_field("Dark matter density", function=lambda a,b:None,
+ display_field=False)
+
def _ParticleMass(field, data):
particles = data["particle_mass"].astype('float64') * \
just_one(data["CellVolumeCode"].ravel())
@@ -446,11 +453,11 @@
return data.convert("au")
add_field("Height", convert_function=_convertHeight,
validators=[ValidateParameter("height_vector")],
- units=r"cm")
+ units=r"cm", display_field=False)
add_field("HeightAU", function=_Height,
convert_function=_convertHeightAU,
validators=[ValidateParameter("height_vector")],
- units=r"AU")
+ units=r"AU", display_field=False)
def _DiskAngle(field, data):
# We make both r_vec and h_vec into unit vectors
@@ -466,7 +473,8 @@
return na.arccos(dp)
add_field("DiskAngle", take_log=False,
validators=[ValidateParameter("height_vector"),
- ValidateParameter("center")])
+ ValidateParameter("center")],
+ display_field=False)
def _DynamicalTime(field, data):
"""
@@ -640,8 +648,10 @@
def _Contours(field, data):
return na.ones(data["Density"].shape)*-1
-add_field("Contours", validators=[ValidateSpatial(0)], take_log=False)
-add_field("tempContours", function=_Contours, validators=[ValidateSpatial(0)], take_log=False)
+add_field("Contours", validators=[ValidateSpatial(0)], take_log=False,
+ display_field=False)
+add_field("tempContours", function=_Contours, validators=[ValidateSpatial(0)],
+ take_log=False, display_field=False)
def _SpecificAngularMomentum(field, data):
"""
Modified: trunk/yt/reason/App.py
==============================================================================
--- trunk/yt/reason/App.py (original)
+++ trunk/yt/reason/App.py Thu May 29 00:10:21 2008
@@ -258,11 +258,12 @@
ni = self.data_tree.AppendItem(self.output_root, "%s" % (eso.basename), data=tid)
self.data_tree.Expand(self.output_root)
- def _add_data_object(self, title, object, mids):
+ def _add_data_object(self, title, object, mids, parent_id = None):
self.data_objects.append(object)
tid = wx.TreeItemData((object, title, len(self.data_objects), mids))
- ni = self.data_tree.AppendItem(self.data_root, "%s" % (title), data=tid)
- self.data_tree.Expand(self.data_root)
+ if parent_id is None: parent_id = self.data_root
+ ni = self.data_tree.AppendItem(parent_id, "%s" % (title), data=tid)
+ self.data_tree.Expand(parent_id)
def _add_sphere(self, title, sphere):
# These all get passed in
Modified: trunk/yt/reason/Functions.py
==============================================================================
--- trunk/yt/reason/Functions.py (original)
+++ trunk/yt/reason/Functions.py Thu May 29 00:10:21 2008
@@ -26,10 +26,13 @@
from yt.reason import *
-def QueryFields(outputfile):
+def QueryFields(outputfile, only_display_fields = False):
fields = []
for f in outputfile.hierarchy.derived_field_list:
if f in lagos.fieldInfo and lagos.fieldInfo[f].particle_type: continue
+ if only_display_fields and \
+ f in lagos.fieldInfo and \
+ not lagos.fieldInfo[f].display_field: continue
fields.append(f)
return sorted(fields)
Modified: trunk/yt/reason/Notebook.py
==============================================================================
--- trunk/yt/reason/Notebook.py (original)
+++ trunk/yt/reason/Notebook.py Thu May 29 00:10:21 2008
@@ -673,7 +673,7 @@
#self.UpdateWidth()
def QueryFields(self):
- return QueryFields(self.outputfile)
+ return QueryFields(self.outputfile, True)
class SlicePlotPage(VMPlotPage):
def makePlot(self):
Modified: trunk/yt/reason/Windows.py
==============================================================================
--- trunk/yt/reason/Windows.py (original)
+++ trunk/yt/reason/Windows.py Thu May 29 00:10:21 2008
@@ -214,7 +214,7 @@
def __init__(self, data_object, parent):
wx.Dialog.__init__(self, parent, -1, title="Setup Projection")
- fields = QueryFields(data_object)
+ fields = QueryFields(data_object, True)
border = wx.BoxSizer(wx.VERTICAL)
gbs = wx.GridBagSizer(5, 5)
More information about the yt-svn
mailing list