numpy和pysparse浮点表示问题

问题描述

| 我已经开始将numpy与接口UMFPACK的pysparse包一起使用,但是numpy的浮点结果存在问题。顺便说一下,这是用于结构问题的lanczos特征值求解器。 当我在MATLAB中执行相同的操作时,我得到的结果是不同的,结果大约是1e-6,1e-8,并且以MATLAB的表示形式,我得到了正确的特征值。 NumPy和PySparse结果也不是那么远,至少在顺序级别上,但是使用它们创建三对角矩阵以在其上找到特征值是问题的根源。我不明白出了什么问题,问题是浮点表示,但是如果可能的话,如何解决呢?我试图使用\'Float64 \'作为我的数据类型,但这并没有改变问题的结果。如
q = ones(n,dtype = \'Float64\')
再者,什么是最成熟的python稀疏包,提供了什么样的接口(如果有)?如前所述,PySparse一见钟情。     

解决方法

        “ 1”是Numpy中的默认数据类型。您可以尝试使用
float128
以获得更高的精度,但是请注意,某些功能(基本上Windows上的所有功能)都将强制将其强制为
float64
。 对于您的稀疏特征向量问题,我建议使用
scipy.sparse
。我已经尝试了PySparse和scipy.sparse,并且可以得出结论,尽管PySparse易于使用,但scipy.sparse更成熟。 这是稀疏的线性代数文档:http://docs.scipy.org/doc/scipy/reference/sparse.linalg.html     

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...