mpmath

Python library for arbitrary-precision floating-point arithmetic

https://github.com/mpmath/mpmath

Science Score: 64.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
    6 of 68 committers (8.8%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.6%) to scientific vocabulary

Keywords

arbitrary-precision complex-numbers floating-point multiprecision numerical-integration numerical-methods numerical-optimization ordinary-differential-equations plotting python special-functions

Keywords from Contributors

closember gtk qt tk wx unit-testing tensor cryptocurrencies hypothesis-testing optimizing-compiler
Last synced: 6 months ago · JSON representation ·

Repository

Python library for arbitrary-precision floating-point arithmetic

Basic Info
  • Host: GitHub
  • Owner: mpmath
  • License: bsd-3-clause
  • Language: Python
  • Default Branch: master
  • Homepage: http://mpmath.org
  • Size: 18.2 MB
Statistics
  • Stars: 1,039
  • Watchers: 42
  • Forks: 193
  • Open Issues: 93
  • Releases: 4
Topics
arbitrary-precision complex-numbers floating-point multiprecision numerical-integration numerical-methods numerical-optimization ordinary-differential-equations plotting python special-functions
Created about 14 years ago · Last pushed 6 months ago
Metadata Files
Readme Changelog Contributing License Citation

README.rst

mpmath
======

|pypi version| |Build status| |Code coverage status| |Zenodo Badge|

.. |pypi version| image:: https://img.shields.io/pypi/v/mpmath.svg
   :target: https://pypi.python.org/pypi/mpmath
.. |Build status| image:: https://github.com/mpmath/mpmath/workflows/test/badge.svg
   :target: https://github.com/mpmath/mpmath/actions?workflow=test
.. |Code coverage status| image:: https://codecov.io/gh/mpmath/mpmath/branch/master/graph/badge.svg
   :target: https://codecov.io/gh/mpmath/mpmath
.. |Zenodo Badge| image:: https://zenodo.org/badge/2934512.svg
   :target: https://zenodo.org/badge/latestdoi/2934512

A Python library for arbitrary-precision floating-point arithmetic.

Website: https://mpmath.org/
Main author: Fredrik Johansson 

Mpmath is free software released under the New BSD License (see the
LICENSE file for details).

0. History and credits
----------------------

The following people (among others) have contributed major patches
or new features to mpmath:

* Pearu Peterson 
* Mario Pernici 
* Ondrej Certik 
* Vinzent Steinberg 
* Nimish Telang 
* Mike Taschuk 
* Case Van Horsen 
* Jorn Baayen 
* Chris Smith 
* Juan Arias de Reyna 
* Ioannis Tziakos 
* Aaron Meurer 
* Stefan Krastanov 
* Ken Allen 
* Timo Hartmann 
* Sergey B Kirpichev 
* Kris Kuhlman 
* Paul Masson 
* Michael Kagalenko 
* Jonathan Warner 
* Max Gaukler 
* Guillermo Navas-Palencia 
* Nike Dattani 

Numerous other people have contributed by reporting bugs,
requesting new features, or suggesting improvements to the
documentation.

For a detailed changelog, including individual contributions,
see the CHANGES file.

Fredrik's work on mpmath during summer 2008 was sponsored by Google
as part of the Google Summer of Code program.

Fredrik's work on mpmath during summer 2009 was sponsored by the
American Institute of Mathematics under the support of the National Science
Foundation Grant No. 0757627 (FRG: L-functions and Modular Forms).

Any opinions, findings, and conclusions or recommendations expressed in this
material are those of the author(s) and do not necessarily reflect the
views of the sponsors.

Credit also goes to:

* The authors of the GMP library and the Python wrapper
  gmpy, enabling mpmath to become much faster at
  high precision
* The authors of MPFR, pari/gp, MPFUN, and other arbitrary-
  precision libraries, whose documentation has been helpful
  for implementing many of the algorithms in mpmath
* Wikipedia contributors; Abramowitz & Stegun; Gradshteyn & Ryzhik;
  Wolfram Research for MathWorld and the Wolfram Functions site.
  These are the main references used for special functions
  implementations.
* George Brandl for developing the Sphinx documentation tool
  used to build mpmath's documentation

Release history:

