pycbc.population package

Submodules

pycbc.population.rates_functions module

A set of helper functions for evaluating rates.

pycbc.population.rates_functions.draw_flat_samples(**kwargs)[source]

Draw samples for uniform in mass

Parameters:**kwargs (string) – Keyword arguments as model parameters and number of samples
Returns:
  • array – The first mass
  • array – The second mass
pycbc.population.rates_functions.draw_imf_samples(**kwargs)[source]

Draw samples for power-law model

Parameters:**kwargs (string) – Keyword arguments as model parameters and number of samples
Returns:
  • array – The first mass
  • array – The second mass
pycbc.population.rates_functions.draw_lnm_samples(**kwargs)[source]

Draw samples for uniform-in-log model

Parameters:**kwargs (string) – Keyword arguments as model parameters and number of samples
Returns:
  • array – The first mass
  • array – The second mass
pycbc.population.rates_functions.fgmc(log_fg_ratios, mu_log_vt, sigma_log_vt, Rf, maxfg)[source]

Function to fit the likelihood Fixme

pycbc.population.rates_functions.fit(R)[source]

Fit skew - lognormal to the rate samples achived from a prior analysis :param R: Rate samples :type R: array

Returns:
  • ff[0] (float) – The skewness
  • ff[1] (float) – The mean
  • ff[2] (float) – The standard deviation
pycbc.population.rates_functions.log_rho_bg(trigs, bins, counts)[source]

Calculate the log of background fall-off

Parameters:
  • trigs (array) – SNR values of all the triggers
  • bins (string) – bins for histogrammed triggers
  • path (string) – counts for histogrammed triggers
Returns:

Return type:

array

pycbc.population.rates_functions.log_rho_fgmc(t, injstats, bins)[source]
pycbc.population.rates_functions.mchirp_sampler_flat(**kwargs)[source]

Draw chirp mass samples for flat in mass model

Parameters:**kwargs (string) – Keyword arguments as model parameters and number of samples
Returns:mchirp-astro – The chirp mass samples for the population
Return type:array
pycbc.population.rates_functions.mchirp_sampler_imf(**kwargs)[source]

Draw chirp mass samples for power-law model

Parameters:**kwargs (string) – Keyword arguments as model parameters and number of samples
Returns:mchirp-astro – The chirp mass samples for the population
Return type:array
pycbc.population.rates_functions.mchirp_sampler_lnm(**kwargs)[source]

Draw chirp mass samples for uniform-in-log model

Parameters:**kwargs (string) – Keyword arguments as model parameters and number of samples
Returns:mchirp-astro – The chirp mass samples for the population
Return type:array
pycbc.population.rates_functions.prob_flat(m1, m2, s1z, s2z, **kwargs)[source]

Return probability density for uniform in component mass :param m1: Component masses 1 :type m1: array :param m2: Component masses 2 :type m2: array :param s1z: Aligned spin 1 (not in use currently) :type s1z: array :param s2z: Aligned spin 2 (not in use currently) :param **kwargs: Keyword arguments as model parameters :type **kwargs: string

Returns:p_m1_m2 – the probability density for m1, m2 pair
Return type:array
pycbc.population.rates_functions.prob_imf(m1, m2, s1z, s2z, **kwargs)[source]

Return probability density for power-law :param m1: Component masses 1 :type m1: array :param m2: Component masses 2 :type m2: array :param s1z: Aligned spin 1(Not in use currently) :type s1z: array :param s2z: Aligned spin 2(Not in use currently) :param **kwargs: Keyword arguments as model parameters :type **kwargs: string

Returns:p_m1_m2 – the probability density for m1, m2 pair
Return type:array
pycbc.population.rates_functions.prob_lnm(m1, m2, s1z, s2z, **kwargs)[source]

Return probability density for uniform in log :param m1: Component masses 1 :type m1: array :param m2: Component masses 2 :type m2: array :param s1z: Aligned spin 1(Not in use currently) :type s1z: array :param s2z: Aligned spin 2(Not in use currently) :param **kwargs: Keyword arguments as model parameters :type **kwargs: string

Returns:p_m1_m2 – The probability density for m1, m2 pair
Return type:array
pycbc.population.rates_functions.process_full_data(fname, rhomin, mass1, mass2, lo_mchirp, hi_mchirp)[source]

Read the zero-lag and time-lag triggers identified by templates in a specified range of chirp mass.

Parameters:
  • hdfile – File that stores all the triggers
  • rhomin (float) – Minimum value of SNR threhold (will need including ifar)
  • mass1 (array) – First mass of the waveform in the template bank
  • mass2 (array) – Second mass of the waveform in the template bank
  • lo_mchirp (float) – Minimum chirp mass for the template
  • hi_mchirp (float) – Maximum chirp mass for the template
Returns:

containing foreground triggers and background information

Return type:

dictionary

