何も考えずにプログラムを作っていたら、配列の次元が7個を超えるとコンパイルできないらしい。
program test_array7 real( kind( 0d0 ) ) :: r( 1, 2, 3, 4, 5, 6, 7, 8 ) end program test_array7
これを gfortran でコンパイルすると
test_array7.f90:3:46: real( kind( 0d0 ) ) :: r( 1, 2, 3, 4, 5, 6, 7, 8 ) 1 Error: Array specification at (1) has more than 7 dimensions
添字が11個ある変数の計算しようとしていたので、これはちょっと困った。。。
構造体とかを使って、何とか逃げるしかないか。。。
ちなみに構造体なら7個以上の要素があっても大丈夫であった。
program test_type7 implicit none type :: test real( kind( 0d0 ) ) :: r1 real( kind( 0d0 ) ) :: r2 real( kind( 0d0 ) ) :: r3 real( kind( 0d0 ) ) :: r4 real( kind( 0d0 ) ) :: r5 real( kind( 0d0 ) ) :: r6 real( kind( 0d0 ) ) :: r7 real( kind( 0d0 ) ) :: r8 end type type( test ) :: t end program test_type7