[Yt-svn] yt-commit r1159 - trunk/yt/lagos
britton at wrangler.dreamhost.com
britton at wrangler.dreamhost.com
Sun Feb 1 16:36:18 PST 2009
Author: britton
Date: Sun Feb 1 16:36:17 2009
New Revision: 1159
URL: http://yt.spacepope.org/changeset/1159
Log:
Added get_parameter method to EnzoStaticOutput to get parameters not in the
parameterDict dictionary. get_parameter returns the value of the parameter
and adds it to the pf.parameters dict. If the parameter is already in the
dict, it simply returns it from there. The optional keyword, type, can be
supplied to cast the parameter value(s) as any given type.
Modified:
trunk/yt/lagos/OutputTypes.py
Modified: trunk/yt/lagos/OutputTypes.py
==============================================================================
--- trunk/yt/lagos/OutputTypes.py (original)
+++ trunk/yt/lagos/OutputTypes.py Sun Feb 1 16:36:17 2009
@@ -196,6 +196,43 @@
self.parameters["DomainRightEdge"] = \
na.concatenate([self["DomainRightEdge"], [1.0]])
+ def get_parameter(self,parameter,type=None):
+ """
+ Gets a parameter not in the parameterDict.
+ """
+ if self.parameters.has_key(parameter):
+ return self.parameters[parameter]
+
+ # Let's read the file
+ self.parameters["CurrentTimeIdentifier"] = \
+ int(os.stat(self.parameter_filename)[ST_CTIME])
+ lines = open(self.parameter_filename).readlines()
+ for lineI, line in enumerate(lines):
+ if line.find("#") >= 1: # Keep the commented lines
+ line=line[:line.find("#")]
+ line=line.strip().rstrip()
+ if len(line) < 2:
+ continue
+ try:
+ param, vals = map(strip,map(rstrip,line.split("=")))
+ except ValueError:
+ mylog.error("ValueError: '%s'", line)
+ if parameter == param:
+ if type is None:
+ t = vals.split()
+ else:
+ t = map(type, vals.split())
+ if len(t) == 1:
+ self.parameters[param] = t[0]
+ else:
+ self.parameters[param] = t
+ if param.endswith("Units") and not param.startswith("Temperature"):
+ dataType = param[:-5]
+ self.conversion_factors[dataType] = self.parameters[param]
+ return self.parameters[parameter]
+
+ return ""
+
def _parse_parameter_file(self):
"""
Parses the parameter file and establishes the various
More information about the yt-svn
mailing list