未知
ctypesGsl的Python项目详细描述
cTypesGSL是GSL库的Python绑定,使用cTypes 包裹。它可能比pygsl慢一些,但是有其他的 优点:
- 它很容易安装,唯一的依赖关系(除了gsl 是cTypes包,自Python2.5以来一直是标准的。不 安装期间需要编译或。实施 也更简单,因为它不需要swig包装器、c代码或 共享库。
- cTypes似乎是将来进行Python绑定的首选方法, 因为它独立于使用的python实现,例如 应该和派比一起工作。
目前,它正慢慢变得相当完整。实施的是:
错误处理 基本功能 复数 多项式 特殊功能 向量 矩阵 置换(不完整) 组合 布拉斯 线性代数 本征系统 数值积分 随机数生成器 准随机数发生器 概率分布 采用蒙地卡罗积分法 常微分方程 数值积分 Chebyshev近似 一维寻根 一维极小化 多维根查找 多维最小化
许可证
GPL V.3,请参见license.txt
安装
在顶层有一个setup.py脚本(有点实验性) 目录。
或者,只需将cTypesGSL目录复制到
/usr/local/lib/python2.5/site-packages/
或者保存本地python包的地方。你准备好出发了:
>>> import ctypesGsl >>> ctypesGsl.expm1(1) 1.7182818284590451
test_cgsl.py文件包含一些基于gsl测试的示例。
设计
其思想是包应该像标准python一样可用 图书馆。因此,低级函数通常用python包装 试图隐藏一些复杂性的函数。
高级接口进行错误处理(引发异常 如果返回值不是gsl_success),则尝试使用 简单,例如gsl_复数可以像标准python一样使用 复数,尽量分配合理的集成工作空间 如果没有提供尺寸等。
有关示例,请参见test_cgsl.py文件。
错误处理
有两种方法可以检查gsl中的错误:内部错误处理程序, 和返回值。cTypesGSL同时处理这两种情况。返回值是 自动选中,并且(默认情况下)如果 返回值表示错误。
不幸的是,cTypes不会传播内部引发的异常 回调函数到主线程,因此如果在 内部错误处理程序,将打印回溯,但程序 继续。因此(默认情况下)重新定义了内部GSL错误处理程序 只打印警告消息。
可以重新定义内部和返回值错误处理程序。
文档
目前没有。有关用法示例,请参见test_cgsl.py文件。