chippr enables simulation of surveys of photo-z interim posteriors.

The discrete Class

class discrete.discrete(bin_ends, weights)[source]
evaluate(xs)[source]

Function to evaluate the discrete probability distribution at many points

Parameters:xs (ndarray, float) – values at which to evaluate discrete probability distribution
Returns:ps – values of discrete probability distribution at xs
Return type:ndarray, float
evaluate_one(x)[source]

Function to evaluate the discrete probability distribution at one point

Parameters:x (float) – value at which to evaluate discrete probability distribution
Returns:p – value of discrete probability distribution at x
Return type:float
pdf(xs)[source]
sample(n_samps)[source]

Function to take samples from discrete probability distribution

Parameters:n_samps (int) – number of samples to take
Returns:xs – array of points sampled from the discrete probability distribution
Return type:ndarray, float
sample_one()[source]

Function to sample a single value from discrete probability distribution

Returns:x – a single point sampled from the discrete probability distribution
Return type:float

The gauss Class

class gauss.gauss(mean, var, bounds=None)[source]
evaluate(xs)[source]

Function to evaluate univariate Gaussian probability distribution at multiple points

Parameters:xs (numpy.ndarray, float) – input values at which to evaluate probability
Returns:ps – output probabilities
Return type:ndarray, float
evaluate_one(x)[source]

Function to evaluate Gaussian probability distribution once

Parameters:x (float) – value at which to evaluate Gaussian probability distribution
Returns:p – probability associated with x
Return type:float
invert_var()[source]

Function to invert variance

norm_var()[source]

Function to create standard deviation from variance

pdf(xs)[source]
sample(n_samps)[source]

Function to sample univariate Gaussian probability distribution

Parameters:n_samps (positive int) – number of samples to take
Returns:xs – array of n_samps samples from Gaussian probability distribution
Return type:ndarray, float
sample_one()[source]

Function to take one sample from univariate Gaussian probability distribution

Returns:x – single sample from Gaussian probability distribution
Return type:float

The gmix Class

class gmix.gmix(amps, funcs, limits=(0.001, 3.501))[source]
evaluate(xs)[source]

Function to evaluate the Gaussian mixture probability distribution at many points

Parameters:xs (ndarray, float) – values at which to evaluate Gaussian mixture probability distribution
Returns:ps – values of Gaussian mixture probability distribution at xs
Return type:ndarray, float
evaluate_one(x)[source]

Function to evaluate Gaussian mixture once

Parameters:x (float) – value at which to evaluate Gaussian mixture
Returns:p – probability associated with x
Return type:float
pdf(xs)[source]
sample(n_samps)[source]

Function to take samples from Gaussian mixture probability distribution

Parameters:n_samps (int) – number of samples to take
Returns:xs – array of points sampled from the Gaussian mixture probability distribution
Return type:ndarray, float
sample_one()[source]

Function to sample a single value from Gaussian mixture probability distribution

Returns:x – a single point sampled from the Gaussian mixture probability distribution
Return type:float

The mvn Class

class mvn.mvn(mean, var)[source]
evaluate(zs)[source]

Function to evaluate multivariate Gaussian probability distribution at multiple points

Parameters:zs (ndarray, float) – input vectors at which to evaluate probability
Returns:ps – output probabilities
Return type:ndarray, float
evaluate_one(z)[source]

Function to evaluate multivariate Gaussian probability distribution once

Parameters:z (numpy.ndarray, float) – value at which to evaluate multivariate Gaussian probability distribution
Returns:p – probability associated with z
Return type:float
invert_var()[source]

Function to invert covariance matrix

Returns:inv – inverse variance
Return type:numpy.ndarray, float
norm_var()[source]

Function to normalize covariance matrix

Returns:det – determinant of variance
Return type:float
pdf(points)[source]
sample(n_samps)[source]

Function to sample from multivariate Gaussian probability distribution

Parameters:n_samps (positive int) – number of samples to take
Returns:zs – array of n_samps samples from multivariate Gaussian probability distribution
Return type:ndarray, float
sample_one()[source]

Function to take one sample from multivariate Gaussian probability distribution

Returns:z – single sample from multivariate Gaussian probability distribution
Return type:numpy.ndarray, float

The catalog Class

class catalog.catalog(params={}, vb=True, loc='.', prepend='')[source]
coarsify(fine)[source]

Function to bin function evaluated on fine grid

Parameters:fine (numpy.ndarray, float) – matrix of probability values of function on fine grid for N galaxies
Returns:coarse – vector of binned values of function
Return type:numpy.ndarray, float
create(truth, int_pr, N=4, vb=True)[source]

Function creating a catalog of interim posterior probability distributions, will split this up into helper functions

Parameters:
  • truth (chippr.gmix object or chippr.gauss object or chippr.discrete) –
  • object – true redshift distribution object
  • int_pr (chippr.gmix object or chippr.gauss object or chippr.discrete) –
  • object – interim prior distribution object
  • vb (boolean, optional) – True to print progress messages to stdout, False to suppress
Returns:

self.cat – dictionary comprising catalog information

Return type:

dict

evaluate_lfs(pspace, vb=True)[source]

Evaluates likelihoods based on observed sample values

Parameters:
  • pspace (chippr.gauss or chippr.gmix or chippr.gamma or chippr.multi object) – the probability function to evaluate
  • vb (boolean) – print progress to stdout?
Returns:

lfs – array of likelihood values for each item as a function of fine binning

Return type:

numpy.ndarray, float

make_probs(vb=True)[source]

Makes the continuous 2D probability distribution over z_spec, z_phot

Parameters:vb (boolean) – print progress to stdout?

Notes

TO DO: only one outlier population at a time for now, will enable more TO DO: also doesn’t yet include perpendicular features from passing between filter curves, should add that

proc_bins(vb=True)[source]

Function to process binning

Parameters:vb (boolean, optional) – True to print progress messages to stdout, False to suppress
read(loc='data', style='.txt')[source]

Function to read in catalog file

Parameters:loc (string, optional) – location of catalog file
sample(N, vb=False)[source]

Samples (z_spec, z_phot) pairs

Parameters:
  • N (int) – number of samples to take
  • vb (boolean) – print progress to stdout?
Returns:

samps – (z_spec, z_phot) pairs

Return type:

numpy.ndarray, float

write(loc='data', style='.txt')[source]

Function to write newly-created catalog to file

Parameters:
  • loc (string, optional) – file name into which to save catalog
  • style (string, optional) – file format in which to save the catalog