Skip to content

Commit 80c1594

Browse files
authored
Merge pull request #1140 from astropy/np_isin
np.in1d --> np.isin
2 parents cba6688 + 124aa8f commit 80c1594

24 files changed

Lines changed: 654 additions & 491 deletions

CHANGES.rst

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,28 @@
1+
0.9.4 (unreleased)
2+
------------------
3+
4+
15
0.9.3 (2025-02-10)
26
------------------
3-
7+
48
- Compatibility with Numpy 2.0 (https://github.com/astropy/halotools/pull/1114)
59

610

711
0.9.2 (2024-12-02)
812
------------------
9-
13+
1014
- Compatibility with Astropy 7 (https://github.com/astropy/halotools/pull/1107)
1115

1216

1317
0.9.1 (2024-09-11)
1418
------------------
15-
19+
1620
- Repackage halotools according to pyproject.toml (https://github.com/astropy/halotools/pull/1093)
1721

1822

1923
0.9.0 (2024-09-06)
2024
------------------
21-
25+
2226
- Add models and mock observations of intrinsic alignments (https://github.com/astropy/halotools/pull/1056)
2327

2428

halotools/empirical_models/phase_space_models/analytic_models/profile_model_template.py

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,17 +3,17 @@
33
a container class for the distribution of mass and/or galaxies
44
within dark matter halos.
55
"""
6-
from __future__ import division, print_function, absolute_import, unicode_literals
6+
7+
from __future__ import absolute_import, division, print_function, unicode_literals
78

89
import numpy as np
9-
from scipy.integrate import quad as quad_integration
10-
from scipy.optimize import minimize as scipy_minimize
1110
from astropy import units as u
1211
from astropy.constants import G
13-
14-
from . import halo_boundary_functions
12+
from scipy.integrate import quad as quad_integration
13+
from scipy.optimize import minimize as scipy_minimize
1514

1615
from ... import model_defaults
16+
from . import halo_boundary_functions
1717

1818
newtonG = G.to(u.km * u.km * u.Mpc / (u.Msun * u.s * u.s))
1919

@@ -223,17 +223,20 @@ def cumulative_mass_PDF(self, scaled_radius, *prof_params):
223223
x = np.atleast_1d(scaled_radius).astype(np.float64)
224224
enclosed_mass = np.zeros_like(x)
225225

226+
def _scalar_integrand(*args, **kwargs):
227+
return self._enclosed_dimensionless_mass_integrand(*args, **kwargs)[0]
228+
226229
for i in range(len(x)):
227230
enclosed_mass[i], _ = quad_integration(
228-
self._enclosed_dimensionless_mass_integrand,
231+
_scalar_integrand,
229232
0.0,
230233
x[i],
231234
epsrel=1e-5,
232235
args=prof_params,
233236
)
234237

235238
total, _ = quad_integration(
236-
self._enclosed_dimensionless_mass_integrand,
239+
_scalar_integrand,
237240
0.0,
238241
1.0,
239242
epsrel=1e-5,

halotools/empirical_models/phase_space_models/analytic_models/satellites/nfw/kernels/biased_isotropic_velocity.py

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
1-
"""
2-
"""
1+
""" """
2+
33
import numpy as np
44
from scipy.integrate import quad as quad_integration
55

66
from .mass_profile import _g_integral
77

8-
98
__all__ = ("dimensionless_radial_velocity_dispersion",)
109

1110

@@ -58,21 +57,25 @@ def dimensionless_radial_velocity_dispersion(
5857
gal_conc * gal_conc * x * (1.0 + gal_conc * x) ** 2 / _g_integral(halo_conc)
5958
)
6059
extra_args = halo_conc / np.atleast_1d(gal_conc).astype("f4")
60+
assert extra_args.shape == (1,)
61+
extra_args = float(extra_args[0])
6162

6263
lower_limit = gal_conc * x
6364
upper_limit = float("inf")
6465
for i in range(len(x)):
66+
a = lower_limit[i]
67+
b = upper_limit
6568
term1, _ = quad_integration(
6669
_jeans_integrand_term1,
67-
lower_limit[i],
68-
upper_limit,
70+
a,
71+
b,
6972
epsrel=profile_integration_tol,
7073
args=extra_args,
7174
)
7275
term2, _ = quad_integration(
7376
_jeans_integrand_term2,
74-
lower_limit[i],
75-
upper_limit,
77+
a,
78+
b,
7679
epsrel=profile_integration_tol,
7780
args=extra_args,
7881
)

halotools/empirical_models/phase_space_models/analytic_models/satellites/nfw/kernels/mass_profile.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
"""
2-
"""
1+
""" """
2+
33
import numpy as np
44

55
__all__ = ("cumulative_mass_PDF", "dimensionless_mass_density")

halotools/empirical_models/phase_space_models/analytic_models/satellites/nfw/kernels/tests/test_biased_isotropic_velocity.py

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,16 @@
1-
"""
2-
"""
1+
""" """
2+
33
import numpy as np
44
from astropy.utils.data import get_pkg_data_filename
55

6-
from ..unbiased_isotropic_velocity import dimensionless_radial_velocity_dispersion as unbiased_dimless_vel_rad_disp
7-
from ..biased_isotropic_velocity import dimensionless_radial_velocity_dispersion as biased_dimless_vel_rad_disp
8-
6+
from ..biased_isotropic_velocity import (
7+
dimensionless_radial_velocity_dispersion as biased_dimless_vel_rad_disp,
8+
)
9+
from ..unbiased_isotropic_velocity import (
10+
dimensionless_radial_velocity_dispersion as unbiased_dimless_vel_rad_disp,
11+
)
912

10-
__all__ = ('test_unbiased_vel_rad_disp1', )
13+
__all__ = ("test_unbiased_vel_rad_disp1",)
1114

1215

1316
def test_unbiased_vel_rad_disp1():
@@ -25,14 +28,14 @@ def test_unbiased_vel_rad_disp2():
2528
halo_conc = 5
2629
unbiased_result = unbiased_dimless_vel_rad_disp(scaled_radius, halo_conc)
2730

28-
gal_conc = 2*halo_conc
31+
gal_conc = 2 * halo_conc
2932
biased_result = biased_dimless_vel_rad_disp(scaled_radius, halo_conc, gal_conc)
3033
assert not np.allclose(unbiased_result, biased_result)
3134

3235

3336
def test_unbiased_vel_rad_disp_external_ch10_cg5():
3437
halo_conc, gal_conc = 10, 5
35-
fname = get_pkg_data_filename('data/van_den_bosch_nfw_vr_disp_ch10_cg5.dat')
38+
fname = get_pkg_data_filename("data/van_den_bosch_nfw_vr_disp_ch10_cg5.dat")
3639
x = np.loadtxt(fname)
3740
frank_r_by_Rvir = x[:, 1]
3841
frank_dimless_sigma_rad = x[:, 2]
@@ -42,7 +45,7 @@ def test_unbiased_vel_rad_disp_external_ch10_cg5():
4245

4346
def test_unbiased_vel_rad_disp_external_ch5_cg10():
4447
halo_conc, gal_conc = 5, 10
45-
fname = get_pkg_data_filename('data/van_den_bosch_nfw_vr_disp_ch5_cg10.dat')
48+
fname = get_pkg_data_filename("data/van_den_bosch_nfw_vr_disp_ch5_cg10.dat")
4649
x = np.loadtxt(fname)
4750
frank_r_by_Rvir = x[:, 1]
4851
frank_dimless_sigma_rad = x[:, 2]

halotools/empirical_models/phase_space_models/analytic_models/satellites/nfw/kernels/unbiased_isotropic_velocity.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
1-
"""
2-
"""
1+
""" """
2+
33
import numpy as np
44
from scipy.integrate import quad as quad_integration
55

66
from .mass_profile import _g_integral
77

8-
98
__all__ = ("dimensionless_radial_velocity_dispersion",)
109

1110

halotools/empirical_models/phase_space_models/analytic_models/satellites/nfw/nfw_phase_space.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
"""
2-
"""
1+
""" """
2+
33
from __future__ import absolute_import, division, print_function
44

55
import numpy as np

halotools/empirical_models/phase_space_models/analytic_models/satellites/nfw/nfw_profile.py

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,20 +5,20 @@
55
Navarry, Frenk and White (1995), `arXiv:9508025 <http://arxiv.org/abs/astro-ph/9508025/>`_.
66
a sub-class of `~halotools.empirical_models.AnalyticDensityProf`.
77
"""
8-
from __future__ import division, print_function, absolute_import, unicode_literals
98

10-
import numpy as np
11-
12-
from .conc_mass import direct_from_halo_catalog, dutton_maccio14
13-
from .kernels import nfw_dimensionless_mass_density, nfw_cumulative_mass_PDF
14-
from .kernels import standalone_mc_generate_nfw_radial_positions
9+
from __future__ import absolute_import, division, print_function, unicode_literals
1510

16-
from ...profile_model_template import AnalyticDensityProf
17-
18-
from ..... import model_defaults
11+
import numpy as np
1912

2013
from ......sim_manager import sim_defaults
21-
14+
from ..... import model_defaults
15+
from ...profile_model_template import AnalyticDensityProf
16+
from .conc_mass import direct_from_halo_catalog, dutton_maccio14
17+
from .kernels import (
18+
nfw_cumulative_mass_PDF,
19+
nfw_dimensionless_mass_density,
20+
standalone_mc_generate_nfw_radial_positions,
21+
)
2222

2323
__all__ = ("NFWProfile",)
2424
__author__ = ("Andrew Hearin", "Benedikt Diemer")
@@ -44,7 +44,7 @@ def __init__(
4444
conc_mass_model=model_defaults.conc_mass_model,
4545
concentration_key=model_defaults.concentration_key,
4646
halo_boundary_key=None,
47-
**kwargs
47+
**kwargs,
4848
):
4949
r"""
5050
Parameters

0 commit comments

Comments
 (0)