Skip to main content

Covariances for LSST DESC

Project description

Conda Version PyPI version Coverage Status Documentation Status

TJPCov

TJPCov is a general covariance calculator interface to be used within LSST DESC.

Installation

Quickstart

The easiest and recommended way to install TJPCov is to install it via conda:

conda install -c conda-forge tjpcov

Alternatively you may also install tjpcov via PyPi:

pip install tjpcov 

will install TJPCov with minimal dependencies, and

pip install 'tjpcov[full]'

will include all dependencies (for details, see Optional dependencies (PyPi only) section)

NOTE: If you plan to use TJPCov with MPI on NERSC, extra work must be done to get MPI running in your conda environment. See the NERSC docs for how to install MPI there.

Developer Installation

If you wish to contribute to TJPCov, follow the steps below to set up your development environment.

  1. Clone the repository
  2. Create the conda environment with conda env create --file environment.yml
  3. Activate the environment with conda activate tjpcov
  4. Run pip install -e .
  5. Run pytest -vv tests/

Optional dependencies (PyPi only)

Because TJPCov relies on some packages that may not be necessary for every user, we have added different installation options to accommodate different use cases. For example, if a user has no plans to use MPI with TJPCov, they do not need mpi4py. Below we list the different installation options available on PyPi.

  • pip install tjpcov will install tjpcov and the minimal dependencies.
  • pip install tjpcov'[doc]' will install tjpcov, the minimal dependencies and the dependencies needed to build the documentation.
  • pip install 'tjpcov[nmt]' will install tjpcov, the minimal dependencies and the dependencies needed to use NaMaster.
  • pip install 'tjpcov[mpi4py]' will install, the minimal dependencies and the mpi4py library to use MPI parallelization. Does not work on NERSC (see above)
  • pip install 'tjpcov[full]' will install tjpcov and all dependencies

Developer installation (PyPi only)

If you are using PyPi to set up your development environment (we recommend using conda instead), due to a bug in the NaMaster installation, one needs to make sure numpy is installed before trying to install NaMaster. For a fresh install, run python -m pip install . first, and then python -m pip install .\[nmt\]

Planning & development

Ask @felipeaoli or @mattkwiecien for access to the repository and join the #desc-mcp-cov channel on the LSST DESC slack to contribute.

We have adopted the following style convention (which are enforced in each PR):

For a general idea of TJPCov's scientific scope, see also the terms of reference.

Contributing

We use black and flake8 configuration files so that code follows a unified coding style and remains PEP8 compliant.

This means before submitting your PR you must run the following in the root directory:

black .
flake8 .

Furthermore, we are following GitHub's recommendation of using Semantic Versioning in our releases.

Supported Python Versions

TJPCov currently runs on python 3.8, but python 3.9, 3.10 and 3.11 are supported.

TJPCov also has a few specific software versions hardcoded. Please check the pyproject.toml file to see version requirements.

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

tjpcov-0.5.1.tar.gz (14.0 MB view details)

Uploaded Source

Built Distribution

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

tjpcov-0.5.1-py3-none-any.whl (52.3 kB view details)

Uploaded Python 3

File details

Details for the file tjpcov-0.5.1.tar.gz.

File metadata

  • Download URL: tjpcov-0.5.1.tar.gz
  • Upload date:
  • Size: 14.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for tjpcov-0.5.1.tar.gz
Algorithm Hash digest
SHA256 d269c44fd396ff90f9cb42395904231e879838462c8cf622a6b4252ca494b9b6
MD5 f574ccdc847c49f33ad557fd2dd0ea9c
BLAKE2b-256 1bab812ad4aeb6dd34e82087b6b0ae559c03feba952091761815c8d19ec9dc16

See more details on using hashes here.

File details

Details for the file tjpcov-0.5.1-py3-none-any.whl.

File metadata

  • Download URL: tjpcov-0.5.1-py3-none-any.whl
  • Upload date:
  • Size: 52.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for tjpcov-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 55a55c12217ed17356dfe23563a3c2eb239e3c3360f6742ab6e68ae8c362ae25
MD5 ed0432aba4163ae8091a1da89c3eb072
BLAKE2b-256 a6001c0a7b778826f039b19aae184b81cc0c5768dad5db59f6a02a17d3268fb1

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