python计算阶乘之和:1!+2!+3!......+n!(Python之PyArmadillo计算库的产生)
Python目前有许多科学计算库 ,其中最有名的就是NumPy和SciPy 。但是 ,这些库常常在代数运算和使用语法方面带来不必要的麻烦 ,无法直观地管理其中的数据类型 。所以 ,使用Armadillo作为底层的PyArmadillo库就基于此 ,重新构造了像Matlab和Octave这样容易使用的语法 。另外 ,因为pybind11的使用相对简单 ,PyArmadillo使用pybind11把C++和Python连接起来 。这个库最近已经正式发行了 。
1 、PyArmadillo的研发经历
Armadillo是一个在C++中与Eigen并驾齐驱的科学计算库 ,它以其简单易用的特点受到广大程序员和科学家的青睐 ,也得到了Facebook 、NASA 、Boeing 、Siemens 、DeutscheBank 、MIT 、CMU 、Stanford等公司和大学的广泛使用 。另外 ,Armadillo和Rcpp的主要作者共同开发了RcppArmadillo ,这是R语言中最主要的科学计算库 ,Github每月有97.2万个下载 。除此之外,Armadillo还作为mlpack这一著名的开源机器学习库的主要依赖库之一而备受关注 。
Data61级实习生JasonRumengan根据Armadillo的主要作者ConradSanderson的指导建议 ,在昆士兰科技大学(QUT)本科学习期间和新南威尔士大学(UNSW)本科学习期间的JasonRumengan开发了这个PyArmadillo库 。在PyArmadillo中 ,Terry被Conrad邀请和Jason合作开发mat和cube两种类型,这两种类型都是中国人 。Jason主要负责mat部分和编译方面 ,而Terry主要负责cube部分和文档及测试 。
项目地址:https://github.com/terryyz/PyArmadillo 。
具体地说 ,PyArmadillo是Python语言强调易用性的线性代数库。这个库的设计目的是提供与Matlab或Octave相似的高级语法和功能 ,使用户能够以一种熟悉而自然的方式表达数学操作 。
PyArmadillo还为矩阵和多维数据集(cube)提供了对象 ,还有200多个相关函数用来在对象中存储数据 。全部功能都可以在一个平面结构中使用 ,并且支持整数 ,浮点 ,复数。该库集成了LAPACK或IntelMKL 、OpenBLAS等高性能的替代产品 ,从而提供了多种矩阵分解 。
2 、安装指南
PyArmadillo 库的具体用例如下图所示:
安装 PyArmadillo 需要满足以下要求:
大于 Python3.6 ,推荐为 3.8 及以上;
支持至少 C++ 11 标准的 C++ 编译器;
至少 8G RAM;
64-bit 的 CPU, 最好 4 核以上;
安装之前已安装好 OpenBLAS 和 LAPACK 。
3 、目前支持的操作系统
Linux;
MacOS;
Window x64 (x86 暂不支持) 。
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!