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.
- Clone the repository
- Create the conda environment with
conda env create --file environment.yml - Activate the environment with
conda activate tjpcov - Run
pip install -e . - 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 tjpcovwill 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[clusters]'will install tjpcov, the minimal dependencies and the dependencies needed for the cluster covariances (crow).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):
- Google-style docstrings
- Black code style (with 79 characters line-width)
- PEP8 except for E203 (for better compatibility with black)
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.
Metadata
Release files for tjpcov 0.6.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| tjpcov-0.6.0.tar.gz | 14.0 MB | Without provenance | Details for tjpcov-0.6.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| tjpcov-0.6.0-py3-none-any.whl | Python 3 | none | any | Details for tjpcov-0.6.0-py3-none-any.whl |
Total release size: 14.0 MB
Release files / tjpcov-0.6.0.tar.gz
| Download URL | tjpcov-0.6.0.tar.gz |
|---|---|
| Size | 14.0 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
03eb5485d41667690bf52252e83cb09a3cac15a5ac6afc6f95cc88559daa5dfe
|
|
BLAKE2b-256 checksum How to use checksums |
cc1c1a1dd4b95b86e312906cc1d133432898c1934d1023614117667251649b5d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Release files / tjpcov-0.6.0-py3-none-any.whl
| Download URL | tjpcov-0.6.0-py3-none-any.whl |
|---|---|
| Size | 53.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c0fab7393932f5dd9291400b5aeb42aa63758294e4e976ff5b271ab4b7ccd35a
|
|
BLAKE2b-256 checksum How to use checksums |
a4da556eeaeb20ed0b967c886fe41471f5f0239517587942758d7a65ca95d7dd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Security for tjpcov 0.6.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.