小编arn*_*rne的帖子

Fortran 90/95稀疏矩阵库?

我正在寻找一个库来处理fortran 90/95中的稀疏矩阵.我只需要非常基本的操作,如矩阵向量乘法.你建议我用什么?

我已经搜索过了一个扩展名(?)到BLAS,称为"稀疏blas",在爆炸技术论坛规范的第3章中有记录:

http://www.netlib.org/blas/blast-forum/ ,

看起来很理想 根据该文档,库应该有一个fortran 95接口.但是,我无法在任何可以下载的地方找到该规范的实际实现.我有点认为fortran 95稀疏blas规范并没有在任何地方真正实现?反正不是开源的.

我还找到了一个名为sparsekit的库:

http://people.sc.fsu.edu/~jburkardt/f_src/sparsekit/sparsekit.html

任何人都有这两个中的任何一个的经验,或任何其他稀疏矩阵库为fortran 90/95?我想建议使用哪一个,以及从哪里获取它(在sparsekit的情况下,源代码可通过上面的链接获得).对于稀疏矩阵,有没有类似"标准"的东西,比如BLAS用于密集矩阵?

干杯,

阿恩

fortran blas sparse-matrix fortran90 fortran95

14
推荐指数
1
解决办法
1万
查看次数

f2py:在与python接口时指定fortran中的实际精度?

我正在玩f2py.我对numpy内在类型与fortran 90类型有点混淆.在与python进行交互时,似乎我只能在fortran 90中使用单精度实数.让我用一个例子来说明:

假设我有这个fortran 90模块test.f90,用f2py编译并在python中导入:

module test
implicit none

integer, parameter :: sp = selected_real_kind(6,37) ! single precision
integer, parameter :: dp = selected_real_kind(15,307) ! double precision

real(sp) :: r_sp = 1.0
real(dp) :: r_dp = 1.0_dp
end module
Run Code Online (Sandbox Code Playgroud)

我这样编译:

f2py -c -m test test.f90

然后,在python中:

>>> import test
>>> test.test.r_sp
array(1.0, dtype=float32)
>>> test.test.r_dp
array(1.0)
Run Code Online (Sandbox Code Playgroud)

IOW,似乎f2py不接受双精度.当从python传递输入到fortran 90子例程时,这变得更加成问题.假设我将模块扩展到:

module test

implicit none
integer, parameter :: sp = selected_real_kind(6,37) ! single precision
integer, parameter :: dp = selected_real_kind(15,307) ! double precision …
Run Code Online (Sandbox Code Playgroud)

python fortran90 f2py

8
推荐指数
1
解决办法
3613
查看次数

将matplotlib填充的等高线图保存为.pdf或.eps时的别名

我正在用matplotlib.pyplot.contourf()函数生成一个字段轮廓图.调用函数的参数是:

contourf(xvec,xvec,w,levels,cmap=matplotlib.cm.jet)
Run Code Online (Sandbox Code Playgroud)

哪里

xvec = numpy.linspace(-3.,3.,50)
levels = numpy.linspace(-0.01,0.25,100)
Run Code Online (Sandbox Code Playgroud)

而w是我的数据.

结果图在屏幕上看起来相当不错,但是当我使用对matplotlib.pyplot.savefig()的调用保存到pdf时,生成的pdf有很多别名(我认为就是这样).对savefig的调用很简单savefig('filename.pdf').我尝试过使用dpi参数,但没有运气.打电话matplotlib.get_backend()吐出'TkAgg'.

我将附加一个保存为pdf的图形,与保存为png的图形(类似于屏幕上的图像)相比,以演示该问题:

png wihtout别名:https://dl.dropbox.com/u/6042643/wigner_g0.17.png

带别名的pdf:https://dl.dropbox.com/u/6042643/wigner_g0.17.pdf

如果我有任何其他细节可以帮助您给出答案,请告诉我.我应该提一下,保存为.eps会产生与保存到pdf类似的糟糕结果.但pdf表明问题更加清晰.我的目标是最终获得生产质量.我可以将其附在乳胶文件上,作为科学论文发表.如果我能找到一种能产生令人满意的结果的方法,我会很乐意在一种格式下保存,然后转换它.

最好,

阿恩

pdf matplotlib eps

5
推荐指数
2
解决办法
5618
查看次数

标签 统计

fortran90 ×2

blas ×1

eps ×1

f2py ×1

fortran ×1

fortran95 ×1

matplotlib ×1

pdf ×1

python ×1

sparse-matrix ×1