with shot noise, window convolution and the integral constraint taken
into account [1][2]; here \(f(z)\) is the linear growth rate,
\(b(z, k) = b_1(z) + f_\textrm{NL} \Delta b(k, z)\) is the
scale-dependent linear bias including the modification \(\Delta b\)
due to local primordial non-Gaussianity \(f_\textrm{NL}\) (see
scale_dependence), and \(P_{\textrm{m}}\)
is the matter power spectrum.
where \(*\) denotes quantities computed at the fiducial epoch
\(z_*\), \(\kappa\) denotes the normalisation coefficients (see
discretisation), \(\bar{n}\) is the mean
number density and
\(j_\mu(r) \equiv j_{\ell_\mu}(k_{\ell_\mu n_\mu} r)\).
Power spectrum multipoles predicted for a given cosmological model
and survey specifications.
Parameters:
wavenumbers (float, array_like) – Wavenumbers at which the model is evaluated.
redshift (float) – Redshift at which the model is evaluated.
cosmo (nbodykit.cosmology.cosmology.Cosmologyor None, optional) – Baseline cosmological model used to produce the transfer function
and power spectrum and to compute the linear growth rate.
This can be subsequently updated when calling
convolved_power_multipoles(). If None (default) and not
subsequently updated, primordial non-Gaussianity modifications
cannot be computed.
power_spectrum (callable or None, optional) – Baseline linear matter power spectrum model at redshift.
Ignored when cosmo is provided. This cannot be None (default)
unless it is subsequently updated when calling
convolved_power_multipoles().
growth_rate (float or None, optional) – Baseline linear growth rate at redshift. If None (default),
this is set by cosmo if it is provided; otherwise this is set
to 0. This can be subsequently updated when calling
two_point_correlator() or correlator_matrix().
mask_multipoles (numpy.ndarrayor None, optional) – Survey mask multipoles given at sampled separations (default
is None). Orders and sampled separations must be sorted.
window_multipoles (CartesianArrayor None, optional) – Survey window multipoles given at sampled wavenumbers (default
is None). If provided, integral constraint corrections
are applied. Orders and sampled wavenumbers must be sorted.
Variables:
mask_multipoles (numpy.ndarray or None) – Survey mask multipoles given at sampled separations.
window_multipoles (CartesianArray or None) – Survey window multipoles given at sampled wavenumbers.
orders (list of int) – Orders of the power spectrum multipoles. Values only allowed
from the set {0, 2, 4}.
b_1 (float or None, optional) – Scale-independent linear bias at input redshift. If None
(default), no tracer bias is assumed relative to the matter
power spectrum.
f_nl (float or None, optional) – Local primordial non-Gaussianity (default is None).
nbar (float or None, optional) – Mean particle number density (in cubic \(h\)/Mpc). If
None (default), shot noise is neglected.
contrast (float or None, optional) – If not None (default), this adds additional shot noise
1/(contrast*nbar) from a FKP-style random catalogue.
tracer_p (float, optional) – Tracer-dependent parameter for bias modulation by f_nl
(default is 1.).
update_model_kwargs (dict or None, optional) – Parameters cosmo, power_spectrum and growth_rate passed
as keyword arguments to update the baseline cosmological model.
Returns:
convolved_power – Convolved power spectrum multipoles.
Spherical two-point correlator predicted for a given cosmological
model and survey specifications.
Notes
Summation is performed over spherical modes to compute the correlator
model. Owing to mode couplings, sums need to be truncated at higher
mode wavenumbers than wavenumbers under consideration to ensure
convergence. We suggest the user trial discrete spectra with different
upper wavenumber cutoffs for the couplings and use
radialised_power() to gauge convergence. In the future,
an automated facility for this purpose may be provided.
Parameters:
disc (DiscreteSpectrum) – Discrete spectrum associated with the correlator model.
redshift (float) – Redshift at which the model is evaluated.
cosmo (nbodykit.cosmology.cosmology.Cosmologyor None, optional) – Baseline cosmological model used to produce the transfer function
(and the power spectrum and linear growth rate if these are not
set but required in model evaluation). This can be subsequently
updated when calling two_point_correlator()
or correlator_matrix(). If None (default) and not
subsequently updated, primordial non-Gaussianity modifications
cannot be computed.
power_spectrum (callable or None, optional) – Baseline linear matter power spectrum model at redshift.
Ignored when cosmo is provided; otherwise this cannot be None
(default) unless it is subsequently updated when calling
two_point_correlator() or correlator_matrix().
growth_rate (float or None, optional) – Baseline linear growth rate at redshift. If None (default),
this is set by cosmo (if provided); otherwise this is set
to zero. This can be subsequently updated when calling
two_point_correlator() or correlator_matrix().
couplings (Couplingsor None, optional) – Baseline coupling coefficients consistent with the underlying
cosmological model cosmo. If None (default), this is compiled
from survey_specs and cosmo_specs if either is provided;
otherwise all couplings are assumed to be trivial (i.e. angular
and radial couplings are Kronecker deltas). This can be
subsequently updated when calling two_point_correlator()
or correlator_matrix().
coupling_disc (Couplingsor None, optional) – Discrete spectrum for the baseline coupling coefficients
(default is None). This must be provided if couplings is
None and needs to be compiled. To ensure sum convergence in the
correlator model, the upper wavenumber cutoff for this spectrum
may need to be higher than that of the correlator model,
i.e. disc.
survey_specs (dict{str: callable or None} or None, optional) – Survey specification functions to be passed as survey_specs to
Couplings when couplings are
compiled. Also used in shot noise calculations.
cosmo_specs (dict{str: callable, bool or None} or None, optional) – Baseline cosmological specification functions to be passed as
cosmo_specs to Couplings
when couplings are compiled. If not None (default), it must be
a dictionary holding keys listed in Couplings:
if callable values are passed to the keys 'chi_of_z',
'clustering_evolution', 'growth_evolution' or
'differential_AP_distortion', they should be consistent with
the current cosmo; otherwise True can be passed here and
their values are then derived from cosmo (which must then be
set), or unspecified keys assume None values; also note some
keys are linked and values must be simultaneously provided. This
can be subsequently updated when calling
two_point_correlator() or correlator_matrix().
ini_shot_noise (bool, optional) – If True (default), shot noise integrals are evaluated upon
initialisation.
comm (mpi4py.MPI.Commor None, optional) – MPI communicator. If None (default), no multiprocessing
is invoked.
Compute two-point correlator for given triplet indices.
Parameters:
mu, nu (tuple(int, int, int)) – Coefficient triplet index.
b_1 (float) – Scale-independent linear bias at input redshift.
f_nl (float or None, optional) – Local primordial non-Gaussianity (default is None).
nbar (float or None, optional) – Mean particle number density (in cubic \(h\)/Mpc). If
None (default), shot noise is neglected.
contrast (float or None, optional) – If not None (default), this adds additional shot noise
1/(contrast*nbar) from a FKP-style random catalogue.
tracer_p (float, optional) – Tracer-dependent parameter for bias modulation by f_nl
(default is 1.).
update_model_kwargs (dict or None, optional) – Parameters cosmo, power_spectrum, growth_rate and
cosmo_specs passed as keyword arguments to update the
baseline cosmological model. If cosmo_specs is passed
(including None values), radial and RSD couplings will be
updated.
Returns:
Spherical Fourier 2-point function value for given triplet
indices. If cosmo_specs is passed, radial and RSD couplings
will be updated.
Compute two-point correlator matrix for some vetorisation of all
spectrum modes.
Parameters:
pivot ({‘natural’, ‘spectral’}) – Pivot order for vectorisation.
b_1 (float) – Scale-independent linear bias at input redshift.
f_nl (float or None, optional) – Local primordial non-Gaussianity (default is None).
nbar (float or None, optional) – Mean particle number density (in cubic \(h\)/Mpc). If
None (default), shot noise is neglected.
contrast (float or None, optional) – If not None (default), this adds additional shot noise
1/(contrast*nbar) from a FKP-style random catalogue.
tracer_p (float, optional) – Tracer-dependent parameter for bias modulation by f_nl
(default is 1.).
diagonal (bool, optional) – If True (default is False), return only the diagonal
matrix part.
shot_noise_only (bool, optional) – If True (default is False), return only the shot noise
correlator matrix.
update_model_kwargs (dict or None, optional) – Parameters cosmo, power_spectrum, growth_rate and
cosmo_specs passed as keyword arguments to update the
baseline cosmological model. If cosmo_specs is passed
(including None values), radial and RSD couplings will be
updated.
report_progress (bool, optional) – If True (default is False), progress status will be
reported.
Returns:
Two-point correlator matrix vectorised by the given pivot.
This relies on correlator_matrix() with diagonal=True.
Results are only meaningful in the radialisation limit when
all coupling coefficients are trivial (i.e. Kronecker deltas) so
that spherical modes are mutually independent [3]. Mode power is
averaged over equivalent spherical orders and suitably normalised
so that it matches the Cartesian power spectrum for a full-sky
statistically isotripoc map.
Parameters:
b_1 (float) – Scale-independent linear bias at input redshift.
f_nl (float or None, optional) – Local primordial non-Gaussianity (default is None).
nbar (float or None, optional) – Mean particle number density (in cubic \(h\)/Mpc). If
None (default), shot noise is neglected.
contrast (float or None, optional) – If not None (default), this adds additional shot noise
1/(contrast*nbar) from a FKP-style random catalogue.
tracer_p (float, optional) – Tracer-dependent parameter for bias modulation by f_nl
(default is 1.).
shot_noise_only (bool, optional) – If True (default is False), return only the shot noise
power.
Returns:
Radialised spherical mode powers at wavenumbers with mode
indices.