Package skytools

SkyTools

This a library of tools for CMB sky data analysis on a sphere. Many of these tools have been ported from the Planck Sky Model.

Installation Instructions

The easiest way to install skytools is with conda:
conda config --add channels conda-forge
conda install skytools

Installing from source:
Install inside a conda environment. The current version targets python version >= 3.9. You also need meson and pkg-config installed in the conda environment for the build backend. All three can be installed by doing conda install <package>.

Following python packages are required for SkyTools to work:
1. astropy
2. healpy (>=1.16.0)
3. numpy
4. scipy
5. joblib

To install download the zip of the project or git clone the project. Unzip the folder if downloaded. Then at the root level of the project (where you find the pyproject.toml file) do pip install . to install to your active conda environment. You can check if the package is installed in the conda environment by doing conda list | grep skytools. Try python -c "import skytools" in the same conda environment to verify that the package has been installed correctly.

For SkyTools to work correctly, set an environment variable SKYTOOLS_DATA pointing to HEALPix data folder (available with the HEALPix distribution) by adding export SKYTOOLS_DATA='<path to Healpix data folder> in your bashrc or bash_profile.

Expand source code
#######################################################################
# This file is a part of SkyTools
#
# Sky Tools
# Copyright (C) 2023  Shamik Ghosh
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <https://www.gnu.org/licenses/>.
#
# For more information about SkyTools please visit 
# <https://github.com/1cosmologist/skytools> or contact Shamik Ghosh 
# at shamik@lbl.gov
#
#########################################################################
"""
.. include:: ../README.md
"""
from .binning_utils import *
from .border_finder import *
from .em_law import *
from .hpx_utils import *
from .mask_recipes import * #intensity_mask, 
from .mask_tools import *
from .needlet import *
from .unit_conversion import *

Sub-modules

skytools.binning_utils
skytools.border_finder
skytools.em_law

Module containing emission law functions. These produce the frequency scaling of different emission components relevant to the CMB observations.

skytools.hpx_utils

The SkyTools HEALPix utilities module provides useful and frequently used macro funtions to augment the function set available with Healpy. Some of …

skytools.mask_recipes
skytools.mask_tools
skytools.needlet

SkyTools needlet transformation module provides functions and utilities to performs needlet transformation of data on a sphere. The module provides …

skytools.unit_conversion

This module computes unit conversion and color correction factors for CMB observations based on Planck 2013 IX: HFI Spectral Response. This is meant …