[Yt-svn] yt-commit r1570 - trunk/yt/extensions
sskory at wrangler.dreamhost.com
sskory at wrangler.dreamhost.com
Fri Jan 8 10:49:21 PST 2010
Author: sskory
Date: Fri Jan 8 10:49:18 2010
New Revision: 1570
URL: http://yt.enzotools.org/changeset/1570
Log:
Fixing a bug in the Halo Mass Function extension.
Modified:
trunk/yt/extensions/HaloMassFcn.py
Modified: trunk/yt/extensions/HaloMassFcn.py
==============================================================================
--- trunk/yt/extensions/HaloMassFcn.py (original)
+++ trunk/yt/extensions/HaloMassFcn.py Fri Jan 8 10:49:18 2010
@@ -28,7 +28,7 @@
import numpy as na
import math, time
-class HaloMassFcn(object):
+class HaloMassFcn(lagos.ParallelAnalysisInterface):
def __init__(self, pf, halo_file=None, omega_matter0=None, omega_lambda0=None,
omega_baryon0=0.05, hubble0=None, sigma8input=0.86, primordial_index=1.0,
this_redshift=None, log_mass_min=None, log_mass_max=None, num_sigma_bins=360,
@@ -140,12 +140,12 @@
# First the fit file.
if fit:
fitname = prefix + '-fit.dat'
- fp = open(fitname, 'w')
+ fp = self._write_on_root(fitname)
line = \
"""#Columns:
#1. log10 of mass (Msolar, NOT Msolar/h)
#2. mass (Msolar/h)
-#3. (dn/dM)*dM (differential number density of halos, per Mpc^3 (NOT h^3/Mpc^3)
+#3. (dn/dM)*dM (differential number density of haloes, per Mpc^3 (NOT h^3/Mpc^3)
#4. cumulative number density of halos (per Mpc^3, NOT h^3/Mpc^3)
"""
fp.write(line)
@@ -156,13 +156,14 @@
fp.close()
if self.mode == 'haloes' and haloes:
haloname = prefix + '-haloes.dat'
- fp = open(haloname, 'w')
+ fp = self._write_on_root(haloname)
line = \
"""#Columns:
#1. log10 of mass (Msolar, NOT Msolar/h)
#2. mass (Msolar/h)
-#3. cumulative number density of halos (per Mpc^3, NOT h^3/Mpc^3)\n
+#3. cumulative number density of haloes (per Mpc^3, NOT h^3/Mpc^3)
"""
+ fp.write(line)
for i in xrange(self.logmassarray.size - 1):
line = "%e\t%e\t%e\n" % (self.logmassarray[i], self.massarray[i],
self.dis[i])
@@ -191,12 +192,10 @@
"""
With the list of virial masses, find the halo mass function.
"""
- bins = na.logspace(math.pow(10.,self.log_mass_min),
- math.pow(10.,log_mass_max),self.num_sigma_bins)
+ bins = na.logspace(self.log_mass_min,
+ self.log_mass_max,self.num_sigma_bins)
avgs = (bins[1:]+bins[:-1])/2.
-
dis, bins = na.histogram(self.haloes,bins,new=True)
-
# add right to left
for i,b in enumerate(dis):
dis[self.num_sigma_bins-i-3] += dis[self.num_sigma_bins-i-2]
More information about the yt-svn
mailing list