将子数组传递给Fortran子例程

时间:2017-12-02 12:42:51

标签: fortran

我创建了一个Fortran数组,比如说

real, dimension(4, 4) :: A

成为矩阵

1  2  3  4
5  6  7  8
9  10 11 12
13 14 15 16

我想把它传递给表格

的子程序
call MySoubroutine(A(2,2))

在我的子程序中获取此数组并修改其中的一些元素

real, dimension(:), intent(inout) : A

A(1,1) = 91
A(1, 2) = 92
A(2, 1) = 93
A(2, 2) = 94

因此,在我的主程序中调用函数后,数组A

1  2  3  4
5  91 92 8
9  93 94 12
13 14 15 16

实现这种行为的最佳方法是什么?

详细说明我的问题是:

  • 在子程序中使用子阵列有更好的方法吗?
  • 如何在子程序中声明数组?我只想传递指向第一个元素的指针,因此可能不知道子数组的维度。

0 个答案:

没有答案