* Version 1.3.0 released on March 7, 2023
* Version 1.2.1 released on February 9, 2021
* Version 1.2.0 released on February 1, 2021
* Version 1.1.0 released on December 11, 2018
* Version 1.0.0 released on September 27, 2017
* Version 0.19 released on June 10, 2014
* Version 0.18 released on December 31, 2013
* Version 0.17 released on February 1, 2011
* Version 0.16 released on September 24, 2010
* Version 0.15 released on June 6, 2010
* Version 0.14 released on February 5, 2010
* Version 0.13 released on August 13, 2009
* Version 0.12 released on June 9, 2009
* Version 0.11 released on January 26, 2009
* Version 0.10 released on October 15, 2008
* Version 0.9 released on August 23, 2008
* Version 0.8 released on April 20, 2008
* Version 0.7 released on March 12, 2008
* Version 0.6 released on January 13, 2008
* Version 0.5 released on November 24, 2007
* Version 0.4 released on November 3, 2007
* Version 0.3 released on October 5, 2007
* Version 0.2 released on October 2, 2007
* Version 0.1 released on September 27, 2007

1. Download & installation
--------------------------

Mpmath requires Python 3.9 or later versions.  It has been tested with CPython
3.9 through 3.14 and for PyPy 3.11.

The latest release of mpmath can be downloaded from the mpmath
website and from https://github.com/mpmath/mpmath/releases

It should also be available in the Python Package Index at
https://pypi.python.org/pypi/mpmath

To install latest release of Mpmath with pip, simply run

``pip install mpmath``

or from the source tree

``pip install .``

The latest development code is available from
https://github.com/mpmath/mpmath

See the main documentation for more detailed instructions.

2. Documentation
----------------

Documentation in reStructuredText format is available in the
docs directory included with the source package. These files
are human-readable, but can be compiled to prettier HTML using
`Sphinx `_.

The most recent documentation is also available in HTML format:

https://mpmath.readthedocs.io/

3. Running tests
----------------

The unit tests in mpmath/tests/ can be run with `pytest
`_, see the main documentation.

You may also want to check out the demo scripts in the demo
directory.

The master branch is automatically tested on the Github Actions.

4. Known problems
-----------------

Mpmath is a work in progress. Major issues include:

* Some functions may return incorrect values when given extremely
  large arguments or arguments very close to singularities.

* Directed rounding works for arithmetic operations. It is implemented
  heuristically for other operations, and their results may be off by one
  or two units in the last place (even if otherwise accurate).

* Some IEEE 754 features are not available. Inifinities and NaN are
  partially supported, there is no signed zero; denormal rounding is
  not available at all.

* The interface for switching precision and rounding is not finalized.
  The current method is not threadsafe.

5. Help and bug reports
-----------------------

General questions and comments can be `sent `_
to the `mpmath mailinglist `_.

You can also report bugs and send patches to the mpmath issue tracker,
https://github.com/mpmath/mpmath/issues

Owner

  • Name: mpmath
  • Login: mpmath
  • Kind: organization

Citation (CITATION.bib)

