Skip to main content

Package to calculate cosmic variance in rectangular pencil-beam surveys

Project description

Package to calculate cosmic variance in pencil-beam surveys

https://img.shields.io/pypi/v/cosmic_variance.svg

Python package based on the IDL code released with the Cosmic Variance Cookbook of Moster et al. (2010). The code was written for https://arxiv.org/pdf/2403.00050.pdf, so please cite this paper if you use this code.

The code is based on galaxy stellar mass bins (as described in https://arxiv.org/pdf/1001.1737.pdf), scaled to dark matter cosmic variance (as described in https://arxiv.org/pdf/astro-ph/0109130.pdf).

This is significantly more useful than dark matter - only variance, since the empirical galaxy variance is significantly higher.

Free software: MIT license

Install and Use

To install the package, simply run:

pip install cosmic-variance

Then in your script/notebook, import the package as:

import cosmic_variance as cv

The main use of the package is through the get_cv function, which takes in a rectangular survey geometry with side lengths side1 and side2 (in degrees), and an array of redshift bin edges, and returns a pandas dataframe with the cosmic variance for 0.5 dex galaxy stellar mass bins for each redshift bin.

import cosmic_variance as cv
import numpy as np
# Example of using the main function, get_cv to calculate
# cosmic variance for a single JWST pointing

#### these arguments are required ####
side1 = 2.2/60. # /60 to convert from arcmin to degrees
side2 = 2*2.2/60. # /60 to convert from arcmin to degrees
zarray = np.array([7,8,9,11,13]) # redshift bin edges, if dz is given, this array will be the center of the redshift bins

#### these arguments are optional ####
name = 'JWST' # name of the survey, if provided, the output file will be saved as dfs/{name}.csv along with a meta file.
# Default is None, in which case the output will not be saved

acc = 'low' # accuracy of the calculation, 'low' or 'high, low is default, faster and sufficient for almost all applications

verbose = False # if True, will print out the progress of the calculation, default is False

#If you want to use a different cosmology, you can specify it by the following in the get_cv call
# OmegaM = 0.308, OmegaL = 0.692, OmegaBaryon = 0.022/(0.678)**2 sigma8 = 0.82, ns = 0.96, h = 0.678

cv_df = cv.get_cv(side1, side2, zarray, name = name, acc=acc, verbose = verbose)

This will calculate the cosmic variance for a 2.2 arcmin x 4.4 arcmin survey in redshifts bin [7, 8], [8,9], [9,11], [11,13] and save the output.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cosmic_variance-0.1.6.tar.gz (16.0 kB view details)

Uploaded Source

Built Distribution

cosmic_variance-0.1.6-py2.py3-none-any.whl (11.1 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file cosmic_variance-0.1.6.tar.gz.

File metadata

  • Download URL: cosmic_variance-0.1.6.tar.gz
  • Upload date:
  • Size: 16.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.8

File hashes

Hashes for cosmic_variance-0.1.6.tar.gz
Algorithm Hash digest
SHA256 1387b7a099f06ec977eed91554610044582ed98ccb95f81cdf07e30086518436
MD5 81a72f027d5e5aae2fa553e8f0372b6f
BLAKE2b-256 144ffa96fd7b5559b5f212ad9365993dab81aecc331534f7ea4b4ea8dd7ad746

See more details on using hashes here.

File details

Details for the file cosmic_variance-0.1.6-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for cosmic_variance-0.1.6-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 309fb4f8720e65571c805d920fc60ac68849c6d8670fc799e9f9a381e0ef9b4d
MD5 b8acd3277e9a5118b8580f447fcf117e
BLAKE2b-256 7f603eb6cd69f4dffb7c5cc53aa01c0ae93e5e5c7324f9faa4a51b52e121a84c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page