未知のランクの引数を取るサブルーチンを Fortran でどのように処理するのが最善なのか疑問に思っています。例えば:
Real * 8 :: array1(2,2),array2(2,2,3)
call mysubroutine(array1)
call mysubroutine(array2)
今のところ、サブルーチンの形状 (ランクの数) を常に修正する必要があります。
たとえば、組み込みサブルーチンrandom_number ( array ) で実行できます。(でも、Fortran でコーディングされていないのでしょうか?)