c++ - Boost或TR1相当于gsl_matrix等

标签 c++ boost open-source tr1

我无法使用gsl_matrix因为我的应用程序是闭源的,并且根据 this question ,如果我直接使用 GPL 代码,我就必须将我的应用程序开源。这是上级的禁忌。

那么...Boost,甚至更好的是 TR1,是否有一个包含与 gsl_matrix 等价的类的库, gsl_vector以及 GNU Scientific Library 中的其他类型?如果有这样的类,它们是如何调用的?

编辑:我需要:

  • 执行密集矩阵 vector 乘积和求和(如 gsl_blas_dgemvgsl_blas_dgemm 执行的操作)
  • (可选)解决 quadratic programming模型。

最佳答案

首先,有C interface for BLAS/LAPACK 。有些人发现处理直接反射(reflect)原始 BLAS 签名的调用签名“很难”。

如果您更喜欢事物更奇特的一面,那么 Boost uBLAS interface ,有Armadillo ,仅举两个例子。就性能而言,您的里程可能会有所不同。

关于c++ - Boost或TR1相当于gsl_matrix等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12501927/

相关文章:

c++ - 重新连接设备后 boost::asio::serial_port 读取

c++ - BOOST_SCOPE_EXIT 将参数作为值传递

apache-pig - 在哪里贡献 Apache Pig UDF?

c++ - 使用 Websockets 在两个设备之间进行双向通信

c++ - 在 asio stackful 协程中直接使用 spawn 是否安全?

c++ - 如何使 FFTW 希尔伯特变换计算得更快?

git - 参与开源项目的正确方式?

open-source - 是否有适用于 x86 的开源实时操作系统?

c++ - boost::shared_ptr <> "explicit shared_ptr( Y * p ): px( p ), pn()//Y must be complete"

c++ - 如何围绕一组二维点拟合边界椭圆