Fortran Coder

查看: 7594|回复: 4
打印 上一主题 下一主题

[数学库] 关于mkl中lapack的线性代数问题

[复制链接]

798

帖子

2

主题

0

精华

大宗师

F 币
3793 元
贡献
2268 点
楼主
发表于 2019-5-9 10:04:48 | 显示全部楼层
[Fortran] 纯文本查看 复制代码
! MKL库函数求解线性方程组
include 'lapack.f90'
program test 
use lapack95
integer,parameter::n=3
integer i
real(4)::a(n,n),b(n)
integer ipiv(n)
a=reshape([1,0,1,2,1,0,3,3,0],[n,n])
b(:)=[14,11,1]
call sgetrf(n,n,a,n,ipiv,i) !LU分解
call sgetrs( 'N', n, n, a, n, ipiv, b,n, i )
print*,b !1,2,3
pause
end program 

798

帖子

2

主题

0

精华

大宗师

F 币
3793 元
贡献
2268 点
沙发
发表于 2019-9-28 16:32:11 | 显示全部楼层
本帖最后由 li913 于 2019-9-28 16:57 编辑

给你的例子,你能得到正确结果不?我自己测试了一下,新版本ivf的结果不对。所以,你需要试试新的代码。
[Fortran] 纯文本查看 复制代码
! MKL库函数求解线性方程组
! 依赖 mkl_lapack95.lib
program test 
use lapack95
integer,parameter::n=3
integer i
real(4)::a(n,n), b(n)
integer ipiv(n)
a=reshape([1,0,1,2,1,0,3,3,0],[n,n])
b(:)=[14,11,1]
call getrf(a,ipiv,i)   !LU分解
call getrs(a,ipiv, b)  !a,b均被覆盖
print*,b !1,2,3
pause
end program 

QQ截图20190928123041.png (114.18 KB, 下载次数: 197)

QQ截图20190928123041.png
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-5-5 15:20

Powered by Tencent X3.4

© 2013-2024 Tencent

快速回复 返回顶部 返回列表