next up previous
次へ: 5 Fileによる''Octave''の操作 上へ: octave_kiso 戻る: 3 Octaveの入門

Subsections

4 行列とベクトル(1)

4.1 行列演算

以下のような行列を入力するには、どのようすれば良いだろうか?
\begin{displaymath}
H1 = \left(
\begin{array}{ccc}
1 & 2 & 3 \\
4 & 5 & 6 \\
7 & 8 & 9
\end{array}\right)
\end{displaymath} (1)



それは、以下のように各行を'';''でくぎって入力すれば良い。
octave:4> H1 = [1 2 3; 4 5 6;7 8 9]
H1 =

  1  2  3
  4  5  6
  7  8  9


それでは、
\begin{displaymath}
H2 = \left(
\begin{array}{ccc}
11 & 12 & 13 \\
14 & 15 & 16 \\
17 & 18 & 19
\end{array}\right)
\end{displaymath} (2)

として、$H1\cdot H1$, $H1 + H2$, $H1 -
H2$, $H1\cdot H2$ を計算してみよ。

octave:6> H1 * H1
ans =

   30   36   42
   66   81   96
  102  126  150

octave:7> H1 * H1
ans =

   30   36   42
   66   81   96
  102  126  150

octave:8> H1 + H2
ans =

  12  14  16
  18  20  22
  24  26  28

octave:9> H1 - H2
ans =

  -10  -10  -10
  -10  -10  -10
  -10  -10  -10


octave:10> H1 * H2
ans =

   90   96  102
  216  231  246
  342  366  390

4.1.1 演習

次の行列を計算せよ。

4.2 ベクトル演算

以下のような2つのベクトルの内積はどのように計算すれば良いか。

\begin{eqnarray*}
A1 &=& \left[1, 2, 3 \right] \\
A2 &=& \left[4, 5, 6 \right] ...
... \left[4, 5, 6 \right] = 1\times4 + 2\times 5 + 3 \times 6 = 32
\end{eqnarray*}

これは以下のように行ベクトルと列ベクトルの積で表現します。

\begin{eqnarray*}
A1 &=& \left[1, 2, 3 \right] \\
A2 &=& \left[
\begin{array}{c}
4 \\
5 \\
6
\end{array}\right]
\end{eqnarray*}

それでは入力してみましょう。

octave:11> A1 = [1 2 3]
A1 =

  1  2  3

octave:12> A2 = [4;5;6]
A2 =

  4
  5
  6

octave:13> A1*A2
ans = 32

きちっと答が一致することが分かります。



Nobuo Nishimiya 平成17年7月6日