微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

GSL 未定义稀疏复矩阵

如何解决GSL 未定义稀疏复矩阵

我想在 GSL 中创建一个稀疏复矩阵,他们的文档 here 说所有函数都可用于多种矩阵类型,我感兴趣的是 gsl_spmatrix_complex。 >

所有函数都可用于每种标准数据类型。 double 的版本具有前缀 gsl_spmatrix,类似地,单精度浮点数组的版本具有前缀 gsl_spmatrix_float。

我尝试使用 gsl_spmatrix_complex_alloc 分配一个并在 GCC 中获得一个未定义的引用。

gsl_spmatrix mat = gsl_spmatrix_complex_alloc(matrix_header.m,matrix_header.n);

我认为我的包含可能是错误的(gsl/gsl_spmatrix.h 然后尝试了 gsl/gsl_matrix_complex_double.h 之类的东西)但是我运行了 cat /usr/include/gsl/* | grep gsl_spmatrix_complex 并且我没有得到任何结果,所以我的 {{1} (Ubuntu 20.04) 损坏或文档错误。对于稀疏复杂类型,根本没有分配函数和矩阵函数

鉴于文档使用 libgsl-dev 作为示例,我也对此进行了 grep,但没有任何内容

回到我的问题,如何根据文档在 GSL 中创建稀疏复矩阵?

解决方法

看起来 libgsl-dev 在 Ubuntu 20.04 上是 v2.5,但在 Ubuntu 20.10 上是 v2.6,所以问题确实是我的发行版而不是包。下载包并手动编译即可解决问题。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。