gnu科学库(gsl)中odeiv2的python绑定。

pygslodeiv2的Python项目详细描述


Build statusBuild status on CircleCIBuild status on Travis-CIPyPI versionPython versionLicensecoverageZenodo DOI

pygslodeiv2提供了 Python绑定到 Ordinary Differential Equationodeiv2 interface公开的集成例程 GSL - GNU Scientific Library。 ODEIv2接口允许用户对微分方程组进行数值积分。

以下stepping functions可用:

  • RK2
  • RK4
  • RKF45
  • RKCK
  • RK8PD
  • RK1IMP
  • RK2IMP
  • RK4IMP
  • bsimp
  • msadams
  • msbdf

注意,所有隐式步进器(以“imp”结尾)和msbdf都需要用户提供 用于计算jacobian的回调。

您可能还想知道可以使用pygslodeiv2from pyodesys 例如,可以解析地导出雅可比矩阵(使用同态)。pyodesys还提供 绘图功能,C++代码生成等等。

文档

最新稳定版本的自动生成API文档可在以下位置找到: https://bjodah.github.io/pygslodeiv2/latest (当前主分支的开发版本如下: http://hera.physchem.kth.se/~pygslodeiv2/branches/master/html)。

安装

最简单的安装方法是使用conda package manager

$ conda install -c bjodah pygslodeiv2 pytest
$ python -m pytest --pyargs pygslodeiv2

测试应该通过。

此处提供二进制分布: https://anaconda.org/bjodah/pygslodeiv2,conda稳定释放配方可在此处获得: http://hera.physchem.kth.se/~pygslodeiv2/conda-recipes

此处提供源分发(需要gsl v1.16或v2.1共享库和头文件): https://pypi.python.org/pypi/pygslodeiv2(镜像文件保存在此处: http://hera.physchem.kth.se/~pygslodeiv2/releases

示例

经典范德波尔振荡器(见examples/van_der_pol.py

>>>importnumpyasnp>>>frompygslodeiv2importintegrate_predefined# also: integrate_adaptive>>>mu=1.0>>>deff(t,y,dydt):...dydt[0]=y[1]...dydt[1]=-y[0]+mu*y[1]*(1-y[0]**2)...>>>defj(t,y,Jmat,dfdt):...Jmat[0,0]=0...Jmat[0,1]=1...Jmat[1,0]=-1-mu*2*y[1]*y[0]...Jmat[1,1]=mu*(1-y[0]**2)...dfdt[0]=0...dfdt[1]=0...>>>y0=[1,0];dt0=1e-8;t0=0.0;atol=1e-8;rtol=1e-8>>>tout=np.linspace(0,10.0,200)>>>yout,info=integrate_predefined(f,j,y0,tout,dt0,atol,rtol,...method='bsimp')# Implicit Bulirsch-Stoer>>>importmatplotlib.pyplotasplt>>>series=plt.plot(tout,yout)>>>plt.show()# doctest: +SKIP
https://raw.githubusercontent.com/bjodah/pygslodeiv2/master/examples/van_der_pol.png

有关更多示例,请参见examples/,并在此处显示Jupyter笔记本: http://hera.physchem.kth.se/~pygslodeiv2/branches/master/examples

许可证

源代码是开源的,在gnu gpl v3下发布。有关详细信息,请参见LICENSE。 欢迎投稿人在https://github.com/bjodah/pygslodeiv2

作者

比约恩·达尔格伦,联系人:

  • Gmail地址:bjodah
  • KTH.SE地址:bda

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java出现编译错误,我不理解   java在gnu-trove库中是否有任何有序映射?   java Servlet应该有映射,但找不到Servlet   java时间和第二期显示1:10,而不是13:10   java Play Framework 1.2.7 Heroku更新崩溃   线程“main”java中的opencsv异常。lang.NoClassDefFoundError:org/apache/commons/lang3/ObjectUtils   selenium在java中隐藏警告消息   java使用ID引用将JSON实体反序列化为POJO   java无法在JRE 8中加载字体   一个线程中的异常/错误会使整个应用程序停止吗?   java访问重复子规则的元素标签;e、 g.用ANTLR解析(1,2,3)中的a   java如何从平移旋转中找到新坐标   使用HTML Java小程序托管jar文件存在安全问题   java如何按频率而不是字母顺序排列字符串数组   java清除bufferedReader和块以获得更多输入   java解密SAML2断言