diff options
-rw-r--r-- | fg21sim/configs/20-extragalactic.conf.spec | 2 | ||||
-rw-r--r-- | fg21sim/extragalactic/clusters/halo.py | 7 |
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 |