pycbc.population.rates_functions.save_bkg_falloff(fname_statmap, fname_bank, path, rhomin, lo_mchirp, hi_mchirp)[source]

Read the STATMAP files to derive snr falloff for the background events. Save the output to a txt file Bank file is also provided to restrict triggers to BBH templates.

Parameters:
  • fname_statmap (string) – STATMAP file containing trigger information
  • fname_bank (string) – File name of the template bank
  • path (string) – Destination where txt file is saved
  • rhomin (float) – Minimum value of SNR threhold (will need including ifar)
  • lo_mchirp (float) – Minimum chirp mass for the template
  • hi_mchirp (float) – Maximum chirp mass for template
pycbc.population.rates_functions.skew_lognormal_samples(alpha, mu, sigma, minrp, maxrp)[source]

Returns a large number of Skew lognormal samples :param alpha: Skewness of the distribution :type alpha: float :param mu: Mean of the distribution :type mu: float :param sigma: Scale of the distribution :type sigma: float :param minrp: Minimum value for the samples :type minrp: float :param maxrp: Maximum value for the samples :type maxrp: float

Returns:Rfs – Large number of samples (may need fixing)
Return type:array

pycbc.population.scale_injections module

pycbc.population.scale_injections.astro_redshifts(min_z, max_z, nsamples)[source]
Sample the redshifts for sources, with redshift
independent rate, using standard cosmology
Parameters:
  • min_z (float) – Minimum redshift
  • max_z (float) – Maximum redshift
  • nsamples (int) – Number of samples
Returns:

z_astro – nsamples of redshift, between min_z, max_z, by standard cosmology

Return type:

array

pycbc.population.scale_injections.contracted_dVdc(z)[source]
pycbc.population.scale_injections.dlum_to_z(dl)[source]

Get the redshift for a luminosity distance

Parameters:dl (array) – The array of luminosity distances
Returns:The redshift values corresponding to the luminosity distances
Return type:array
pycbc.population.scale_injections.estimate_vt(injections, mchirp_sampler, model_pdf, **kwargs)[source]

Based on injection strategy and the desired astro model estimate the injected volume. Scale injections and estimate sensitive volume.

Parameters:
  • injections (dictionary) – Dictionary obtained after reading injections from read_injections
  • mchirp_sampler (function) – Sampler for producing chirp mass samples for the astro model.
  • model_pdf (function) – The PDF for astro model in mass1-mass2-spin1z-spin2z space. This is easily extendible to include precession
  • kwargs (key words) – Inputs for thresholds and astrophysical models
Returns:

injection_chunks – The input dictionary with VT and VT error included with the injections

Return type:

dictionary

pycbc.population.scale_injections.inj_distance_pdf(key, distance, low_dist, high_dist, mchirp=1)[source]

Estimate the probability density of the injections for the distance distribution.

Parameters:
  • key (string) – Injections strategy
  • distance (array) – Array of distances
  • low_dist (float) – Lower value of distance used in the injection strategy
  • high_dist (float) – Higher value of distance used in the injection strategy
pycbc.population.scale_injections.inj_mass_pdf(key, mass1, mass2, lomass, himass, lomass_2=0, himass_2=0)[source]

Estimate the probability density based on the injection strategy

Parameters:
  • key (string) – Injection strategy
  • mass1 (array) – First mass of the injections
  • mass2 (array) – Second mass of the injections
  • lomass (float) – Lower value of the mass distributions
  • himass (float) – higher value of the mass distribution
Returns:

pdf – Probability density of the injections

Return type:

array

pycbc.population.scale_injections.inj_spin_pdf(key, high_spin, spinz)[source]
Estimate the probability density of the
injections for the spin distribution.
Parameters:
  • key (string) – Injections strategy
  • high_spin (float) – Maximum spin used in the strategy
  • spinz (array) – Spin of the injections (for one component)
pycbc.population.scale_injections.pdf_z_astro(z, V_min, V_max)[source]

Get the probability density for the rate of events at a redshift assuming standard cosmology

pycbc.population.scale_injections.process_injections(hdffile)[source]

Function to read in the injection file and extract the found injections and all injections

Parameters:hdffile (hdf file) – File for which injections are to be processed
Returns:data – Dictionary containing injection read from the input file
Return type:dictionary
pycbc.population.scale_injections.read_injections(sim_files, m_dist, s_dist, d_dist)[source]

Read all the injections from the files in the provided folder. The files must belong to individual set i.e. no files that combine all the injections in a run. Identify injection strategies and finds parameter boundaries. Collect injection according to GPS.

Parameters:
  • sim_files (list) – List containign names of the simulation files
  • m_dist (list) – The mass distribution used in the simulation runs
  • s_dist (list) – The spin distribution used in the simulation runs
  • d_dist (list) – The distance distribution used in the simulation runs
Returns:

injections – Contains the organized information about the injections

Return type:

dictionary

Module contents