首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Fortran Pardiso稀疏矩阵格式问题

Fortran Pardiso稀疏矩阵格式问题
EN

Stack Overflow用户
提问于 2016-06-02 16:05:17
回答 1查看 212关注 0票数 0

我目前正在编写一些代码,其中涉及到在Fortran中构建稀疏矩阵和求解一个简单的AX=b线性系统。为此,应项目主管的请求,我正在使用Pardiso稀疏矩阵库。

代码被分成两部分。前半部分建立矩阵和右手边,下半部分要求Pardiso解决这个系统。我知道前半部分可以工作,因为将数据导出到Fortran之外并用Python解决系统会产生预期的结果。然而,我无法让Pardiso正常工作,主要是因为我误解了它提供的错误消息。手册解释得很少,互联网论坛上充斥着与Pardiso相关的问题(没有双关语的意思)。

我为Pardiso使用的设置如下:

代码语言:javascript
复制
iparm(1)=0
iparm(2)=2
iparm(6)=0
iparm(10)=13
iparm(11)=1
iparm(13)=1
iparm(19)=0
iparm(21)=1
iparm(26)=1
iparm(52)=1
mtype = 11
iparm(3) = 1
solver=0
mtype=11

我所犯的错误是:

错误PARDISO (sequence_ido,参数) error_num= 4输入检查: matrix_number_new 22 ido 32675不兼容

手册或互联网没有说明这意味着什么。pardiso_chkmatrixpardiso_printstats不会说出任何错误,所以我不知道发生了什么。

EN

回答 1

Stack Overflow用户

发布于 2016-06-05 12:18:29

很难确切地说出问题是什么,但这里有一个假设。32675的值非常接近可以存储在一个2字节变量中的最大整数值(在C:"short int“类型变量中),该变量等于32767。显然,Pardiso中的一些内部数组将整数值存储为“短int”(2字节)而不是"int"(4字节),以节省内存。就像我说的,这是唯一的可能。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37596914

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档