linux数组fortran,fortran数组输出,行与列请教 - 程序语言 - 小木虫 - 学术 科研 互动社区...

afe3d65d13ca126bb2a1e712c07d7afd.png

jingjingdou

这是do的嵌套循环,首先执行的是小循环,即:

do j2=1,n

write(2,*)j1,j2,real(H0(j1,j2)

enddo

此次循环执行完毕在执行外部循环,即:

do j1=1,n

…………………………

enddo

数组H0(N,N)的输出即先输出第一行的所有元素(H0(1,j2)j2=1,…n),之后第二行(H0(2,j2),j2=1,…n),直至第n行所有元素。

楼主的程序是按照您所说的顺序输出的。

只是这个“real(H0(j1,j2) ”是不是少了个括号,还是另有其他含义?

2acd523709d5fd854545bd30bf4de8bf.png

田山东

引用回帖:

jingjingdou at 2012-12-27 14:21:34

这是do的嵌套循环,首先执行的是小循环,即:

do j2=1,n

write(2,*)j1,j2,real(H0(j1,j2)

enddo

此次循环执行完毕在执行外部循环,即:

do j1=1,n

……………… ...

我复制的时候漏掉一个),谢谢。我感觉好像不对啊。同一个矩阵,我用matlab输出和用上面的方法输出得到的结果恰好厄米。也就是说,

H(1,2)是第一列第二行了。

很奇怪,很纠结!!

2acd523709d5fd854545bd30bf4de8bf.png

田山东

多谢,刚刚仔细检查了一下,我错了。你说的是对的。

afe3d65d13ca126bb2a1e712c07d7afd.png

jingjingdou

引用回帖:

jingjingdou at 2012-12-27 14:21:34

这是do的嵌套循环,首先执行的是小循环,即:

do j2=1,n

write(2,*)j1,j2,real(H0(j1,j2)

enddo

此次循环执行完毕在执行外部循环,即:

do j1=1,n

……………… ...

好像matlab和fortran的读写方法有所不同,我用的fortran,matlab接触不多。在fortran里面,这个读写顺序应该就是上面那样没错。

2acd523709d5fd854545bd30bf4de8bf.png

田山东

引用回帖:

jingjingdou at 2012-12-27 14:21:34

这是do的嵌套循环,首先执行的是小循环,即:

do j2=1,n

write(2,*)j1,j2,real(H0(j1,j2)

enddo

此次循环执行完毕在执行外部循环,即:

do j1=1,n

……………… ...

我有个程序,里面要用到调用矩阵求逆的子函数,

call ZGETRF( N, N, TA, N, IPIV, INFO )

call ZGETRI( N, TA, N, IPIV, WORK, N, INFO )

linux下,装的interfortran,

/opt/intel/mkl/lib/intel64

这是intel64所在的目录,如果我想调用这两个库函数,该在后面加哪个命令呢?我打开这个目录看了,里面有好多,不知道该用哪个啊,是不是如果知道用哪个的话这样就可以了啊?

gfortran 222bylag.f –L/opt/intel/mkl/lib/intel64  -llibmkl_avx.so.......

libmkl_avx2.so                  libmkl_intel_lp64.so

libmkl_avx.so                   libmkl_intel_sp2dp.a

libmkl_blacs_ilp64.a            libmkl_intel_sp2dp.so

libmkl_blacs_intelmpi_ilp64.a   libmkl_intel_thread.a

libmkl_blacs_intelmpi_ilp64.so  libmkl_intel_thread.so

libmkl_blacs_intelmpi_lp64.a    libmkl_lapack95_ilp64.a

libmkl_blacs_intelmpi_lp64.so   libmkl_lapack95_lp64.a

libmkl_blacs_lp64.a             libmkl_mc3.so

libmkl_blacs_openmpi_ilp64.a    libmkl_mc.so

libmkl_blacs_openmpi_lp64.a     libmkl_p4n.so

libmkl_blacs_sgimpt_ilp64.a     libmkl_pgi_thread.a

libmkl_blacs_sgimpt_lp64.a      libmkl_pgi_thread.so

libmkl_blas95_ilp64.a           libmkl_rt.so

libmkl_blas95_lp64.a            libmkl_scalapack_ilp64.a

libmkl_cdft_core.a              libmkl_scalapack_ilp64.so

libmkl_cdft_core.so             libmkl_scalapack_lp64.a

libmkl_core.a                   libmkl_scalapack_lp64.so

libmkl_core.so                  libmkl_sequential.a

libmkl_def.so                   libmkl_sequential.so

libmkl_gf_ilp64.a               libmkl_vml_avx2.so

libmkl_gf_ilp64.so              libmkl_vml_avx.so

libmkl_gf_lp64.a                libmkl_vml_cmpt.so

libmkl_gf_lp64.so               libmkl_vml_def.so

libmkl_gnu_thread.a             libmkl_vml_mc2.so

libmkl_gnu_thread.so            libmkl_vml_mc3.so

libmkl_intel_ilp64.a            libmkl_vml_mc.so

libmkl_intel_ilp64.so           libmkl_vml_p4n.so

libmkl_intel_lp64.a             locale

afe3d65d13ca126bb2a1e712c07d7afd.png

jingjingdou

引用回帖:

田山东 at 2012-12-27 21:09:39

我有个程序,里面要用到调用矩阵求逆的子函数,

call ZGETRF( N, N, TA, N, IPIV, INFO )

call ZGETRI( N, TA, N, IPIV, WORK, N, INFO )

linux下,装的interfortran,

/opt/intel/mkl/lib/intel64

...

实话说,我不大懂你所阐述的内容,我只是在windows下用的fortran语言,刚在百度里看了下,好复杂,看不懂。只copy了一个相关的内容:

http://zhidao.baidu.com/question/189009859.html

不晓得有没有用,

noavatar.png

lastfreedom

引用回帖:

田山东 at 2012-12-27 21:09:39

我有个程序,里面要用到调用矩阵求逆的子函数,

call ZGETRF( N, N, TA, N, IPIV, INFO )

call ZGETRI( N, TA, N, IPIV, WORK, N, INFO )

linux下,装的interfortran,

/opt/intel/mkl/lib/intel64

...

楼主去这看看,很详细,或者看手册也行

http://software.intel.com/sites/products/mkl/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值