>>380
:は指定した配列の範囲を一度に指定する表記

配列の宣言を
real, dimension(1:5,1:5) :: a
real, dimension(1:5,1:5,1:10) :: b
としたとき

aと書いた場合は配列全体を指すので5×5の2次元配列を指す

a(1,1)は添え字を具体的な数で指定しているので一つの変数を指している

a(:,:)は添え字が全て:なので二つの添え字が全範囲を指定している
そのためaと書いた場合と同じ5×5の2次元配列を指す

a(:,1)と書いた場合は一つ目の添え字は全範囲を、
二つ目の添え字は具体的な数なので一つの成分を指定している
そのため5つの要素の1次元配列を指す

b(:,:,1)の場合bの最後の添え字は具体的な数なので
次元が一つ下がり、5×5の2次元配列となる

宣言の次元と計算途中で使われる次元は一致しなくて良い
NAGのサイトで部分配列で調べると良いよ