aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fg21sim/configs/20-extragalactic.conf.spec2
-rw-r--r--fg21sim/extragalactic/clusters/halo.py7
2 files changed, 8 insertions, 1 deletions
diff --git a/fg21sim/configs/20-extragalactic.conf.spec b/fg21sim/configs/20-extragalactic.conf.spec
index cda58b1..425df88 100644
--- a/fg21sim/configs/20-extragalactic.conf.spec
+++ b/fg21sim/configs/20-extragalactic.conf.spec
@@ -145,7 +145,7 @@
# Time step for solving the Fokker-Planck equation
# Unit: [Gyr]
- time_step = float(default=0.01, min=1e-5, max=0.1)
+ time_step = float(default=0.02, min=1e-4, max=0.1)
# Electron injection, which is assumed to have a constant injection
# rate and a power-law spectrum.
diff --git a/fg21sim/extragalactic/clusters/halo.py b/fg21sim/extragalactic/clusters/halo.py
index 6bfa4ca..a481ce5 100644
--- a/fg21sim/extragalactic/clusters/halo.py
+++ b/fg21sim/extragalactic/clusters/halo.py
@@ -290,6 +290,13 @@ class RadioHalo:
n_inj = self.fp_injection(self.gamma)
n0_e = n_inj * tstart
+ # When the evolution time is too short, decrease the time step
+ # to improve the results.
+ # XXX: is this necessary???
+ nstep_min = 20
+ if (tstop - tstart) / self.fpsolver.tstep < nstep_min:
+ self.fpsolver.tstep = (tstop - tstart) / nstep_min
+
self.electron_spec = self.fpsolver.solve(u0=n0_e, tstart=tstart,
tstop=tstop)
return self.electron_spec