The emulator is developed using the following packages:
- python 3.7
- tensorflow==1.14.0
pip install tensorflow==1.14.0
- gpflow=1.5.1
pip install gpflow==1.5.1
- scikit-learn=0.21.3
pip install scikit-learn
To install the package in developer mode, clone the git repo locally and then use a pip development installation by running:
git clone https://github.com/LSSTDESC/mgemu.git
cd mgemu
python setup.py install --user # Add --user flag to install it locally
from the top-level of the repo. From the same directory, run the test suite:
pytest
A script for running the emulator is also provided in `mgemu/notebooks/'.
from mgemu import emu
# LCDM parameters
h = 0.67 # See notes regarding the value of h below
Omh2=(h**2)*0.281
ns=0.971
s8=0.82
# Hu-Sawicki model parameters
fr0 = 1e-5
n=1
# Redshift
z= 0.3
pkratio, k = emu(Omh2=Omh2, ns=ns, s8=s8, fR0=fr0, n=n, z=z)
- The emulator is trained within the range:
- 0.12 ≤ Ωmh2 ≤ 0.15
- 0.85 ≤ ns ≤ 1.1
- 0.7≤ σ8 ≤0.9
- 10−8 ≤ fR0 ≤10−4
- 0 ≤ n ≤4
- 0 ≤ z ≤ 49
Hence the estimation is only reliable in this range. Outside of this, the GP performs extrapolation, and may provide unreliable results.
-
Emulator is trained with COLA simulations with h = 0.67, in agreement with Planck. For small differences of h, the emulator output does not vary much. However the user must exercise caution, and limit the use of h = 0.67 as much as possible.
-
Output from the
mgemu.emu
function will be the binned power spectra enhancement PMG(k)/PLCDM(k) and wavenumber k in 213 bins. -
Although the k range of the emulator is up to 0 ≤ k ≤ 3.5 h/Mpc, we do not advocate the use of the emulator for small scales beyond k ~ 1.0 h/Mpc.
This software was developed within the LSST DESC using LSST DESC resources, and so meets the criteria given in, and is bound by, the LSST DESC Publication Policy for being a “DESC product”.
The list of released versions of this package can be found here, with the master branch including the most recent (non-released) development.
This repository is maintained by Georgios Valogiannis (@gvalgioa) and Nesar Ramachandra (@nesar). If you have comments, suggestions or questions, please write us an issue.
This is open source software, available for re-use under the modified BSD license.