大学院情報処理演習 第 3 回 (行列 ) 「行列」 講義ノート目次

行列やベクトルの復習は(数学の考え方) で行う。

数学では 1, .., n の n × n 行列で計算するが、 この講義では他のプログラミング言語での配列と同じにするため、 0 成分から始めることにする。

2 dim 配列

2 つの添字のある配列は、2 次元配列に適用することが多い。

     1 2     a00 a01
A = (   ) = (                             )
     3 4     a10 a11

Ruby 言語では

#!/usr/koeki/bin/ruby 

a = Array.new
a[0] = [1, 2]
a[1] = [3, 4]

と書いた。 Array.new は配列の大きさを知らせずに、変数 a に配列を代入する宣言であった。 Fortran では配列の大きさを知らせる必要がある。

	
      program mathn
      implicit none
      integer i, j
      real(8) a(0:1,0:1)
      a(0, 0:1) = (/ 1.0d0, 2.0d0 /)
      a(1, 0:1) = (/ 3.0d0, 4.0d0 /)
      do i = 0, 1
         write(*,*) (a(i,j), j = 0, 1)
      enddo 
      end program mathn

Fortran での添字は数学と同様 1 から始まる。 a(2,2) で定義することも可能である。ただし添字は 1 から開始される。 Ruby や C との互換性の問題を考え、 この講義では 0 から始める。そのため型宣言のときに開始番号を明示している。 また、a(n_1,..,n_n)まである場合、n_n が、配列の次元を表す。この場合は 2 次元の配列となる。