跳转到主要内容

可用的ODE求解器

项目描述

Latest Version License Python Versions https://github.com/hgrecco/numbakit-ode/workflows/CI/badge.svg?branch=main https://github.com/hgrecco/numbakit-ode/workflows/Lint/badge.svg?branch=main https://coveralls.io/repos/github/hgrecco/numbakit-ode/badge.svg?branch=main Docs

numbakit-ode:利用numba加速ODE积分

numbakit-ode (nbkode) 是一个Python包,用于求解 常微分方程 (ODE),它使用 Numba 编译代码,从而加快计算速度。

API与scipy的integrate模块非常相似,因此可以轻松迁移。

它运行在Python 3.7+,依赖于 NumPySciPyNumba。它遵循BSD许可证。

它非常易于使用

>>> import nbkode
>>> def func(t, y):
...     return -0.1 * y
>>> t0 = 0.
>>> y0 = 1.
>>> solver = nbkode.ForwardEuler(func, t0, y0)
>>> ts, ys = solver.run([0., 5., 10.])

您可以获取所有求解器的列表

>>> import nbkode
>>> nbkode.get_solvers() #doctest: +SKIP

或根据特性或组名(或名称)进行筛选。

>>> nbkode.get_solvers(implicit=False, fixed_step=True) #doctest: +SKIP
>>> nbkode.get_solvers('euler', 'adam-bashforth') #doctest: +SKIP

快速安装

要安装numbakit-ode,只需(即将推出)

$ pip install numbakit-ode

或利用conda,使用conda-forge频道(即将推出)

$ conda install -c conda-forge numbakit-ode

然后只需享受它!

设计原则

快速:我们喜爱 Numba。它允许您编写干净的Python代码,在运行时转换为优化的机器代码。我们的目标是利用这种能力来解决常微分方程系统。

简单但实用的API:求解器是易于实例化的类,具有合理的默认值和方便的方法。

正确性:我们通过自动化测试,与SciPy等已建立的库进行比对,确保我们的实现与这些库相匹配。

数据驱动开发:我们根据数据进行决策,为此我们衡量每个组件的性能以及我们所做的每个变更的影响。


numbakit-ode 由一个社区维护。有关完整列表,请参阅 AUTHORS

要查看每个版本的项目显著变更的有序列表,请参阅 CHANGES

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源代码分发

numbakit-ode-0.5.tar.gz (71.2 kB 查看哈希值)

上传时间 源代码

构建分发

numbakit_ode-0.5-py2.py3-none-any.whl (49.8 kB 查看哈希值)

上传时间 Python 2 Python 3

由以下机构支持