@manual{mpmath,
  key     = {mpmath},
  author  = {The mpmath development team},
  title   = {mpmath: a {P}ython library for arbitrary-precision floating-point arithmetic (version 1.3.0)},
  note    = {{\tt https://mpmath.org/}},
  year    = {2023},
}

GitHub Events

Total
  • Create event: 6
  • Release event: 1
  • Issues event: 118
  • Watch event: 78
  • Delete event: 3
  • Issue comment event: 198
  • Push event: 67
  • Pull request review comment event: 31
  • Pull request review event: 44
  • Pull request event: 123
  • Fork event: 15
Last Year
  • Create event: 6
  • Release event: 1
  • Issues event: 118
  • Watch event: 78
  • Delete event: 3
  • Issue comment event: 198
  • Push event: 67
  • Pull request review comment event: 31
  • Pull request review event: 44
  • Pull request event: 123
  • Fork event: 15

Committers

Last synced: 8 months ago

All Time
  • Total Commits: 1,837
  • Total Committers: 68
  • Avg Commits per committer: 27.015
  • Development Distribution Score (DDS): 0.517
Past Year
  • Commits: 187
  • Committers: 10
  • Avg Commits per committer: 18.7
  • Development Distribution Score (DDS): 0.102
Top Committers
Name Email Commits
Fredrik Johansson f****n@g****m 888
Sergey B Kirpichev s****v@g****m 558
Vinzent Steinberg v****g@g****m 104
Mario Pernici m****i@m****t 51
klkuhlm k****n@g****m 37
Aaron Meurer a****r@g****m 17
Paul Masson p****n@c****t 16
Ondřej Čertík o****k@g****m 15
Case Van Horsen c****h@g****m 13
Christian Clauss c****s@m****m 11
Timo Hartmann t****5@g****m 10
Juan Arias de Reyna a****s@u****s 8
Jonathan Warner w****2@g****m 7
Javier Garcia j****w@h****m 6
sonntagsgesicht s****t@i****m 6
Maximilian Gaukler m****r@f****e 6
Michael Kagalenko M****o@g****m 5
Riccardo Orsi 1****7 5
Warren Weckesser w****r@g****m 4
Doug Torrance d****e@p****u 3
Pearu Peterson p****n@g****m 3
Tom Minka 8****a 3
klkuhlm k****m@s****v 3
kagalenko-m-b 1****b 3
Viet Tran 2****t 2
Zbigniew Jędrzejewski-Szmek z****k@i****l 2
Stefan Krastanov k****n@g****m 2
Georg Ostrovski g****i@g****m 2
Fangchen Li f****i@o****m 2
David Walker d****s@g****m 2
and 38 more...

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 325
  • Total pull requests: 349
  • Average time to close issues: over 4 years
  • Average time to close pull requests: 2 months
  • Total issue authors: 149
  • Total pull request authors: 41
  • Average comments per issue: 3.37
  • Average comments per pull request: 1.4
  • Merged pull requests: 270
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 52
  • Pull requests: 142
  • Average time to close issues: 8 days
  • Average time to close pull requests: 5 days
  • Issue authors: 25
  • Pull request authors: 12
  • Average comments per issue: 1.5
  • Average comments per pull request: 0.75
  • Merged pull requests: 109
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • skirpichev (48)
  • jacksonvanover (31)
  • fredrik-johansson (28)
  • vks (13)
  • pearu (9)
  • cbm755 (7)
  • haydenwong7bm (6)
  • donhatch (5)
  • mgorny (5)
  • oscarbenjamin (4)
  • asmeurer (4)
  • paulmasson (4)
  • WarrenWeckesser (4)
  • yixin-09 (3)
  • FreddieWitherden (2)
Pull Request Authors
  • skirpichev (255)
  • javierelpianista (15)
  • d-torrance (7)
  • ricor07 (4)
  • sunqm (4)
  • d0sboots (4)
  • hnb22 (4)
  • MaxGaukler (3)
  • WarrenWeckesser (3)
  • cbm755 (3)
  • ChefAharoni (3)
  • mo271 (2)
  • mart-mihkel (2)
  • aalfllfkkk222 (2)
  • ayushjain01 (2)
Top Labels
Issue Labels
bug (79) imported (67) enhancement (64) question (31) docs (23) need decision (14) Priority-Medium (11) invalid (8) duplicate (6) pending (5) Priority-Low (2) testing (1)
Pull Request Labels
pending (1) :sparkles: 신규 기능 (1) :art: UI (1)

Packages

  • Total packages: 2
  • Total downloads:
    • pypi 18 last-month
  • Total dependent packages: 5
    (may contain duplicates)
  • Total dependent repositories: 260
    (may contain duplicates)
  • Total versions: 6
  • Total maintainers: 1
anaconda.org: mpmath

mpmath is a free Python library for real and complex floating-point arithmetic with arbitrary precision.

  • Homepage: https://mpmath.org
  • License: BSD-3-Clause
  • Latest release: 1.3.0
    published over 2 years ago
  • Versions: 5
  • Dependent Packages: 5
  • Dependent Repositories: 260
Rankings
Dependent packages count: 8.7%
Dependent repos count: 11.6%
Average: 17.8%
Forks count: 25.2%
Stargazers count: 25.6%
Last synced: 6 months ago
pypi.org: mpmath-with-autoprec-correction-lirikoknessu-fork

Python library for arbitrary-precision floating-point arithmetic. This fork implements fixes in auto precision setting

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 18 Last month
Rankings
Dependent packages count: 9.9%
Average: 37.5%
Dependent repos count: 65.1%
Maintainers (1)
Last synced: 6 months ago

Dependencies

.github/workflows/test.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • actions/upload-artifact v3 composite
  • pypa/gh-action-pypi-publish v1.4.2 composite
pyproject.toml pypi