Skip to main content

Some convenience functions for Cosmology-related analysis.

Project description

Date:
March 20, 2021

docs

Documentation Status image2

tests

GitHub Actions Coverage Status

Codacy Code Quality Status Scrutinizer Status CodeClimate Quality Status

package

Supported versions Supported implementations PyPI Wheel

PyPI Package latest release GitHub Releases Development Status Downloads

Commits since latest release License

conda-forge

Conda Recipe Conda Downloads Conda Version Conda Platforms

Introduction

This package contains some numba-jit-compiled functions that perform Quaternion operations and a convenient class Quaternion that provide convenient methods wrapping around those functions.

Quaternion behaves like a Numpy array containing quaternion, e.g. respect Numpy broadcast operations, but without really imitating a numpy.ndarray and implemented a dtype.

This design allows you to write any jit-compiled functions involving those provided jit-compiled functions, and then write your own class methods that calls those functions as a convenient interface (by class inheritance.)

If you do not care to use Quaternion in other jit-compiled functions you write, check out packages below instead.

Other Python quaternion projects

Other Python projects that implements quaternions and I knew and used are:

  • zonca/quaternionarray: written in pure Python using Numpy. Note that unusually they put the real part in the last column. lastcol_quat_to_canonical and canonical_quat_to_lastcol convert between those and the canonical ordering (where real part comes first.)

  • hpc4cmb/toast: toast.qarray is a reimplementation of the above quaternionarray package in C++ with the same interface, and following the same convention.

  • moble/quaternion: implement Quaternion as a Numpy dtype in C.

  • moble/quaternionic: implement Quaternion as a Numpy dtype using Numba. This package is inspired by my expectation of quaternionic—I expected I could use them in a Numba-jit-compiled function but it doesn’t.

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

numba_quaternion-0.2.0.tar.gz (8.8 kB view hashes)

Uploaded Source

Built Distribution

numba_quaternion-0.2.0-py3-none-any.whl (9.6 kB view hashes)

Uploaded Python 3

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