aboutsummaryrefslogtreecommitdiffstats
path: root/fg21sim/extragalactic/clusters
diff options
context:
space:
mode:
authorAaron LI <aaronly.me@outlook.com>2017-01-08 19:26:23 +0800
committerAaron LI <aly@aaronly.me>2017-06-01 16:33:39 +0800
commit987ca1dba8cd2374a080db40edd67c62a35e5c66 (patch)
treeab6bbb1e3cf0916676cdae60248890afe9f4361a /fg21sim/extragalactic/clusters
parentb2fcd6845837a46f4774b6deb6e025010941a1e7 (diff)
downloadfg21sim-987ca1dba8cd2374a080db40edd67c62a35e5c66.tar.bz2
Bind ClusterFormation to HaloSingle
Also add logging messages to simulate_mergertree()
Diffstat (limited to 'fg21sim/extragalactic/clusters')
-rw-r--r--fg21sim/extragalactic/clusters/formation.py3
-rw-r--r--fg21sim/extragalactic/clusters/halo.py5
2 files changed, 7 insertions, 1 deletions
diff --git a/fg21sim/extragalactic/clusters/formation.py b/fg21sim/extragalactic/clusters/formation.py
index bc64eff..f8c6d3a 100644
--- a/fg21sim/extragalactic/clusters/formation.py
+++ b/fg21sim/extragalactic/clusters/formation.py
@@ -181,7 +181,10 @@ class ClusterFormation:
References: Ref.[1],Sec.(3.1)
"""
+ logger.info("Simulating cluster formation: " +
+ "M0={:.3g}[Msun] ...".format(self.M0))
self.mtree = self._trace_formation(self.M0, dMc=self.merger_mass_min)
+ logger.info("Simulated cluster formation with merger tree")
return self.mtree
def _trace_formation(self, M, dMc, _z=None):
diff --git a/fg21sim/extragalactic/clusters/halo.py b/fg21sim/extragalactic/clusters/halo.py
index 0881a88..f7ec54b 100644
--- a/fg21sim/extragalactic/clusters/halo.py
+++ b/fg21sim/extragalactic/clusters/halo.py
@@ -19,6 +19,7 @@ import scipy.integrate
import scipy.optimize
from .cosmology import Cosmology
+from .formation import ClusterFormation
from .solver import FokkerPlanckSolver
from .units import (Units as AU, UnitConversions as AUC, Constants as AC)
@@ -100,7 +101,9 @@ class HaloSingle:
Simulate the merging history of the cluster using the extended
Press-Schechter formalism.
"""
- raise NotImplementedError
+ self.formation = ClusterFormation(self.M0, self.configs)
+ self.mtree = self.formation.simulate_mergertree()
+ return self.mtree
def calc_electron_spectrum(self):
"""