Skip to main content

A Python implementation of the ContBin algorithm

Project description

contbin_python

This is a python re-implementation of the Jeremy Sanders contour binning algorithm, which was originally in c++. You can install it with pip install pycontbin, or upgrade it with pip install --upgrade pycontbin. Please note that this python build is under development and is subject to updates.

You can see the original files here: https://github.com/jeremysanders/contbin

Original Copyright Jeremy Sanders jeremy@jeremysanders.net (2002-2016) The reference paper is Sanders (2006), MNRAS, 371, 829, http://adsabs.harvard.edu/abs/2006MNRAS.371..829S

This version was translated to python by me, and might still contain some minor bugs, although the current implementation results seem to reproduce the original code results.

I have additionally added a routine that automatically produces and outputs polygon region files for each bin in sexagesimal coordinates, this is an improvement on the previous work that output many box regions instead.

The jupyter notebook contains the testing code, also an example use case.

This software is licensed under the GNU Public License.

To do:

  • I want to implement PSF information in the code. I will be trying to work on this on another branch.
  • Adding GPU optimization would be wonderful.

Done:

  • Added polygon regions as output in sexagesimal coordinates, however this requires ciao and pyds9 installed.
  • Created pip package

Requirements

  • numpy
  • astropy
  • ciao
  • pyds9

Code use case example:

# from contour_binning import *
from pycontbin import ContourBin

os.chdir("/Users/jpbreuer/Scripts/contbin-python")
inputfile = "scaled_fluxed_sps_filth_fov.fits"

sn_ratio = 50
smooth = 30
constrain_val = 1.5
reg_bin = 1

ContourBin(inputfile, sn_ratio, smooth, constrain_val, reg_bin, make_region_files=True)

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

pycontbin-0.2.2.tar.gz (13.4 kB view details)

Uploaded Source

Built Distribution

pycontbin-0.2.2-py3-none-any.whl (12.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pycontbin-0.2.2.tar.gz
  • Upload date:
  • Size: 13.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.9

File hashes

Hashes for pycontbin-0.2.2.tar.gz
Algorithm Hash digest
SHA256 fecfeee9abf973c37c1a762bb7f5dd9eba6ea25e7eb81693f83dfbeb4dda6695
MD5 406dc807dad66567543e3f27df9b0da4
BLAKE2b-256 2fd066811893cd2220ac3465e5afa6a5bde6cd4ac3037cef07a0e96cf2d2e1f2

See more details on using hashes here.

File details

Details for the file pycontbin-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: pycontbin-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 12.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.9

File hashes

Hashes for pycontbin-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 7af069dbbef1486b2349514a6982ba336cc3127b9b2d0ff2458baa088b1c8cbd
MD5 9e891697082ea1a9a68f554a5efc1ade
BLAKE2b-256 d1f06211a0a022c53fc6c10bc8cbc7ee4499fa7ad8bfc356fac73e4b48bdcdb0

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