Skip to main content

Cosmology tools

Project description

Toolscosmo

License GitHub Repository CI Status PyPI version

A Python package for cosmological calculations required to study large-scale structures. Full documentation (with examples, installation instructions and complete module description) can be found at readthedocs.

Note: Some modules in the package are still under active development. Please contact the authors if you encounter any issues.

Package details

The package provides tools to model standard cosmology and its extensions. Currently, Toolscosmo supports the following calculations:

  • Cosmological calculators: Various functions for cosmological calculations and conversions.

  • Matter power spectrum:

    • Interface with Boltzmann solvers (e.g., CLASS and CAMB) to simulate the linear power spectrum.
    • Model the non-linear power spectrum using the halo model.
  • Emulators: Machine learning-based models for:

    • Fast simulation of the linear power spectrum.
  • Halo mass function: Probability distribution function of dark matter halo masses.

For detailed documentation and usage instructions, see the contents page.

Under Development

  • Dark matter merger trees: Analytical merger trees using the extended Press-Schechter formalism.

  • Initial Condition Generator: Lagrangian Perturbation Theory (LPT) based initial condition generator for cosmological numerical simulation frameworks.

INSTALLATION

To install the package from source, one should clone this package running the following::

git clone https://github.com/sambit-giri/toolscosmo.git

To install the package in the standard location, run the following in the root directory::

pip install .

One can also install the latest version using pip by running the following command::

pip install git+https://github.com/sambit-giri/toolscosmo.git

The dependencies should be installed automatically during the installation process. The list of required packages can be found in the pyproject.toml file present in the root directory.

Optional Dependencies

Some features require optional dependencies to be installed manually:

  • classy: Install manually by running pip install classy
  • PyTorch (Hardware Specific):
    • For CUDA 11.8: pip install torch==2.0.1+cu118 torchvision==0.15.2+cu118 torchaudio==2.0.2+cu118 -f https://download.pytorch.org/whl/torch_stable.html
    • For CPU-only: pip install torch torchvision torchaudio

Tests

For testing, one can use pytest. To run all the test script, run the following::

python -m pytest tests

CONTRIBUTING

If you find any bugs or unexpected behavior in the code, please feel free to open a Github issue. The issue page is also good if you seek help or have suggestions for us. For more details, please see here.

CREDIT

This package uses the template provided at https://github.com/sambit-giri/SimplePythonPackageTemplate/ 

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

toolscosmo-0.2.2.tar.gz (864.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

toolscosmo-0.2.2-cp311-cp311-macosx_11_0_arm64.whl (888.1 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

File details

Details for the file toolscosmo-0.2.2.tar.gz.

File metadata

  • Download URL: toolscosmo-0.2.2.tar.gz
  • Upload date:
  • Size: 864.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for toolscosmo-0.2.2.tar.gz
Algorithm Hash digest
SHA256 7efe7f1aed161cd5a9df8655ad9d33635ad4972257025098d46ba38e8b3e39ac
MD5 60b000f136835b6f50787c509c31efa7
BLAKE2b-256 0d8c9831403cbb0a04b3b2a1ef8a707cc4957b6111c500118556e5a5394eb387

See more details on using hashes here.

File details

Details for the file toolscosmo-0.2.2-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for toolscosmo-0.2.2-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 95cd64da8da05e77438db062dc9e6844aa72fdf7efc266f51585d0cd4644d3b5
MD5 4a2f2413f6aa487dde0e9a7fead8e8b5
BLAKE2b-256 1dee9e29e9fc6fd6ca7060a94e7a10dee70d72e5bfb18a7549787771989c535c

See more details on using hashes here.

Supported by

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