Skip to main content

xprec precision numpy extension

Project description

Library for double-double arithmetic calculation

Extension module for numpy providing the ddouble data type.

Loading this module registers an additional scalar data type ddouble with numpy implementing double-double arithmetic. You can use use the data type by passing dtype=xprec.ddouble to numpy functions.

The xprec.linalg module provides some linear algebra subroutines, in particular QR, RRQR, SVD and truncated SVD.

Installation

$ pip install xprec

Quickstart

import numpy as np
x = np.linspace(0, np.pi)

# import double-double precision data type
from xprec import ddouble
x = x.astype(ddouble)
y = x * x + 1
z = np.sin(x)

# do some linalg
import xprec.linalg
A = np.vander(np.linspace(-1, 1, 80, dtype=ddouble), 150)
U, s, VT = xprec.linalg.svd(A)

Trouble shooting

  • icc
    You may suffer from a long runtime when xprec is built with icc. If you encounter this problem, please try the following:
CFLAGS="-fp-model=precise" pip install xprec

Licence

The xprec library is Copyright (C) 2021 Markus Wallerberger. Licensed under the MIT license (see LICENSE.txt).

Contains code from the QD library, which is Copyright (C) 2012 Yozo Hida, Xiaoye S. Li, David H. Bailey. Released under a modified BSD license (see QD-LICENSE.txt).

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

xprec-1.4.1.tar.gz (34.9 kB view details)

Uploaded Source

File details

Details for the file xprec-1.4.1.tar.gz.

File metadata

  • Download URL: xprec-1.4.1.tar.gz
  • Upload date:
  • Size: 34.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.9.19

File hashes

Hashes for xprec-1.4.1.tar.gz
Algorithm Hash digest
SHA256 959bbdc1b3363ee084bf15c5aaca57841aea6f60d5c4e0d088a8c9d17444a006
MD5 c8f5beceba86a0a5d5ebf3a307a82380
BLAKE2b-256 ff55e1f9f243c1ac84797d17bea20183b3a1d966844db510e277c49b09eec5a0

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