Other

项目介绍

lmfit/uncertainties 是一个托管在 GitHub 上的开源项目,主要使用 Python 编写,采用 Other 许可证,目前获得 680 个 Star、92 次 Fork。

仓库全名
lmfit/uncertainties
开源许可证
Other
Star 数
680
Fork 数
92
未关闭 Issue
98

README 摘要

uncertainties ============= :target: https://pypi.org/project/uncertainties/ :target: https://pepy.tech/project/uncertainties :target: https://codecov.io/gh/lmfit/uncertainties/ :target: https://github.com/lmfit/uncertainties/actions/workflows/python-package.yml The uncertainties package allows calculations with values that have uncertaintes, such as (2 +/- 0.1)2 = 4 +/- 0.2. uncertainties takes the pain and…

完整内容见 GitHub 原始 README 或本页 。

常见问题

uncertainties 用什么语言开发?

主要使用 Python 编写,采用 Other 许可证,目前有 680 个 Star。

uncertainties 可以免费商用吗?

仓库标注的许可证为 Other,商用前请先阅读仓库 LICENSE 文件确认授权范围。

如何获取 uncertainties 的源码?

可以直接克隆仓库:git clone https://github.com/lmfit/uncertainties.git,默认分支为 master;安装与运行步骤见仓库 README。

uncertainties 最近还在维护吗?

仓库最近一次更新为 7月1日,当前有 98 个未关闭 Issue;Star 数为 680,可作为社区活跃度的参考。

关于

Transparent calculations with uncertainties on the quantities involved (aka "error propagation"); calculation of derivatives.

描述取自 GitHub 官方 API,中文内容由 GitRead 中文社区 编辑团队整理。

简要分析

热度分
874
价值分
431
活跃状态
活跃

语言占比

Python
Shell

Release

README

uncertainties

… image:: https://readthedocs.org/projects/uncertainties/badge/?version=latest :target: https://uncertainties.readthedocs.io/en/latest/?badge=latest … image:: https://img.shields.io/pypi/v/uncertainties.svg :target: https://pypi.org/project/uncertainties/ … image:: https://pepy.tech/badge/uncertainties/week :target: https://pepy.tech/project/uncertainties … image:: https://codecov.io/gh/lmfit/uncertainties/branch/master/graph/badge.svg :target: https://codecov.io/gh/lmfit/uncertainties/ … image:: https://img.shields.io/github/actions/workflow/status/lmfit/uncertainties/python-package.yml?logo=github actions :target: https://github.com/lmfit/uncertainties/actions/workflows/python-package.yml

The uncertainties package allows calculations with values that have uncertaintes, such as (2 +/- 0.1)*2 = 4 +/- 0.2. uncertainties takes the pain and complexity out of error propagation and calculations of values with uncertainties. For more information, see https://uncertainties.readthedocs.io/

Basic examples

… code-block:: python

>>> from uncertainties import ufloat
>>> x = ufloat(2, 0.25)
>>> x
2.0+/-0.25

>>> square = x**2
>>> square
4.0+/-1.0
>>> square.nominal_value
4.0
>>> square.std_dev  # Standard deviation
1.0

>>> square - x*x
0.0  # Exactly 0: correlations taken into account

>>> from uncertainties.umath import sin, cos  # and many more.
>>> sin(1+x**2)
-0.95892427466313845+/-0.2836621854632263

>>> print (2*x+1000).derivatives[x]  # Automatic calculation of derivatives
2.0

>>> from uncertainties import unumpy  # Array manipulation
>>> varr = unumpy.uarray([1, 2], [0.1, 0.2])
>>> print(varr)
[1.0+/-0.1 2.0+/-0.2]
>>> print(varr.mean())
1.50+/-0.11
>>> print(unumpy.cos(varr))
[0.540302305868+/-0.0841470984808 -0.416146836547+/-0.181859485365]

Main features

  • Transparent calculations with uncertainties: Little or no modification of existing code is needed to convert calculations of floats to calculations of values with uncertainties.

  • Correlations between expressions are correctly taken into account. Thus, x-x is exactly zero.

  • Most mathematical operations are supported, including most functions from the standard math_ module (sin,…). Comparison operators (>, ==, etc.) are supported too.

  • Many fast operations on arrays and matrices of numbers with uncertainties are supported.

  • Extensive support for printing numbers with uncertainties (including LaTeX support and pretty-printing).

  • Most uncertainty calculations are performed analytically.

  • This module also gives access to the derivatives of any mathematical expression (they are used by error propagation theory_, and are thus automatically calculated by this module).

Installation or upgrade

To install uncertainties, use::

 pip install uncertainties

To upgrade from an older version, use::

 pip install --upgrade uncertainties

Further details are in the on-line documentation <https://uncertainties.readthedocs.io/en/latest/install.html>_.

Git branches

The GitHub master branch is the latest development version, and is intended to be a stable pre-release version. It will be experimental, but should pass all tests… Tagged releases will be available on GitHub, and correspond to the releases to PyPI. The GitHub gh-pages branch will contain a stable test version of the documentation that can be viewed at <https://lmfit.github.io/uncertainties/>_. Other Github branches should be treated as unstable and in-progress development branches.

License

This package and its documentation are released under the Revised BSD License <LICENSE.txt>_.

History

… Note from Eric Lebigot: I would like the origin of the package to remain documented for its whole life. Thanks!

This package was created back around 2009 by Eric O. LEBIGOT <https://github.com/lebigot>_.

Ownership of the package was taken over by the lmfit GitHub organization <https://github.com/lmfit>_ in 2024.

… _IPython: https://ipython.readthedocs.io/en/stable/ … _math: https://docs.python.org/library/math.html … _error propagation theory: https://en.wikipedia.org/wiki/Propagation_of_uncertainty … _main website: https://uncertainties.readthedocs.io/

评论

暂无评论