From 4909178825621890b8af8bfa3a29f65e5d3c5698 Mon Sep 17 00:00:00 2001 From: Sandy Yuan Date: Mon, 23 Oct 2023 10:20:24 -0700 Subject: [PATCH 1/4] fix want_AB bug --- abacusnbody/hod/abacus_hod.py | 24 +++++++++++++++++------- abacusnbody/hod/prepare_sim.py | 2 ++ 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/abacusnbody/hod/abacus_hod.py b/abacusnbody/hod/abacus_hod.py index 89927e71..79b33749 100644 --- a/abacusnbody/hod/abacus_hod.py +++ b/abacusnbody/hod/abacus_hod.py @@ -123,6 +123,7 @@ def __init__(self, sim_params, HOD_params, clustering_params = None, chunk=-1, n self.want_ranks = HOD_params.get('want_ranks', False) self.want_AB = HOD_params.get('want_AB', False) self.want_shear = HOD_params.get('want_shear', False) + self.want_expvel = HOD_params.get('want_expvel', False) self.want_rsd = HOD_params['want_rsd'] if clustering_params is not None: @@ -308,7 +309,10 @@ def staging(self): halo_ids = maskedhalos["id"].astype(int) # halo IDs halo_pos = maskedhalos["x_L2com"] # halo positions, Mpc / h halo_vels = maskedhalos['v_L2com'] # halo velocities, km/s - halo_vel_dev = maskedhalos["randoms_gaus_vrms"] # halo velocity dispersions, km/s + if self.want_expvel: + halo_vel_dev = maskedhalos["randoms_exp"] # halo velocity dispersions, km/s + else: + halo_vel_dev = maskedhalos["randoms_gaus_vrms"] # halo velocity dispersions, km/s halo_sigma3d = maskedhalos["sigmav3d_L2com"] # 3d velocity dispersion halo_c = maskedhalos['r98_L2com']/maskedhalos['r25_L2com'] # concentration halo_rvir = maskedhalos['r98_L2com'] # rvir but using r98 @@ -445,11 +449,11 @@ def staging(self): "pweights": pweights, "prandoms": prandoms, "pinds": pinds} - if self.want_AB: - halo_data["hdeltac"] = hdeltac - halo_data["hfenv"] = hfenv - particle_data["pdeltac"] = pdeltac - particle_data["pfenv"] = pfenv + # if self.want_AB: + halo_data["hdeltac"] = hdeltac + halo_data["hfenv"] = hfenv + particle_data["pdeltac"] = pdeltac + particle_data["pfenv"] = pfenv if self.want_shear: halo_data["hshear"] = hshear particle_data["pshear"] = pshear @@ -531,7 +535,13 @@ def run_hod(self, tracers = None, want_rsd = True, want_nfw = False, NFW_draw = # np.random.seed(reseed) mtg = MTGenerator(np.random.PCG64(reseed)) r1 = mtg.random(size=len(self.halo_data['hrandoms']), nthread=Nthread, dtype=np.float32) - r2 = mtg.standard_normal(size=len(self.halo_data['hveldev']), nthread=Nthread, dtype=np.float32) + if self.want_expvel: + rt = mtg.random(size=len(self.halo_data['hrandoms']), nthread=Nthread, dtype=np.float32) + r2 = np.zeros(len(rt), dtype=np.float32) + r2[rt >= 0.5] = -np.log(2*(1-rt[rt >= 0.5])) + r2[rt < 0.5] = np.log(2*rt[rt < 0.5]) + else: + r2 = mtg.standard_normal(size=len(self.halo_data['hveldev']), nthread=Nthread, dtype=np.float32) r3 = mtg.random(size=len(self.particle_data['prandoms']), nthread=Nthread, dtype=np.float32) self.halo_data['hrandoms'] = r1 self.halo_data['hveldev'] = r2*self.halo_data['hsigma3d']/np.sqrt(3) diff --git a/abacusnbody/hod/prepare_sim.py b/abacusnbody/hod/prepare_sim.py index 202bc2bf..1ff32658 100644 --- a/abacusnbody/hod/prepare_sim.py +++ b/abacusnbody/hod/prepare_sim.py @@ -624,6 +624,8 @@ def prepare_slab(i, savedir, simdir, simname, z_mock, z_type, tracer_flags, MT, halos['npstartA'] = halos_pstart_new halos['npoutA'] = halos_pnum_new halos['randoms'] = np.random.random(len(halos)) # attaching random numbers + halos['randoms_exp'] = (np.random.randint(0, 2, size = len(halos))*2-1)\ + *np.random.exponential(scale = halos["sigmav3d_L2com"]/np.sqrt(3), size = len(halos)) # attaching random numbers halos['randoms_gaus_vrms'] = np.random.normal(loc = 0, scale = halos["sigmav3d_L2com"]/np.sqrt(3), size = len(halos)) # attaching random numbers From 9f7e17584e31709a696419c85c7e1f3bc4fd3273 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 23 Oct 2023 17:22:14 +0000 Subject: [PATCH 2/4] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- abacusnbody/hod/abacus_hod.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/abacusnbody/hod/abacus_hod.py b/abacusnbody/hod/abacus_hod.py index 79b33749..1ba05fa6 100644 --- a/abacusnbody/hod/abacus_hod.py +++ b/abacusnbody/hod/abacus_hod.py @@ -539,7 +539,7 @@ def run_hod(self, tracers = None, want_rsd = True, want_nfw = False, NFW_draw = rt = mtg.random(size=len(self.halo_data['hrandoms']), nthread=Nthread, dtype=np.float32) r2 = np.zeros(len(rt), dtype=np.float32) r2[rt >= 0.5] = -np.log(2*(1-rt[rt >= 0.5])) - r2[rt < 0.5] = np.log(2*rt[rt < 0.5]) + r2[rt < 0.5] = np.log(2*rt[rt < 0.5]) else: r2 = mtg.standard_normal(size=len(self.halo_data['hveldev']), nthread=Nthread, dtype=np.float32) r3 = mtg.random(size=len(self.particle_data['prandoms']), nthread=Nthread, dtype=np.float32) From 6e7311ddeb411c060eb47ced24882486d488f24f Mon Sep 17 00:00:00 2001 From: Sandy Yuan Date: Fri, 17 Nov 2023 12:43:38 -0800 Subject: [PATCH 3/4] catching up --- abacusnbody/hod/abacus_hod.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/abacusnbody/hod/abacus_hod.py b/abacusnbody/hod/abacus_hod.py index 1ba05fa6..bc5f1694 100644 --- a/abacusnbody/hod/abacus_hod.py +++ b/abacusnbody/hod/abacus_hod.py @@ -449,11 +449,11 @@ def staging(self): "pweights": pweights, "prandoms": prandoms, "pinds": pinds} - # if self.want_AB: - halo_data["hdeltac"] = hdeltac - halo_data["hfenv"] = hfenv - particle_data["pdeltac"] = pdeltac - particle_data["pfenv"] = pfenv + if self.want_AB: + halo_data["hdeltac"] = hdeltac + halo_data["hfenv"] = hfenv + particle_data["pdeltac"] = pdeltac + particle_data["pfenv"] = pfenv if self.want_shear: halo_data["hshear"] = hshear particle_data["pshear"] = pshear From 610e0c5ffbb7b5477ec70869299ef64af8e4c5a8 Mon Sep 17 00:00:00 2001 From: Sandy Yuan Date: Mon, 20 Nov 2023 12:07:36 -0800 Subject: [PATCH 4/4] fixing velocity bias along x and y direction --- abacusnbody/hod/GRAND_HOD.py | 18 ++--- abacusnbody/hod/abacus_hod.py | 14 ++-- abacusnbody/hod/prepare_sim.py | 6 +- .../z2.250/galaxies_rsd/ELGs.dat | 2 +- ...xcom_0_seed600_abacushod_oldfenv_MT_new.h5 | Bin 6702 -> 7982 bytes ...xcom_0_seed600_abacushod_oldfenv_MT_new.h5 | Bin 9360 -> 9360 bytes .../Mini_N64_L32/z0.000/galaxies_rsd/ELGs.dat | 67 +++++++++++------- .../Mini_N64_L32/z0.000/galaxies_rsd/LRGs.dat | 4 +- ...xcom_0_seed600_abacushod_oldfenv_MT_new.h5 | Bin 18136 -> 22936 bytes ...xcom_1_seed600_abacushod_oldfenv_MT_new.h5 | Bin 20944 -> 26704 bytes ...xcom_2_seed600_abacushod_oldfenv_MT_new.h5 | Bin 14626 -> 18226 bytes ...xcom_0_seed600_abacushod_oldfenv_MT_new.h5 | Bin 28512 -> 28512 bytes ...xcom_1_seed600_abacushod_oldfenv_MT_new.h5 | Bin 32432 -> 32432 bytes ...xcom_2_seed600_abacushod_oldfenv_MT_new.h5 | Bin 18432 -> 18432 bytes tests/test_hod.py | 2 +- 15 files changed, 67 insertions(+), 46 deletions(-) diff --git a/abacusnbody/hod/GRAND_HOD.py b/abacusnbody/hod/GRAND_HOD.py index d38eaedc..64c13817 100644 --- a/abacusnbody/hod/GRAND_HOD.py +++ b/abacusnbody/hod/GRAND_HOD.py @@ -227,11 +227,11 @@ def gen_cent(pos, vel, mass, ids, multis, randoms, vdev, deltac, fenv, shear, if keep[i] == 1: # loop thru three directions to assign galaxy velocities and positions lrg_x[j1] = pos[i,0] - lrg_vx[j1] = vel[i,0] + alpha_c_L * vdev[i] # velocity bias + lrg_vx[j1] = vel[i,0] + alpha_c_L * vdev[i,0] # velocity bias lrg_y[j1] = pos[i,1] - lrg_vy[j1] = vel[i,1] + alpha_c_L * vdev[i] # velocity bias + lrg_vy[j1] = vel[i,1] + alpha_c_L * vdev[i,1] # velocity bias lrg_z[j1] = pos[i,2] - lrg_vz[j1] = vel[i,2] + alpha_c_L * vdev[i] # velocity bias + lrg_vz[j1] = vel[i,2] + alpha_c_L * vdev[i,2] # velocity bias # rsd only applies to the z direction if rsd and origin is not None: nx = lrg_x[j1] - origin[0] @@ -253,11 +253,11 @@ def gen_cent(pos, vel, mass, ids, multis, randoms, vdev, deltac, fenv, shear, elif keep[i] == 2: # loop thru three directions to assign galaxy velocities and positions elg_x[j2] = pos[i,0] - elg_vx[j2] = vel[i,0] + alpha_c_E * vdev[i] # velocity bias + elg_vx[j2] = vel[i,0] + alpha_c_E * vdev[i,0] # velocity bias elg_y[j2] = pos[i,1] - elg_vy[j2] = vel[i,1] + alpha_c_E * vdev[i] # velocity bias + elg_vy[j2] = vel[i,1] + alpha_c_E * vdev[i,1] # velocity bias elg_z[j2] = pos[i,2] - elg_vz[j2] = vel[i,2] + alpha_c_E * vdev[i] # velocity bias + elg_vz[j2] = vel[i,2] + alpha_c_E * vdev[i,2] # velocity bias # rsd only applies to the z direction if rsd and origin is not None: nx = elg_x[j2] - origin[0] @@ -279,11 +279,11 @@ def gen_cent(pos, vel, mass, ids, multis, randoms, vdev, deltac, fenv, shear, elif keep[i] == 3: # loop thru three directions to assign galaxy velocities and positions qso_x[j3] = pos[i,0] - qso_vx[j3] = vel[i,0] + alpha_c_Q * vdev[i] # velocity bias + qso_vx[j3] = vel[i,0] + alpha_c_Q * vdev[i,0] # velocity bias qso_y[j3] = pos[i,1] - qso_vy[j3] = vel[i,1] + alpha_c_Q * vdev[i] # velocity bias + qso_vy[j3] = vel[i,1] + alpha_c_Q * vdev[i,1] # velocity bias qso_z[j3] = pos[i,2] - qso_vz[j3] = vel[i,2] + alpha_c_Q * vdev[i] # velocity bias + qso_vz[j3] = vel[i,2] + alpha_c_Q * vdev[i,2] # velocity bias # rsd only applies to the z direction if rsd and origin is not None: nx = qso_x[j3] - origin[0] diff --git a/abacusnbody/hod/abacus_hod.py b/abacusnbody/hod/abacus_hod.py index bc5f1694..20e6c133 100644 --- a/abacusnbody/hod/abacus_hod.py +++ b/abacusnbody/hod/abacus_hod.py @@ -251,7 +251,7 @@ def staging(self): hid = np.empty([Nhalos_tot], dtype = int) hmultis = np.empty([Nhalos_tot]) hrandoms = np.empty([Nhalos_tot]) - hveldev = np.empty([Nhalos_tot]) + hveldev = np.empty((Nhalos_tot, 3)) hsigma3d = np.empty([Nhalos_tot]) hc = np.empty([Nhalos_tot]) hrvir = np.empty([Nhalos_tot]) @@ -536,12 +536,18 @@ def run_hod(self, tracers = None, want_rsd = True, want_nfw = False, NFW_draw = mtg = MTGenerator(np.random.PCG64(reseed)) r1 = mtg.random(size=len(self.halo_data['hrandoms']), nthread=Nthread, dtype=np.float32) if self.want_expvel: - rt = mtg.random(size=len(self.halo_data['hrandoms']), nthread=Nthread, dtype=np.float32) - r2 = np.zeros(len(rt), dtype=np.float32) + rt0 = mtg.random(size=len(self.halo_data['hrandoms']), nthread=Nthread, dtype=np.float32) + rt1 = mtg.random(size=len(self.halo_data['hrandoms']), nthread=Nthread, dtype=np.float32) + rt2 = mtg.random(size=len(self.halo_data['hrandoms']), nthread=Nthread, dtype=np.float32) + rt = np.vstack((rt0, rt1, rt2)).T + r2 = np.zeros((len(rt), 3), dtype=np.float32) r2[rt >= 0.5] = -np.log(2*(1-rt[rt >= 0.5])) r2[rt < 0.5] = np.log(2*rt[rt < 0.5]) else: - r2 = mtg.standard_normal(size=len(self.halo_data['hveldev']), nthread=Nthread, dtype=np.float32) + r20 = mtg.standard_normal(size=len(self.halo_data['hveldev']), nthread=Nthread, dtype=np.float32) + r21 = mtg.standard_normal(size=len(self.halo_data['hveldev']), nthread=Nthread, dtype=np.float32) + r22 = mtg.standard_normal(size=len(self.halo_data['hveldev']), nthread=Nthread, dtype=np.float32) + r2 = np.vstack((r20, r21, r22)).T r3 = mtg.random(size=len(self.particle_data['prandoms']), nthread=Nthread, dtype=np.float32) self.halo_data['hrandoms'] = r1 self.halo_data['hveldev'] = r2*self.halo_data['hsigma3d']/np.sqrt(3) diff --git a/abacusnbody/hod/prepare_sim.py b/abacusnbody/hod/prepare_sim.py index 1ff32658..108f4559 100644 --- a/abacusnbody/hod/prepare_sim.py +++ b/abacusnbody/hod/prepare_sim.py @@ -624,10 +624,10 @@ def prepare_slab(i, savedir, simdir, simname, z_mock, z_type, tracer_flags, MT, halos['npstartA'] = halos_pstart_new halos['npoutA'] = halos_pnum_new halos['randoms'] = np.random.random(len(halos)) # attaching random numbers - halos['randoms_exp'] = (np.random.randint(0, 2, size = len(halos))*2-1)\ - *np.random.exponential(scale = halos["sigmav3d_L2com"]/np.sqrt(3), size = len(halos)) # attaching random numbers + halos['randoms_exp'] = (np.random.randint(0, 2, size = (len(halos), 3))*2-1)\ + *np.random.exponential(scale = np.repeat(halos["sigmav3d_L2com"], 3).reshape((-1, 3))/np.sqrt(3), size = (len(halos), 3)) # attaching random numbers halos['randoms_gaus_vrms'] = np.random.normal(loc = 0, - scale = halos["sigmav3d_L2com"]/np.sqrt(3), size = len(halos)) # attaching random numbers + scale = np.repeat(halos["sigmav3d_L2com"], 3).reshape((-1, 3))/np.sqrt(3), size = (len(halos), 3)) # attaching random numbers # output halo file print("outputting new halo file ") diff --git a/tests/ref_hod/AbacusSummit_base_c000_ph001-abridged/z2.250/galaxies_rsd/ELGs.dat b/tests/ref_hod/AbacusSummit_base_c000_ph001-abridged/z2.250/galaxies_rsd/ELGs.dat index c253086d..0366932f 100644 --- a/tests/ref_hod/AbacusSummit_base_c000_ph001-abridged/z2.250/galaxies_rsd/ELGs.dat +++ b/tests/ref_hod/AbacusSummit_base_c000_ph001-abridged/z2.250/galaxies_rsd/ELGs.dat @@ -20,4 +20,4 @@ x y z vx vy vz mass id -989.9779939780151 2595.872235514386 174.58946130616962 279.78515625 405.76171875 682.470703125 594760988767.7638 1364044 -989.8491016637607 2700.924001600403 128.59961886324763 192.24267578125 -99.3597640991211 -54.88894271850586 4730669850376.221 1374058 -989.9346596474115 2712.400836645169 79.9785797238952 346.61865234375 -133.11767578125 -166.9921875 491415994265.56366 1375036 --989.411052509211 2702.3862712400905 129.18043285068367 17.578125 143.5 -284.125 2389589362673.3203 1374059 +-989.8232582237715 2546.1908703460344 572.2576660921198 618.0 278.25 -720.5 15543930805739.074 1360581 diff --git a/tests/ref_hod/AbacusSummit_base_c000_ph001-abridged/z2.250/halos_xcom_0_seed600_abacushod_oldfenv_MT_new.h5 b/tests/ref_hod/AbacusSummit_base_c000_ph001-abridged/z2.250/halos_xcom_0_seed600_abacushod_oldfenv_MT_new.h5 index 2f3015aa7bc2825afae7fa88d6911eea3ad20f44..f8c62a676d880011d00a442bd0ed8465c6111aac 100644 GIT binary patch delta 1757 zcmZvYYdjSA9>!-zp&8}Q#Yz{SEOS!stQ=~I@ox~SZsnb8zXF=Q-PwK_mt?}L&1r#Ik9cDl+n&ma(s z_VkwMc*A=SS6S{?VzPgYoOLSV()xdF^@Y%0=b*U?0lb;2=^yA5V#an^zrURWROEd7 zG_rI9&>k6ESZ$0Wbh@0g>*tr&EejI(I9kqTcxD4VI62$3+X~+uH<_bE@!^4&cs9Qk zpyXp)dUAsZKT*jPU5_AL$_`zx5lM^KhX<~{HdAd42D#py_D#>SP}JBZrig?niXY6S z{Tc@L-u|V7x^YOj3>l}VD$StpW*m4t^R8Ad^MhWW3CD411WZ5PcB0GL3!?7nX626p z3|(pup1dQ*b^~IhqDTJAkh1DtSF=>-GePli%oY`U9z3{k^k|cfD>j9>GcJEGfq`Q^ z%?B(cEg2`~F!jveJ257;Ef zz>6sNV{yClk(^sAW3@(UpNdeA0?q5G($_VK$PWhY!#4@AW0j(9Tc{JZgqh8inC^pf zR=iq{#Gg27W1TJ$@L?mfefg%|r3lR{oju{`T14 zZfcZ2upc6cpPD`~R+F-?R?b#l^H0Yf-*=p0e?R1f7uWRm3E||`K2O5^c`IidfdSd1RDiHWd80c?4%)mbfy z#I-ZU``oAPkUUkFvG#1!2s~hz0H-gk)6takfP1!Xk>3-GH3~nq4T%GwR(r|n8Py9q zJ{tsTD+!56LvCHire5SbCV$w%If7;&&(%n6M~dH>=Q zV>f5$BtDw@WP_%Zy?L*-!gf0sq$%`QQtoWUsU0(i_+Pt$M0wq}Q;iYGU=)PE=m-My z&XBb&Z-qe0G-aF}-$(<-Bynge>Yje&=8a`9;B7MGXmy9#z}!opJMnxjgf z_lt)HC%5k>9a?fusOeFs*z7$RdEY_pxYhyCTm5)w!$JytoS7Nu+#HWDi)J?3l)0et z107qd(iq59CpFr76&4UUkLVKek5 zH3&=J+R}%kbCLY1Eo1N5ZDjFbNC2^~8jnQrKUGvNPg0hv6gBqxru4fAay=;g>mo*L=ofX8Ehfm+F9qp)k_1lyJquh=Z&B^ zMA7b-gapFYm9zf$&E#li^@%TYu3vMPgAe-Bmy_JQ(tx6@JNGb3 z2gXPhQ=jBAr7SnupwDbe2#PHO%Y;Ue_+4xDC!Wj|#0ElVk!t{YH#CZu`~-;CL-U7q z!pQELS_;=&d#Z)~Az|xsf8wjLLLszU~iG zWN^Jcsa-E+?{DZ&UZ4lVO&({d?_4@e)wO;XF{cI<*E>pV17o3iHsY@K854Z=gKa8J Hk_7(;y{QPh delta 511 zcmVPzjO;#ob*V4^T{#5ekwD zy?XtuovbCmf(ery3mTK}3Uvyk4Zi3rYi7Xr0h8Vf8k4XKbqRhAT~B=6X+Wcso(vn4 zaSU||C%p2$&sS!^${dqm4H}a&4Rs2T$69QK0AoOd1d|~S8k6%4bqK=86D8KgfWVWO z4v`2^YHq*e{4PkqDhP5=6*&W5AOh6Ojmr!H10(5lPnh-lm8ZV3MxVi z#~({oz>5Nt?iU)9z!!B2fpmOPoV+nW$N`hD7#fp-7Km@8H+!)-#dC^N`5$jaH+P?(LqucoGJ1hc4!uG@dzKll82o_l!i&RAiruptf> zF1BAv3I|L3?MfnW2!wuj3bvmTad8;t1RGK&EF#MxIfCfMp1XU6CFV)$N80E@fo_#K zKN&&I!@T!T|GZ*0QIAL)b5CqSR2 zxL;z{Z$mJC%<7o^6=t5Ht~Um5a)vL=Whn@zp0(Ds?hG*7sP)3pjZp1DF)^T zTGq(}C5G_h8R>EKGi#Thj$pH6Yy6?S*tjO@0&}ITZqt5*a+TWtudqFzCBh z6_3hA;#XnFUw3pBlOa~8S0f+@e9e&yCgN0MP(R^)Zt;0Zt_FkR6LX@aaD@!gSjkn8 z(@HM^85p!oFFfmgDU!<>7#2xG>(RJHcBSnIhQcongd#JnwLsn58cg)8#YPTN$Mp{f zzFmwNWgZ9i)wXWm94nv9M3C=QX=?ApJ};j~V6Dt;FbCg}J|4s6997T0w%B8HSqN5v zwONn&m7VRRcAgxUUD2*EN3symtEbAVM_uHw7K8H%AM{r{{lrOQ++#ksyFenj*%-(^ nxsNTH+sR-yhGO0KP4b#pKVFA;&1*qbz%7-^*b4r)%Vd86mpv(D delta 701 zcmZ9}ZAjBW90za*)9+&$z=1K zo0T{$&}531Hcg0O#ikXgg`xhXO;dYZ3o4dmb-TUm-rVoQ_s92MoGw$B*@=WO-|{@% zljuyh6`=@L z9F=vzlWt}+wf$LP?tsbHEg>PITu^43$Xo|F$w5!L5}`S`+WtSl&r(p8VEWZhOcqU4>xvfhK{I zd&#V$&i*Uw3zB{Cxi$g;b~B?Y^GMbt|S$kEzCj=f%=ZM1@4+DQo>f=N0>6!~O%uecq zKZ~=BifLvPyAOmH=4B+mVzk8~s69P8I}+%R6;cGeQH^!Y{SQcm6hm!J&Jn|ygY63A z5G-9prigL>XO&S`a>n4x-F+N$rP!4kz>f33J0Rd6o|h^S diff --git a/tests/ref_hod/Mini_N64_L32/z0.000/galaxies_rsd/ELGs.dat b/tests/ref_hod/Mini_N64_L32/z0.000/galaxies_rsd/ELGs.dat index 3efc3bd4..d129fe64 100644 --- a/tests/ref_hod/Mini_N64_L32/z0.000/galaxies_rsd/ELGs.dat +++ b/tests/ref_hod/Mini_N64_L32/z0.000/galaxies_rsd/ELGs.dat @@ -19,7 +19,7 @@ x y z vx vy vz mass id -14.51835823059082 7.931110382080078 -3.584781303405762 163.04673767089844 139.01560974121094 56.981407165527344 1153534123340.0 110005000000 -15.496166229248047 10.945652961730957 -2.720741901397705 207.01663208007812 184.14505004882812 139.6011199951172 642061446010.0 120005000000 -14.402153015136719 12.416088104248047 -5.1643526649475096 169.70962524414062 171.3517608642578 253.3010711669922 565884664280.0 130003000000 --11.723433494567871 -15.79758071899414 0.28377065658569345 149.74217224121094 -1.9829565286636353 -256.9563293457031 2883835308350.0 100000008000000 +-11.723433494567871 -15.79758071899414 0.2837706565856933 149.74217224121094 -1.9829565286636353 -256.9563293457031 2883835308350.0 100000008000000 -13.297053337097168 -13.044370651245117 -2.180264949798584 157.18418884277344 -188.30552673339844 251.63612365722656 1164416520730.0 100010005000000 -12.671599388122559 -10.362853050231934 -5.708838672637939 114.60912322998047 -172.80517578125 27.945545196533203 750885419910.0 100020004000000 -13.626067161560059 -3.7235212326049805 6.224752807617188 -7.58872127532959 -42.44635009765625 -126.14227294921875 968533367710.0 100050010000000 @@ -28,31 +28,31 @@ x y z vx vy vz mass id -13.718157768249512 11.00837230682373 -3.6717508316040037 213.04156494140625 82.03125 -181.470947265625 1022945354660.0 100120006000000 -13.592602729797363 14.086950302124023 -4.613870429992676 184.3946533203125 116.6330795288086 356.114501953125 772650214690.0 100140003000000 -11.148972511291504 -15.498797416687012 -4.390919952392578 791.3343505859375 -116.67435455322266 27.26866912841797 10327395123110.0 200000004000001 --9.196588516235352 -15.937725067138672 -3.9100983047485354 -226.09007263183594 410.1698913574219 74.37532043457031 707355830350.0 200000004000003 --9.316675186157227 -15.283766746520996 -1.5695453834533692 -633.298828125 -176.55628967285156 318.1910400390625 446178292990.0 200000004000005 +-9.196588516235352 -15.937725067138672 -3.910098304748535 -226.09007263183594 410.1698913574219 74.37532043457031 707355830350.0 200000004000003 +-9.316675186157227 -15.283766746520996 -1.569545383453369 -633.298828125 -176.55628967285156 318.1910400390625 446178292990.0 200000004000005 -9.933526039123535 -10.896464347839355 -4.217310638427734 -109.54805755615234 -409.285888671875 120.2506332397461 1458241250260.0 200020004000001 -11.547629356384277 -4.2686662673950195 -9.165989227294922 5.6149468421936035 -115.52357482910156 216.5851287841797 816179804250.0 200050002000000 -9.703001976013184 -3.0016324520111084 -2.634219989776611 85.74483489990234 -73.37793731689453 -54.67475509643555 587649459060.0 200060006000000 --10.122016906738281 1.7329100370407104 -1.8345533752441407 79.85171508789062 4.65559196472168 -58.8455810546875 4157075802980.0 200080006000000 +-10.122016906738281 1.7329100370407104 -1.8345533752441405 79.85171508789062 4.65559196472168 -58.8455810546875 4157075802980.0 200080006000000 -9.968084335327148 3.094167709350586 3.904859752655029 62.15882873535156 16.563215255737305 -181.44810485839844 772650214690.0 200080010000000 -9.952048301696777 10.709346771240234 -3.5124417972564697 -30.543163299560547 291.2341003417969 -75.7087631225586 489707882550.0 200120006002000 -9.49063777923584 12.817178726196289 -4.938613986968994 -349.93487548828125 380.54376220703125 -85.51593780517578 1523535634600.0 200130005003000 -9.00098991394043 -10.96568489074707 -3.576101825237274 138.56336975097656 -133.7097625732422 -277.8128967285156 750885419910.0 300020007000000 -8.72246265411377 -3.7697997093200684 -3.1893835258483887 37.34700393676758 -31.74207305908203 -121.53964233398438 1665006800670.0 300050006002000 -8.693653106689453 8.429630279541016 -2.758038376569748 252.8817901611328 75.3807373046875 -321.4716796875 881474188590.0 300110007001000 --7.5774922370910645 7.979973793029785 -0.8144911384582518 41.3096923828125 -35.70994567871094 -297.7195129394531 3177660037880.0 300110008000000 +-7.5774922370910645 7.979973793029785 -0.814491138458252 41.3096923828125 -35.70994567871094 -297.7195129394531 3177660037880.0 300110008000000 -8.890106201171875 9.957396507263184 -4.037821998596192 169.58604431152344 245.51553344726562 225.28855895996094 1697653992840.0 300120004000000 -9.220510482788086 12.872040748596191 -5.769790768623352 -26.419090270996094 48.67900848388672 -399.4720458984375 729120625130.0 300130006001000 -8.76818561553955 15.815776824951172 2.16959602355957 77.00643920898438 -8.378704071044922 -246.6212921142578 576767061670.0 300140009001000 --7.466480255126953 15.310609817504883 7.514066085815429 37.88462829589844 29.308778762817383 -120.08482360839844 1991478722370.0 300140011000000 +-7.466480255126953 15.310609817504883 7.51406608581543 37.88462829589844 29.308778762817383 -120.08482360839844 1991478722370.0 300140011000000 -5.939600467681885 2.3130478858947754 -6.070600051879882 99.66493225097656 52.639793395996094 173.86021423339844 990298162490.0 400080003001000 -7.289783477783203 6.100117206573486 -5.572191200256348 166.01055908203125 168.39495849609375 143.13040161132812 968533367710.0 400100004000000 -6.96325159072876 14.966787338256836 0.7407073783874512 -20.088083267211914 50.28932571411133 -250.4546661376953 3014424077030.0 400140008000000 -4.8576340675354 -9.931912422180176 -2.0411104583740234 151.24803161621094 -125.21568298339844 306.2204895019531 489707882550.0 500020005000000 -4.671352863311768 -11.455158233642578 -6.908011083602905 283.1856384277344 -157.54270935058594 -317.6852111816406 380883908650.0 500020005002000 -4.99878454208374 -3.2018752098083496 3.0143338012695313 67.93506622314453 -23.253684997558594 -170.93447875976562 816179804250.0 500050009001000 --4.76817512512207 8.749960899353027 -6.536458950042725 -301.1524963378906 196.49510192871094 91.36824798583984 1937066735420.0 500110003000000 --4.458686828613281 13.64990234375 -6.367664394378663 -113.60659790039062 59.15117263793945 -154.76976013183594 565884664280.0 500130005001000 +-4.76817512512207 8.749960899353027 -6.536458950042724 -301.1524963378906 196.49510192871094 91.36824798583984 1937066735420.0 500110003000000 +-4.458686828613281 13.64990234375 -6.367664394378662 -113.60659790039062 59.15117263793945 -154.76976013183594 565884664280.0 500130005001000 -2.5271100997924805 -15.016393661499023 -4.80699912071228 -62.35439682006836 272.1480712890625 -3.0486021041870117 979415765100.0 600000005001000 -2.1237425804138184 -9.359868049621582 -9.414025459289551 42.20768737792969 -120.63050079345703 -631.5990600585938 2198244272780.0 600020006000000 -2.2788007259368896 1.8965433835983276 1.831328077316284 -126.98192596435547 16.524229049682617 -175.84820556640625 500590279940.0 600080009000000 @@ -69,12 +69,12 @@ x y z vx vy vz mass id 0.4158208668231964 -1.7427817583084106 10.610767669677735 -34.116798400878906 -123.81771850585938 -52.90314483642578 642061446010.0 700060012000000 -0.7558362483978271 0.8292347192764282 6.154626750946045 -55.465240478515625 -59.2318115234375 -97.93697357177734 1980596324980.0 700070010000000 1.0874981880187988 2.6616625785827637 -4.708214206695557 4.638670921325684 -76.17894744873047 -163.03500366210938 533237472110.0 700080005000000 -1.1365690231323242 5.930782794952393 -8.686026458740233 -116.44389343261719 -38.84065628051758 134.87025451660156 935886175540.0 700100002001000 +1.1365690231323242 5.930782794952393 -8.686026458740235 -116.44389343261719 -38.84065628051758 134.87025451660156 935886175540.0 700100002001000 -0.49693718552589417 5.662851810455322 12.60552900314331 -32.676551818847656 6.379591464996338 22.497766494750977 729120625130.0 700100013000000 -0.3185131251811981 8.066765785217285 -7.381932010650635 -49.46342849731445 105.12274169921875 58.02314376831055 892356585980.0 700110003001000 0.06823333352804184 11.536266326904297 -5.529072666168213 -24.07335662841797 183.6951904296875 -8.695640563964844 718238227740.0 700120004000000 -0.2842399477958679 11.05790901184082 10.33816822052002 79.59639739990234 11.318110466003418 -72.54790496826172 435295895600.0 700120012002000 -2.5904433727264404 -14.69328784942627 -3.0558535909652713 -111.98018646240234 111.79598236083984 -116.86700439453125 1001180559880.0 800000006000000 +2.5904433727264404 -14.69328784942627 -3.055853590965271 -111.98018646240234 111.79598236083984 -116.86700439453125 1001180559880.0 800000006000000 2.7262160778045654 -12.993206024169922 -4.269969787597656 -265.52667236328125 -52.42788314819336 -74.79437255859375 685591035570.0 800010005000000 1.4444551467895508 -7.280479431152344 -3.398507080078125 -201.20632934570312 -25.58744239807129 93.09358978271484 1730301185010.0 800040005001000 1.5122003555297852 2.700745105743408 -5.823624687194824 -83.36663055419922 -108.37003326416016 90.50883483886719 794415009470.0 800080004000000 @@ -83,7 +83,7 @@ x y z vx vy vz mass id 3.046112537384033 13.292448043823242 -4.33986047744751 -264.16534423828125 172.48135375976562 97.98287963867188 522355074720.0 800130004000000 1.3172047138214111 12.57468318939209 8.094191131591797 -22.33595848083496 23.31026268005371 -97.84140014648438 848826996420.0 800130011000000 5.131485939025879 -11.601445198059082 1.1084141635894775 -56.54134750366211 -86.17334747314453 -101.41637420654297 968533367710.0 900010008002000 -5.596229076385498 -8.624361991882324 -3.931888313293457 -96.07770538330078 -7.759613513946533 82.681396484375 3895898265620.0 900030005000000 +5.596229076385498 -8.624361991882324 -3.9318883132934572 -96.07770538330078 -7.759613513946533 82.681396484375 3895898265620.0 900030005000000 4.807375907897949 0.20375189185142517 -5.625345191955566 -94.56612396240234 -113.05360412597656 136.38754272460938 1012062957270.0 900070004000000 4.043700695037842 7.680980682373047 -4.109910163879395 -138.4853515625 -18.757539749145508 -143.30331420898438 500590279940.0 900110006000000 3.8049867153167725 12.000171661376953 -8.302328567504883 -79.28042602539062 15.372339248657227 266.00909423828125 946768572930.0 900130002000000 @@ -92,14 +92,14 @@ x y z vx vy vz mass id 5.6139702796936035 -11.903861999511719 -6.226984252929688 -21.134416580200195 -4.354462146759033 234.93707275390625 925003778150.0 1000010003001000 5.989441871643066 -9.15694808959961 2.9907214736938474 -19.981611251831055 -116.09149932861328 -101.1829605102539 467943087770.0 1000030009000000 6.635930061340332 -6.814817905426025 -4.317118129730225 -108.96880340576172 86.7453842163086 46.05131530761719 859709393810.0 1000040005000000 -6.949442386627197 -4.154832363128662 -6.179595603942872 -61.90947341918945 -80.43289184570312 -178.2292022705078 979415765100.0 1000050005000000 +6.949442386627197 -4.154832363128662 -6.179595603942871 -61.90947341918945 -80.43289184570312 -178.2292022705078 979415765100.0 1000050005000000 5.784037113189697 -0.35819578170776367 -12.737131843566894 -79.0937271118164 -57.00947570800781 139.55557250976562 522355074720.0 1000070000000000 5.523092746734619 2.411149740219116 -7.76791862487793 -88.7691421508789 -29.65597152709961 110.11705017089844 1153534123340.0 1000080003000000 -7.383076190948486 2.204963207244873 -4.6801070117950445 -64.38322448730469 -52.118839263916016 -128.2375946044922 740003022520.0 1000080005000000 +7.383076190948486 2.204963207244873 -4.680107011795044 -64.38322448730469 -52.118839263916016 -128.2375946044922 740003022520.0 1000080005000000 5.5487961769104 5.996278762817383 -14.577242660522462 -88.5879898071289 -33.342464447021484 148.77349853515625 1207946110290.0 1000100000000000 -7.098642826080322 6.667464733123779 -3.3860002994537357 -84.26561737060547 3.1188292503356934 -107.49095916748047 620296651230.0 1000100006001000 +7.098642826080322 6.667464733123779 -3.3860002994537353 -84.26561737060547 3.1188292503356934 -107.49095916748047 620296651230.0 1000100006001000 6.831480026245117 14.161846160888672 -3.619131031036377 -129.2847137451172 146.4857940673828 60.2572021484375 783532612080.0 1000140005000000 -6.051450729370117 14.329913139343262 0.24700262546539298 -95.96175384521484 198.39634704589844 -133.37265014648438 1055592546830.0 1000140008000000 +6.051450729370117 14.329913139343262 0.24700262546539303 -95.96175384521484 198.39634704589844 -133.37265014648438 1055592546830.0 1000140008000000 7.775051116943359 -14.846220016479492 -3.1207962226867676 -67.46175384521484 70.68994903564453 -15.21263313293457 1207946110290.0 1100000006000000 9.0003080368042 -11.110405921936035 4.277978134155274 -191.34628295898438 -35.54996109008789 -128.17657470703125 881474188590.0 1100020010000000 9.356839179992676 -9.297951698303223 1.4536496353149413 -80.66883850097656 15.704920768737793 -117.1494369506836 2328833041460.0 1100030008000000 @@ -112,18 +112,35 @@ x y z vx vy vz mass id 12.17408275604248 -7.022722244262695 -4.528275737762451 52.645599365234375 -51.98377227783203 -250.9248504638672 609414253840.0 1300040006000000 12.386329650878906 -5.170563697814941 0.4269035673141479 -21.181764602661133 -115.7461166381836 -145.6400909423828 2100302696270.0 1300040008000000 -15.96170425415039 -13.58110523223877 -6.872355613708496 224.8917999267578 -55.80312728881836 -198.4420928955078 805297406860.0 1400010005001000 -14.235092163085938 -5.254249572753906 -4.7663245773315435 -38.438072204589844 -184.15138244628906 202.5418701171875 892356585980.0 1400040004000000 +14.235092163085938 -5.254249572753906 -4.766324577331543 -38.438072204589844 -184.15138244628906 202.5418701171875 892356585980.0 1400040004000000 14.469467163085938 -1.9040683507919312 -15.379054603576659 19.848947525024414 -100.27149963378906 99.04512786865234 576767061670.0 1400060014000000 15.555224418640137 0.5220844745635986 -2.7185896682739257 86.30542755126953 -96.33610534667969 -172.35211181640625 1436476455480.0 1400070006000000 -15.874872207641602 -0.27219611406326294 8.004806098937989 80.75609588623047 -11.46228313446045 -58.701271057128906 1022945354660.0 1400070011000000 15.293803215026855 2.8918581008911133 -3.0034103107452395 56.40514373779297 -68.89611053466797 -25.464412689208984 1153534123340.0 1400080006000000 15.901444435119629 15.523130416870117 -3.935301103591919 285.6259460449219 181.75247192382812 -21.644596099853516 576767061670.0 1400140005000000 --15.246111869812012 -12.344832420349121 -2.6307897567749023 190.4296875 257.8125 249.0234375 4167958200370.0 10005001000 --9.847359657287598 -15.72374439239502 -6.088714122772217 -216.796875 67.3828125 -140.625 113372816009020.0 200000004000000 --9.949919700622559 -10.91759967803955 -3.584169864654541 -152.34375 -480.46875 181.640625 1458241250260.0 200020004000001 --4.931519985198975 6.561471939086914 -4.537506103515625 -216.796875 234.375 260.7421875 3612955933480.0 500100004000000 --4.75980806350708 10.89737606048584 -6.099099159240723 231.4453125 76.171875 284.1796875 6932087137430.0 500120003000000 --2.2871038913726807 -9.661888122558594 -4.004379749298096 -205.078125 143.5546875 67.3828125 89137717021490.0 600020004000000 -0.15091200172901154 -3.571647882461548 15.306100845336914 196.2890625 -29.296875 70.3125 3841486278670.0 700050014000000 -8.730976104736328 -7.457119941711426 12.538071632385254 67.3828125 -61.5234375 -134.765625 4472665327290.0 1100030013000000 -12.349023818969727 -6.329343795776367 0.3184299468994142 231.4453125 -284.1796875 583.0078125 6681791997460.0 1300040004000000 +-13.289983749389648 2.2354559898376465 5.957973003387451 360.3515625 55.6640625 -90.8203125 4701195672480.0 100080010000000 +-9.942655563354492 -15.880352020263672 -5.671970844268799 111.328125 -486.328125 -117.1875 113372816009020.0 200000004000000 +-10.809151649475098 -15.911456108093262 -5.967304229736328 -14.6484375 93.75 -134.765625 113372816009020.0 200000004000000 +-10.061663627624512 15.991519927978516 -6.071595668792725 292.96875 228.515625 -146.484375 113372816009020.0 200000004000000 +-9.959712028503418 15.81481647491455 -6.167383193969727 234.375 881.8359375 -131.8359375 113372816009020.0 200000004000000 +-10.014495849609375 15.530464172363281 -4.146609783172607 35.15625 -178.7109375 46.875 113372816009020.0 200000004000000 +-9.535136222839355 -15.884480476379395 -3.0497074127197266 430.6640625 -577.1484375 175.78125 113372816009020.0 200000004000000 +-9.853759765625 14.793343544006348 -8.270562171936035 -43.9453125 875.9765625 -328.125 21057438949650.0 200000004000002 +-8.28003215789795 -9.957632064819336 -5.003454685211182 -164.0625 -372.0703125 111.328125 2709716950110.0 300020004000000 +-5.780640125274658 12.169055938720703 -2.396367073059082 -483.3984375 99.609375 647.4609375 18217133230860.0 400120003000000 +-3.690239906311035 -11.683551788330078 -2.9769768714904785 184.5703125 290.0390625 158.203125 11546223630790.0 500010005000000 +-2.378848075866699 -10.013855934143066 -9.952719688415527 -524.4140625 240.234375 -480.46875 89137717021490.0 600020004000000 +-2.274143934249878 -9.296223640441895 -4.194736480712891 632.8125 665.0390625 52.734375 89137717021490.0 600020004000000 +-2.1835200786590576 -9.202783584594727 3.1767830848693848 70.3125 -164.0625 747.0703125 89137717021490.0 600020004000000 +-1.91103994846344 3.537760019302368 -1.0530956387519836 17.578125 -149.4140625 -79.1015625 2143832285830.0 600090007000000 +-0.35129600763320923 -3.385215997695923 -13.629737854003906 76.171875 234.375 181.640625 1817360364130.0 700050000001000 +0.40799999237060547 -4.085728168487549 -4.742704391479492 -213.8671875 96.6796875 319.3359375 2970894487470.0 700050003000000 +1.0244799852371216 -4.320064067840576 -4.744637489318848 205.078125 -814.453125 61.5234375 9881216830120.0 700050004000000 +3.274303913116455 -14.742207527160645 4.4335222244262695 234.375 178.7109375 114.2578125 7215029469570.0 800000008000000 +2.2193920612335205 -3.334752082824707 -1.2022666931152344 210.9375 -231.4453125 339.84375 4015604636910.0 800050005000000 +2.59500789642334 -1.3323520421981812 -4.824908256530762 149.4140625 -489.2578125 -41.015625 8553564348540.0 800060005000000 +5.8284478187561035 -14.30726432800293 3.406728744506836 35.15625 23.4375 -131.8359375 13145936047120.0 900000009001000 +9.458720207214355 -6.962368011474609 2.4301631450653076 -102.5390625 -219.7265625 -96.6796875 7791796531240.0 1100030009000000 +14.83135986328125 -8.420096397399902 -1.9180989265441895 43.9453125 -723.6328125 257.8125 28664234725260.0 1400030005000000 +15.219584465026855 -3.111072063446045 2.6929895877838135 -158.203125 -146.484375 -61.5234375 7748266941680.0 1400050008000000 +-15.85308837890625 0.3648959994316101 11.473132133483887 187.5 123.046875 146.484375 1991478722370.0 1400070012000000 diff --git a/tests/ref_hod/Mini_N64_L32/z0.000/galaxies_rsd/LRGs.dat b/tests/ref_hod/Mini_N64_L32/z0.000/galaxies_rsd/LRGs.dat index 3c1df871..015d909f 100644 --- a/tests/ref_hod/Mini_N64_L32/z0.000/galaxies_rsd/LRGs.dat +++ b/tests/ref_hod/Mini_N64_L32/z0.000/galaxies_rsd/LRGs.dat @@ -17,9 +17,7 @@ x y z vx vy vz mass id -10.116243362426758 15.986204147338867 -3.991608905792236 21.652971267700195 -36.7679328918457 62.8034782409668 113372816009020.0 200000004000000 -10.054981231689453 14.843656539916992 -6.802307395935059 59.38576889038086 774.992919921875 -205.86903381347656 21057438949650.0 200000004000002 -9.820068359375 -11.208837509155273 -3.8385841178894045 120.56236267089844 -219.26451110839844 201.10247802734375 11197986914310.0 200020004000000 --5.8185882568359375 12.296954154968262 -5.730250625610351 35.3411865234375 51.90985107421875 307.4423522949219 18217133230860.0 400120003000000 +-5.8185882568359375 12.296954154968262 -5.730250625610352 35.3411865234375 51.90985107421875 307.4423522949219 18217133230860.0 400120003000000 -2.2077879905700684 -9.597530364990234 -4.5027414989471435 -10.01099681854248 -50.52813720703125 14.57336711883545 89137717021490.0 600020004000000 5.933405876159668 -4.835461139678955 -3.5339558601379393 -57.67539596557617 -31.752958297729492 152.32574462890625 7574148583440.0 1000050004000000 14.92094898223877 -8.215825080871582 -4.828529033660889 -26.246870040893555 -41.75486755371094 -13.62411117553711 28664234725260.0 1400030005000000 --10.061663627624512 15.991519927978516 -6.071595668792725 292.96875 228.515625 -146.484375 113372816009020.0 200000004000000 --2.658751964569092 -9.830623626708984 -7.5551862716674805 -29.296875 -272.4609375 -275.390625 89137717021490.0 600020004000000 diff --git a/tests/ref_hod/Mini_N64_L32/z0.000/halos_xcom_0_seed600_abacushod_oldfenv_MT_new.h5 b/tests/ref_hod/Mini_N64_L32/z0.000/halos_xcom_0_seed600_abacushod_oldfenv_MT_new.h5 index f7664ad52075ca4286c12142971317a009368c08..9f5d8c31f023a4bd4912b63a3aded37169d42308 100644 GIT binary patch delta 6424 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 diff --git a/tests/ref_hod/Mini_N64_L32/z0.000/halos_xcom_1_seed600_abacushod_oldfenv_MT_new.h5 b/tests/ref_hod/Mini_N64_L32/z0.000/halos_xcom_1_seed600_abacushod_oldfenv_MT_new.h5 index 772e4cd8e60ba17def90637246408952edc860bb..bb58f5a3e59348fb12bbd8315b7bee0256df6889 100644 GIT binary patch delta 7686 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 delta 1875 zcmWNQd03NI7RD2h+)Gdz3<$DCc7v={_CP+6$SO;S>>xpw6ucJ@6&X<}0uRMXh0~FO ztvKjIrD}npZ0%G&+fu};pmrQ^8PO57I8Yd@S`nP@zxVe%=RWs6=e%cZj6Zgoe{8+h zSZuxHK|a&fen^Wi0;#rCuV0JLLkjIwU{*im_gKMPex z1Q)zvIy-lVGhn@jposTZ>6Lcz;NlvJyY94ku8zuOA=Q{*`-+6WJ#O@3;7<+!~mf}k_{~6KjjbMP765Q$DEZj23{US6Y z`2LjhP?0c=fiF2YmG;0!?_n?t!R7>=s_AcEdSL~V<`hr%{aIV=pkd&k1;I}}3W`jA zt7E{-lA!04zT;WFD(JJMxGc=%S^VJrpTSu`+ ztipL}Uc!Kr6+t64e%*-Tju~n0_cHB9Wff74{mwP7*O!eYfFtjIl#eGz9gpo@cw0R4cOj&&?VIS_oaP9>~;&y|7a92DiJ{IASa#X!w^fB13iE_PCa z-`?Ko*m`>x3qME+n(ya*?L1rv>5ddtK5%)JI=vYd9Vwp33o9IG@noTC13?RxZioJT zJpnwND6VxaTJV+xvT)0Zpi64;$}hGjK!G#Gl^W@p7Q&fa?gXV&PO0_x#K5=i z6b)QCE?f914HDj`Xo@ZxFQlf!3r>sV<$C%h@ld~!;=_$Y&DuY1Wx;h5*Pnr4)ngN8auA zff!$k$2DiJwqKXAFzZWD$ggRCmz1iZ){mkt-J}ZpawRy(C?0%zB`t>|!XMRkfMbR&aJjfduK;Tw4-oN5lC*iVVXXLVpfZL0Aw)ohSR&>!xJG zlOT%aCh~|XUNQ@nn+g7@!Dpt3&rQK9m|)@Af7R_P-^IYiV1j0=ZSG$9Tnxzyifc+l zNL;OC;I)FQlG|yEBQjX{>lT87JC0>31$p2eLUH)I{Af@2G!{lfxLlsj9eNMAs-2-+ z0OnsNHV9wKK{t$Gf8#6p-vw}2(#Anvb{pUCtv3ss!wH^v^U=_yIxgjt97GCwBHl!J zuy7!Pi`G*g#g7dcur`t+x2Pw=<;UjG%juN8M*9|LKY+Nc6wQy0{5*g>VUE+$u}kOW zt8?LK6h$AFxlAOtC4gfz#q}q5KL8!Bk;~Bp&qO{y=&1}~Av=a(laCMX!f&|S(~2di zLw$9zJ4yy8V++u9m*uUoXa;0Tf?~WHzaQI^3FAtN^=BI6mM?N++#5&m#<62nk>)%G z#43XS=$rpXWztR-I#mRj8I~P4S0_T`Hi|VgZn#OowKTnrAgA?1Ip052Ky^IDGQa8m z7K0cDY!e9jws_$Aax)*;1d2Np0m^WlbOzEB2`;yL8*=DZ?${O+39>V_a~m%9g~lW< zK;EU+(|z0$J(3CX@hE*ZZ;=l-k}0Z@6bU~pjs==R@rFrlOOdvQg_WrUUvlr|90zfDVi5 zU>Mj=@wJf2#S2Ud3kewnnL6I8S$>oW3mFviABh^S4|2xq)dVYV=swF7$ysp8B)FQt z+d7~+i-BJ<37UM?>7ISu8FF_}w4jxsv!&4;R%B6}a<-@RoI?%^tyu(li6=Bx*6|RK zP0_T)iks)C4cz6lKzXjk>nkPf%b{43ELyWtox#AGT!P1j#U+^=@)+pmU~2BmS)OAo F^M9FH0rda? diff --git a/tests/ref_hod/Mini_N64_L32/z0.000/halos_xcom_2_seed600_abacushod_oldfenv_MT_new.h5 b/tests/ref_hod/Mini_N64_L32/z0.000/halos_xcom_2_seed600_abacushod_oldfenv_MT_new.h5 index af4da546a2eba6ae2b8c3a79df89a7fdfa178ca3..5c6b41d9431208ebaced91694578c6cf4cf6e464 100644 GIT binary patch delta 4852 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 delta 1201 zcmWO5dsGZq90%}e+Pb&n)pJTwrgvj1DWj%|tELyKX=P_nNYTr^c|PVN2g`}yPk^ZS19k2Pkew$=Gc-NWh? z%_t;);s~oP#RET6h2<`*dagTU zO|hqa{kipaz8o3_ys~0`^OVMMP}@+va->zO=}95bFL2#qr9yT*l|z9o#RF=q9kI>H z1Z?amYMI{HKNgt<=j<51KeD#dTdO0m%${QQt4>*SAe+Nq_7qjUC9;BFvY^6&A?4PR zZ$7S$0J)5zC`Z$@hR^-ss*K^Vc8k>U!&(lhjuclppBT2w&*bo4K!2rLmasmaz}HR` zlX8Ww^6?4+!80k|U#^7yem#d?fwrvPz{4++2vBE=#!RZAV-;Co<-$;>t;43ipbR)I zva#}JW37cNM9pI8zl4n~J`n-%MC702MsCObu7|SO3^P+@r@gxk0T)+_MrT}}72*<8>WJ%AHxpE)1J0V;yGONqxg1w z`<&6HbsW|yD9TLAdC-}ug^vn`61obry?PCBWG=(|J2scnkq81RrD&tNIOzU6J%RfI zMek-h%^wxjZ1Ja9aWijjZhbU?X#o@s>CJCMx43{YfZ?u|H(eWg7ITOVq}Y1f%Ymiy zM1jMB6unF~u3&2&Vb45<%9;(=YR)CW>>!3;IMrm|vrZ(?79_@yr}G%f+|I!;pW@(a zNvz7K=I~bF4h2&jTYT@;!_$!j0z)X4^;#hPzH|;fArvW}UUy!)D;KgC zFzi?mjJ+!}2w18pIvP6qM|WNvoKi8Yku>cYZ(L1)ETq_WipzJC;iBG00<1G+O42E@ zvXW4WeyUrQGcV>dkcBZ+sysjNp*avtBA=BwM-3a+fKJU&N5K16Ue6c6KWc_`cAa|- zG>yQQ;S`r(d2QlJ1p!|T#oD2?S);vTH8(UA?Ob}t!INx-^azGc{^s4)D?&L;Mo?VV zH22%F>7uP;i^LCAABr~fB^<&QQyh}7s(t>|W)6J=4(v29I3Jn<&mtMlnE`jp8pItdqA0$5VQK-nT8cID!nTRwU=CLWe2>Nq-ny#euqK+~XFeCQZj*2VV*-C4Elg;Aw46gj48_LD Kl&YdS1OFeA-s<-N diff --git a/tests/ref_hod/Mini_N64_L32/z0.000/particles_xcom_0_seed600_abacushod_oldfenv_MT_new.h5 b/tests/ref_hod/Mini_N64_L32/z0.000/particles_xcom_0_seed600_abacushod_oldfenv_MT_new.h5 index 96b02cd6b6786da53767cc48ffde213768f3ad89..dc3b75db6dca7cce18549f63f28f26cfdc3798e9 100644 GIT binary patch delta 3070 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 U7zXYw_sG1j#r@PD|FyLK5A^a~hX4Qo delta 3070 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 diff --git a/tests/ref_hod/Mini_N64_L32/z0.000/particles_xcom_2_seed600_abacushod_oldfenv_MT_new.h5 b/tests/ref_hod/Mini_N64_L32/z0.000/particles_xcom_2_seed600_abacushod_oldfenv_MT_new.h5 index 022057fddafd709b414c1c3a547524bc4347e913..089212e3fc6c343efc0e477f4fbb202748d2015e 100644 GIT binary patch delta 1677 zcmXZcc~DbF9KdlXCHq9M%3+9{Y9w+*L5+cy6!0KQtv4id}s2K`R&`c$!XTfY1T#b zcy#Vc(k{W>E{GkEQA@NnJJ(YK3Sw^Q2`@>f0r(Rzvda-g=3gR`PG4-b&D1h&Z(Y){8CfByBKt{a8XfrdB zp#mlgGvdar4Ph;Y6qXn*dNk&QIH4F!ER0^QYskseX+Sgyqx26}#icm3fs*(qIqA8;Gb>`J6-IW?nzUQHUZnJ@}9j*i1(yXcWc=)&dL^0cw&_C?-Ry}?t8%Z z!l<&m^kR^c0%XJsIDOp5l@EdGjgfy}O;Dyv4XMQ3?cR?2zSV;0iO%alPQ1bY@(B2L0B0&jNxGN8869mPCANy_ z;G9~L0EmszT*JCe<7GV{A)Ymw=a=pG9CU0^?_(QM)yYAGTan8P!bPccbOWcSAfu$tWOPYo}kYJIdP5eNWAOom%#DEsMYk} z<+VxVkr0<~?TvXCdja`lbmO0mw3W0AB*d{d23Q_iE$E0N-PZ>Wm8c*#0Hf+W=Ikv; z^`Ic8KU(U{*OURDi>chK+PFm)O11 zEAJ`jh>IUO(?z%R5IY+)CKw_o%7USKwiwyZV%a8CYk@z9?4B1Yg?36A$cX1Vh|E`jB<=0mPg-5f@9T>VCajvCqVYiqwCzPfVyV@4XTYJnsUO-bT zqPOk2ZP#w@WC4w~ir70h*|mUDfYJ0hO{0OOau9xsQMgKPxa3#?a^lkHP@4~@H326K zqlfvp(?LH7(lE@35k{@~JOCKsVkFb&$rg-#36gN~7ApLro;bFHj<`Yd1+Oiq17agE zqmDOMXI~E05n|-m^doCS(sSU?BZtLURRB~}fsApFv>GC+E;`bx-+V1Edm% z8}~oTdvXp;#0M60Uqx}$AXrBDLe#>);TSz1CVzeQeSqk!n zxm`6a!6H*g{`@|u6+H5B%Olvri^himzu5|9v6R)QVBMy6Xfb()a&u32Ii6l>cY RmT~^wRd(wkZ4_ALMa delta 1677 zcmXYydsK{R9LFo^c{^v$*_3plgf1IW2~(Ps6~nQ+-c)9@v6H1aPq7L|=YS5F>QgM}$2 zqcwj_Uh8auc;q>K>S@iBT9`nN{TO;g`K$>fW|V{+Epa$f-3Kb4z8_${dQ%30p3!@J%kTOtEE|_J-2nJI@&TLkQLp*UPun5e5nEwACoqm`!NQ4>=!o!L=i@O8@*#I+as10Jm_Tk7 z-dQZ8Lm>H@lHJ0)VKd9IQOFz147_T#_kz%w5<}N_fqP6epgFG%?GE2*owOR zx;vU~NJF-sjO;zUUkhXrB{^b8k=f1?h(Wf~g|1jIlm$BE=})r9&-Q6Sw3w2gx5zJu zqqI`^U+ssD|a;Aq~qLfDNB;vJ(J&`RYJ^CT)w`+LMv?% z=#Z-$_Lta56d>}TMk3q!@sn*(=@CKJXH=U?CHcT#M#Y#VZTqaghGNo?D4 zYLt-TR$L?l+42ZdYJPaSSqp|*j>VYepK8ccfn)_Gjj;(yI|84A3fVu;WqzAt0EB$X zd{;lv9#o;8O2cOvL%(ff>wcNqL_bfKX|83H#&ZUy(tLJLkC2i}FQ?LYvCQ|!Tnf5# zhd56{KUBV8;_xYMK4m4#)b!jAkNZKxO-G@hP!;z3nRRilMsEVE*y0zhoU`66vxU7^ zw>9$18KR%+7&8;J)pPT1f&g;*{%GSq?v_HP04q%_O(CI$n>O)bnXuSzf;(X9Y@|Lc znOyvF^^&{}Q2AhOK7_n24DANtDoV81Q{!5q+CYJvl#}7u=2{6(zLearh;+CX_z=>3 zsnK!w8D`rCz{oFxoEbl}J<+rWV*DrxN?CUL?YtJyAz%FPV6rHrA4IFEk@>C4w!$W; zTpdB=?}lBY^zbwN4JEx7O-1r6gOH7!-sqXB4j%@KHF%LCL;F1f>LDI^e8w9+@7xBM zK$cFccMEOp0*OC