numpy和pysparse浮点表示问题

2024-09-28 03:18:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经开始使用numpy和与UMFPACK接口的pysparse包,但是numpy的浮点结果有一个问题。顺便说一下,这是一个用于结构问题的lanczos特征值求解器。在

当我在MATLAB中做同样的运算时,得到了不同的结果,结果是在1e-6,1e-8阶上,用MATLAB的表示,我得到了正确的特征值。NumPy和PySparse的结果也不算太远,至少在阶数水平上,但是使用它们来创建三对角矩阵来寻找特征值是问题的根源。我不明白出了什么问题,问题是浮点表示法,但是如果可能的话,如何解决这个问题呢?我尝试使用'Float64'作为我的数据类型,但这并没有改变问题的结果。例如

q = ones(n, dtype = 'Float64')

还有一个问题,python最成熟的稀疏包是什么?如果有的话,提供了什么样的接口?如前所述,Pyparse对我来说一眼就好。。。在


Tags: numpy水平结构浮点matlab对角float64特征值
1条回答
网友
1楼 · 发布于 2024-09-28 03:18:08

float64是Numpy中的默认数据类型。您可以尝试使用float128来获得更高的精度,但是需要注意的是,某些函数(以及Windows上基本上所有的函数)都会将其强制为float64。在

我建议使用scipy.sparse来解决稀疏特征向量问题。我试过PySparse和稀疏稀疏,我的结论是虽然PySparse更容易使用,稀疏稀疏更成熟了。在

以下是稀疏线性代数文档:http://docs.scipy.org/doc/scipy/reference/sparse.linalg.html

相关问题 更多 >

    热门问题