我需要输出一个带FORTRAN的矩阵。我有一个计算值的工作代码,但我得到一个列而不是矩阵。矩阵很大,ixj = ~2000x2000。
以下是我的示例代码:
open(19, file="results1.txt", status="old", position="rewind",
& action="write")
do j=0,p
do i=0,o
write(19,*) mat_user_yield_surface(d, eps(i), deps(j), 200.0d0)
end do
end do
close(19)
答案 0 :(得分:2)
使用隐含的do循环:
do j=0,p
write(19,'(2000g22.14)') (mat_user_yield_surface(d, eps(i), deps(j),200.0d0),i=0,o)
end do
我建议不要使用" o"作为变量名,因为它很容易与零混淆。
答案 1 :(得分:0)
这个“写(19,'(2000g22.14)')”完美无缺!谢谢。所以最终的代码是:
open(19, file="results1.txt", status="old", position="rewind",
& action="write")
do j=0,p
write(19,'(2000g22.14)') (mat_user_yield_surface(d, eps(i),
& deps(j), 200.0d0), i=0,o)
end do
close(19)