csiborgtools/scripts/concentration_fit.ipynb
Richard Stiskalek 8a56c22813
Within halo work and NFW fit (#4)
* add listing of snapshots

* change distance to comoving

* ignore cp files

* rename nb

* add str to list

* add NFW profile shapes

* add fits imports

* Rename to Nsnap

* in clumps_read only select props

* make clumpid int

* expand doc

* add import

* edit readme

* distribute halos

* add profile & posterior

* add import

* add import

* add documentation

* add rvs and init guess

* update todo

* update nb

* add file

* return end index too

* change clump_ids format to int32

* skeleton of dump particle

* update nb

* add func to drop 0 clump indxs parts

* add import

* add halo dump

* switch to float32

* Update TODO

* update TODO

* add func that loads a split

* add halo object

* Rename to clump

* make post work with a clump

* add optimiser

* add Nsplits

* ignore submission scripts

* ignore .out

* add dumppath

* add job splitting

* add split halos script

* rename file

* renaem files

* rm file

* rename imports

* edit desc

* add pick clump

* add number of particles

* update TODO

* update todo

* add script

* add dumping

* change dumpdir structure

* change dumpdir

* add import

* Remove tqdm

* Increase the number of splits

* rm shuffle option

* Change to remove split

* add emojis

* fix part counts in splits

* change num of splits

* rm with particle cut

* keep splits

* fit only if 10 part and more

* add min distance

* rm warning about not set vels

* update TODO

* calculate rho0 too

* add results collection

* add import

* add func to combine splits

* update TODO

* add extract cols

* update nb

* update TODO
2022-10-30 20:16:56 +00:00

420 KiB

In [1]:
import numpy as np
%matplotlib notebook
import matplotlib.pyplot as plt
# Local imports
try:
    import csiborgtools
except ModuleNotFoundError:
    import sys
    sys.path.append("../")
    import csiborgtools
import utils

%load_ext autoreload
%autoreload 2
In [2]:
obs = utils.load_2mpp()


cols = ["ra", "dec", "mass_cl", "dist"]
mmains = utils.load_mmains(1)
mmains = csiborgtools.utils.list_to_ndarray(mmains, cols)
sim = mmains[0, ...]
sim = csiborgtools.utils.array_to_structured(sim ,cols)
planck = utils.load_planck2015()
100%|█████████████████████████████████████████████| 1/1 [00:00<00:00,  4.37it/s]
In [3]:
dx = 20
dmin = 125
dmax = dmin + dx

mask_obs = (dmin < obs["CDIST_CMB"]) & (obs["CDIST_CMB"] < dmax)
mask_sim = (dmin < sim["dist"]) & (sim["dist"] < dmax) & (sim["mass_cl"] > 1e12)

width = 6.4
plt.figure(figsize=(width, width*0.75))
plt.scatter(obs["RA"][mask_obs], obs["DEC"][mask_obs], s=1.5, label="2M++")
plt.scatter(sim["ra"][mask_sim] , sim["dec"][mask_sim], s=1.5, label="CSiBORG")
plt.scatter(planck["RA"], planck["DEC"], label="Planck SZ clusters < 214 MPc", c="red")


plt.legend()
plt.xlabel("RA")
plt.ylabel("dec")
plt.tight_layout()
# plt.savefig("../plots/2mpp_overlap.png", dpi=450)
plt.show()
No description has been provided for this image
In [ ]: