• 目次
  • ベクトル
  • 内積
  • 位置ベクトル
  • ベクトルと平面
  • Python

ベクトルについて

ベクトルの定義

2次元のベクトルについて説明します。
定義(ベクトル)
点 $\mathrm{A}$ から点 $\mathrm{B}$ への矢印 $\overrightarrow{\mathrm{AB}}$ を考える。 このとき, 向きと大きさが等しい矢印は,始点や終点の位置によらず同一のものとみなす。 このような見方をする矢印をベクトルという。
2点 $\mathrm{A},\mathrm{B}$ と任意の点 $\mathrm{O}$ に対して, $$\begin{aligned} \overrightarrow{\mathrm{AB}} &= \overrightarrow{\mathrm{AO}}+\overrightarrow{\mathrm{OB}} \\ \overrightarrow{\mathrm{AO}} &= -\overrightarrow{\mathrm{OA}} \end{aligned}$$ である。これらを組み合わせると, $$\overrightarrow{\mathrm{AB}}=\overrightarrow{\mathrm{OB}}-\overrightarrow{\mathrm{OA}}$$ と表すことができる。
ベクトルの大きさ
ベクトル $\vec{a}$ の大きさ(ノルム)を $|\vec{a}|$ と表す。
2つの(通常の)ベクトル $\vec{a}$, $\vec{b}$ を考える。
スカラー倍
実数 $k$ に対して, $k\vec{a}$ を次のように定義する。
$k>0$ のとき,$k\vec{a}$ は $\vec{a}$ と同じ向きで, 大きさが $k$ 倍されたベクトル。
$k<0$ のとき, $k\vec{a}$ は $\vec{a}$ と反対向きで, 大きさが $|k|$ 倍されたベクトル。
$k=0$ のとき, $0\vec{a}$ は大きさが $0$ のベクトル(ゼロベクトル $\vec{0}$)。
ベクトルの加法と減法
$\vec{a}+\vec{b}$ は, $\vec{a}$ の終点に $\vec{b}$ の始点がくるように $\vec{b}$ を平行移動したときに, $\vec{a}$ の始点から平行移動後の $\vec{b}$ の終点までのベクトルである。
$\vec{a}-\vec{b}$ は $\vec{a}$ に $\vec{b}$ の逆向きのベクトルを加えたものとして定義される。 $$\vec{a}-\vec{b}:=\vec{a}+(-\vec{b})$$
単位ベクトル
大きさが $1$ のベクトルを 単位ベクトル という。 零でないベクトル $\vec{a}$ に対して, $\vec{a}$ と平行な単位ベクトルは, $$ \frac{\vec{a}}{|\vec{a}|}, \quad -\frac{\vec{a}}{|\vec{a}|} $$ である。$\vec{a}$ と同じ向きの単位ベクトルは前者のみである。


ベクトルの成分表示

ベクトルの成分表示について紹介します。
成分表示
2次元ベクトルは, $x$ 方向および $y$ 方向の成分によって表される。 ベクトル $\vec{a}$ の $x$ 方向成分を $x$, $y$ 方向成分を $y$ とすると, $$\vec{a}=(x, y)$$ と成分表示できる。
成分表示は縦に並べた形で $$\vec{a}=\begin{pmatrix}x \\ y\end{pmatrix}$$ と書くこともある。
成分の計算
$\overrightarrow{a}=(x_1,y_1)$, $\overrightarrow{b}=(x_2,y_2)$ について,
スカラー倍:$k(x_1,y_1)=(kx_1, ky_1)$
加法:$(x_1,y_1)+(x_2,y_2)=(x_1+x_2,\;y_1+y_2)$
減法:$(x_1,y_1)-(x_2,y_2)=(x_1-x_2,\;y_1-y_2)$
ベクトルの大きさ
ベクトル $\vec{a}=(x,y)$ の大きさ(ノルム)は $$|\vec{a}|=\sqrt{x^2+y^2}$$ である。

一次独立性

一次独立性
2つのベクトル $\vec{a}, \vec{b}$ に対して, $$s\vec{a}+t\vec{b}=\vec{0}$$ を満たす実数 $s, t$ が $$s=0, t=0$$ の場合に限られるとき, $\vec{a}$ と $\vec{b}$ は一次独立(線型独立)であるという。 一次独立でないとき, 2つのベクトルは一次従属(線型従属)という。
ベクトルの分解
2つのベクトル $\vec{a}, \vec{b}$ が一次独立であるとする。平面上のどんなベクトル $\vec{p}$ であっても, 実数 $s$ と $t$ を用いて, $$\vec{p} = s\vec{a}+t\vec{b}$$ と表すこと(分解すること)ができる。 このときのベクトルの表し方(係数)は一意的である。つまり, $$ s\vec{a}+t\vec{b}=s'\vec{a}+t'\vec{b} $$ であるとすると, $s = s'$ かつ $t=t'$ である。
基底
ベクトルの集合が一次独立であり, かつ, ある空間のすべてのベクトルを線形結合で表せるとき, その集合をその空間の基底という。

ベクトルの内積

ベクトルの内積

ベクトルの内積について解説します。
定義(内積)
ベクトル $\vec{a}$ と $\vec{b}$ に対して, 内積。 を $$\vec{a}\cdot\vec{b}= |\vec{a}| |\vec{b}| \cos \theta$$ で定義する。ここで, $\theta$ は2つのベクトルのなす角度である。
内積の成分表示
$\vec{a}=(x_1,y_1)$,$\vec{b}=(x_2,y_2)$ に対して, 内積は $$\vec{a}\cdot\vec{b}=x_1x_2+y_1y_2$$ となる。 ※証明はこちら。
内積は,ベクトルの位置によらず,平行移動同値な代表元に対して同じ値をとる。(well-definedである。)
内積の性質
2次元ベクトル $\vec{a},\vec{b},\vec{c}$ と実数 $k$ に対して, 内積には次の性質が成り立つ。
対称性: $$\vec{a}\cdot\vec{b}=\vec{b}\cdot\vec{a}$$
分配法則: $$\vec{a}\cdot(\vec{b}+\vec{c})=\vec{a}\cdot\vec{b}+\vec{a}\cdot\vec{c}$$
スカラー倍との関係: $$(k\vec{a})\cdot\vec{b}=k(\vec{a}\cdot\vec{b})$$
自己内積: $$\vec{a}\cdot\vec{a}=|\vec{a}|^2$$
非負性: $$\vec{a}\cdot\vec{a}\ge 0$$ 等号が成立は $\vec{a}=\vec{0}$ のときに限る。
内積の計算
次の計算はよく使う: $$ |\vec{a} + \vec{b}|^2 = |\vec{a}|^2 + 2 \vec{a} \cdot \vec{b} + |\vec{b}|^2 $$


平行条件と垂直条件

$\vec{a} = (a_1, a_2)$ と $\vec{b} =(b_1, b_2)$ の関係を整理します。
平行条件
2つのベクトル $\vec{a}, \vec{b}$ について, 以下のいずれかが成り立つとき, $\vec{a}$ と $\vec{b}$ は平行である。
ある実数 $k$ が存在して, 次が成り立つ: $$ \vec{a} = k\vec{b} $$
内積を用いると, 次が成り立つ: $$ |\vec{a} \cdot \vec{b}| = |\vec{a}|\,|\vec{b}| $$
成分表示で次が成り立つ: $$ a_1 b_2 - a_2 b_1 = 0 $$
垂直条件
2つのベクトル $\vec{a}, \vec{b}$ について, 以下のいずれかが成り立つとき, $\vec{a}$ と $\vec{b}$ は垂直である。
内積を用いると, 次が成り立つ: $$ \vec{a}\cdot\vec{b}=0 $$
成分表示では, 次が成り立つ: $$ a_1 b_1 + a_2 b_2 = 0 $$
三角形の面積
ベクトル $\vec{a}, \vec{b}$ が作る三角形の面積 $S$ について, 次が成り立つ。
内積を用いると, 面積 $S$ は次の式で表される: $$ S = \frac{1}{2} \sqrt{|\vec{a}|^2 |\vec{b}|^2 - (\vec{a} \cdot \vec{b})^2} $$
成分表示では, 次の式で与えられる: $$ S = \frac{1}{2}\,|a_1 b_2 - a_2 b_1| $$

正射影ベクトル

定義(正射影ベクトル)
$\vec{b}$ の $\vec{a}$ への※正射影ベクトルとは, $$\vec{b} = \vec{b}_a + \vec{b}^{\perp}$$ と分解したときの $\vec{b}_a$ である。 ここで, $\vec{b}_a$ は $\vec{a}$ と同方向のベクトルであり, $\vec{b}^{\perp}$ は $\vec{a}$ に直交する方向のベクトルである。
正射影ベクトルの公式
$\vec{a} \neq 0$ とする。ベクトル $\vec{b}$ のベクトル $\vec{a}$ への正射影ベクトル $\vec{b}_a$ は, 次の式で表される: $$ \vec{b}_a = \left( \vec{b} \cdot \frac{\vec{a}}{|\vec{a}|} \right) \frac{\vec{a}}{|\vec{a}|} = \frac{\vec{b} \cdot \vec{a}}{|\vec{a}|^2} \vec{a}. $$ なお, $|\vec{b}_a| = |\cos \theta| |\vec{b}|$ である。$\theta$ は $\vec{a}$ と $\vec{b}$ のなす角とする。※証明はこちら。

Cauchy–Schwarz 不等式

定理(コーシー=シュワルツの不等式)
2次元ベクトル $\vec{a}=(a_1,a_2)$ と $\vec{b}=(b_1,b_2)$ に対して, 次の不等式が成り立つ: $$ |\vec{a}\cdot\vec{b}| \le |\vec{a}|\,|\vec{b}|. $$ ※証明はこちら。

位置ベクトル

位置ベクトル

位置ベクトルと点の表記
点 $\mathrm{P}$ そのものをベクトル $\vec{p}$ によって表現することを位置ベクトルとして表すという。固定された原点 $\mathrm{O}$ に対して,  $\overrightarrow{\mathrm{OP}}=\vec{p}$ であるとき, $\mathrm{P}(\vec{p})$ と表す。

なお, 2点 $\mathrm{A}(\vec{a})$, $\mathrm{B}(\vec{b})$ の間のベクトルは $$\overrightarrow{\mathrm{AB}}=\vec{b}-\vec{a}$$ と表すことができる。
内分の公式
2点 $\mathrm{A}(\vec{a})$ と $\mathrm{B}(\vec{b})$ を結ぶ線分を, 比 $m:n$ で内分する点 $\mathrm{P}(\vec{p})$ は, $$ \vec{p} = \frac{n \vec{a} + m \vec{b}}{m+n} $$ である。 ※証明はこちら。
外分の公式
2点 $\mathrm{A}(\vec{a})$ と $\mathrm{B}(\vec{b})$ を結ぶ線分を, 比 $m:n$ で外分する点 $\mathrm{Q}(\vec{q})$ は, $$ \vec{q} = \frac{-n \vec{a} + m \vec{b}}{m-n} $$ である。 ※証明はこちら。
中点と重心
2点 $\mathrm{A}(\vec{a})$ と $\mathrm{B}(\vec{b})$ の中点 $\mathrm{M}$ は $\displaystyle \mathrm{M}\left(\frac{\vec{a} + \vec{b}}{2}\right)$
3点 $\mathrm{A}(\vec{a})$ と $\mathrm{B}(\vec{b})$, $\mathrm{C}(\vec{c})$ を頂点とする三角形の重心 $\mathrm{G}$ は $\displaystyle \mathrm{G}\left(\frac{\vec{a} + \vec{b} + \vec{c}}{3}\right)$ である。【 証明
点の一致条件
点 $\mathrm{P}(\vec{p})$, $\mathrm{Q}(\vec{q})$ について, $\mathrm{P}$ と $\mathrm{Q}$ が一致するための必要十分条件は, それらの位置ベクトル $\vec{p}$ と $\vec{q}$ が一致することである。
ベクトル条件による点の存在範囲
平面上の3点 $\mathrm{A},\mathrm{B},\mathrm{C}$ と実数 $a,b,c$ に対して, 点 $\mathrm{P}$ が $$ a\overrightarrow{\mathrm{PA}} +b\overrightarrow{\mathrm{PB}} +c\overrightarrow{\mathrm{PC}} =\vec{0} $$ を満たすとする。 このとき, $$ a+b+c\neq 0 $$ であれば, 点 $\mathrm{P}$ は一意に定まり, その位置は $a,b,c$ の符号と大きさによって決まる。 特に, $$ a>0,\; b>0,\; c>0 $$ のとき, 点 $\mathrm{P}$ は三角形 $\mathrm{ABC}$ の内部に存在する。 また, ある係数が $0$ のとき, 点 $\mathrm{P}$ は対応する辺上に存在し, 係数の符号が異なる場合には, 点 $\mathrm{P}$ は三角形 $\mathrm{ABC}$ の外部に存在する。

ベクトルと平面図形

直線に関わる条件

3点の共線条件
3点 $\mathrm{A}(\vec{a})$, $\mathrm{B}(\vec{b})$, $\mathrm{C}(\vec{c})$ が同一直線上にある, つまり共線である条件は, $$\overrightarrow{\mathrm{AB}} \parallel \overrightarrow{\mathrm{AC}} \quad \Leftrightarrow \quad \vec{b}-\vec{a} = t (\vec{c}-\vec{a})$$ となる実数 $t$ が存在することと同値である。
直線上の位置ベクトル
直線上の 2 点 $\mathrm{A}(\vec{a})$, $\mathrm{B}(\vec{b})$ を結ぶ線上の任意の点 $\mathrm{P}(\vec{p})$ は, 1 つの実数 $t$ を用いて $$ \vec{p} = (1-t)\vec{a} + t \vec{b}, \quad t \in \mathbb{R} $$ と表すことができる。 さらに, $0 \le t \le 1$ であれば, $\vec{p}$ は線分 $\mathrm{AB}$ 上の点となり, $t < 0$ または $t > 1$ であれば, 線分の延長上にある。
2直線の交点をベクトルで求める方法
平面上の2直線を $$\begin{aligned} \ell_1&:\ \vec{x}=(1-s)\vec{a}+s\vec{b},\\ \ell_2&:\ \vec{x}=(1-t)\vec{a'}+t\vec{b'} \end{aligned}$$ とする。 2直線の交点 $\mathrm{P}$ が存在するとき, その位置ベクトル $\vec{p}$ は $$ (1-s)\vec{a}+s\vec{b}=(1-t)\vec{a'}+t\vec{b'} $$ を満たす $s$ と $t$ から定まる。 なお, この方程式が解をもたないときは2直線は平行であり, 解が無数に存在するときは2直線は一致する。


三角形の中心

三角形の中心を頂点で表示することができる;
三角形の頂点を $\mathrm{A}(\vec{a}), \mathrm{B}(\vec{b}), \mathrm{C}(\vec{c})$ とする。 また, $a=\mathrm{BC}, b=\mathrm{CA}, c=\mathrm{AB}$ とする。
重心 $\mathrm{G}(\vec{g})$
$$\displaystyle \vec{g}=\frac{\vec{a}+\vec{b}+\vec{c}}{3}$$ ※証明はこちら
外心 $\mathrm{O}(\vec{o})$
$$\displaystyle \vec{o} = \frac{\sin 2\mathrm{A} \, \vec{a} + \sin 2\mathrm{B} \, \vec{b} + \sin 2\mathrm{C} \, \vec{c}}{\sin 2\mathrm{A} + \sin 2\mathrm{B} + \sin 2\mathrm{C}}$$ ※証明はこちら
内心 $\mathrm{I}(\vec{i})$
$$\displaystyle \vec{i} = \frac{a \vec{a} + b \vec{b} + c \vec{c}}{a+b+c}$$ ※証明はこちら
垂心 $\mathrm{H}(\vec{h})$
$$\displaystyle \vec{h} = 3\vec{g}-2\vec{o}$$ ※証明はこちら(書き直す*)
傍心 $\mathrm{I}_\mathrm{A}(\vec{i}_\mathrm{A})$
$$\displaystyle \vec{i}_\mathrm{A} = \frac{-a \vec{a} + b \vec{b} + c \vec{c}}{-a + b + c} $$
※頂点 $\mathrm{A}$ に関する傍心 $\mathrm{I}_\mathrm{A}$
九点円の中心 $\mathrm{N}(\vec{n})$
$$\displaystyle \vec{n}=\frac{\vec{o}+\vec{h}}{2}$$
オイラー線の性質
三角形の重心 $\mathrm{G}$, 外心 $\mathrm{O}$, 垂心 $\mathrm{H}$ について, $$ \overrightarrow{\mathrm{OG}}=\frac{1}{3}\overrightarrow{\mathrm{OH}} $$ が成り立つ。すなわち, 点 $\mathrm{O},\mathrm{G},\mathrm{H}$ は一直線上にある。 ※証明はこちら


平面図形の応用(補足)

内積の性質と幾何学的応用
内積は「幾何学的な性質を決める最小の構成要素」として重の役割を持つ。内積が決まっていれば,幾何学の全ての量を定めることができる:
直線の長さ:ベクトル $\vec{a}$ の大きさは $$|\vec{a}| = \sqrt{\vec{a}\cdot\vec{a}}$$ で表される。
角度:2つのベクトル $\vec{a}, \vec{b}$ のなす角 $\theta$ は $$\cos \theta = \frac{\vec{a} \cdot \vec{b}}{|\vec{a}| |\vec{b}|}$$ で求められる。
直交性:2つのベクトル $\vec{a}, \vec{b}$ が垂直であるのは $$\vec{a} \cdot \vec{b} = 0$$ が成り立つときである。
平行性:2つのベクトル $\vec{a}, \vec{b}$ が平行であるのは, $$|\vec{a} \cdot \vec{b}| = |\vec{a}| |\vec{b}|$$ が成り立つときである。すなわち, 2本のベクトルの角度 $\theta = 0$ または $\theta = \pi$ のときを表す。
三角形の面積:辺ベクトル $\vec{a}, \vec{b}$ が作る三角形の面積 $S$ は $$S = \frac{1}{2} \sqrt{|\vec{a}|^2 |\vec{b}|^2 - (\vec{a} \cdot \vec{b})^2}$$ で表される。
曲線の長さ:関数 $y=f(x)$ の曲線の長さ $L$ は, 微小ベクトルの長さを用いて $$L = \int \sqrt{1 + (f'(x))^2} \, dx = \int |(1, f'(x))| \, dx$$ で表される。
垂線の足の公式
点 $\mathrm{A}$ の位置ベクトルを $\vec{a}$ とし, 直線 $\ell:\ \vec{x}=\vec{b}+t\vec{u}$ に対して, 点 $\mathrm{A}$ から $\ell$ に下ろした垂線の足を $\mathrm{H}$ とする。 このとき, $\mathrm{H}$ の位置ベクトル $\vec{h}$ は $$ \vec{h} =\vec{b} +\frac{(\vec{a}-\vec{b})\cdot\vec{u}}{\vec{u}\cdot\vec{u}}\vec{u} $$ で与えられる。 ※証明はこちら
ベクトルの共点条件
平面上の点 $\mathrm{A}(\vec{a}),\ \mathrm{B}(\vec{b}),\ \mathrm{C}(\vec{c})$ を考える。 点 $\mathrm{P}$ が辺 $\mathrm{BC}$ 上にあり, $$ \vec{p} = (1-\alpha)\vec{b} + \alpha \vec{c} \quad (\alpha \in \mathbb{R}) $$ と表されるとする。 同様に, 点 $\mathrm{Q}$ が辺 $\mathrm{CA}$ 上にあり, $$ \vec{q} = (1-\beta)\vec{c} + \beta \vec{a} \quad (\beta \in \mathbb{R}) $$ 点 $\mathrm{R}$ が辺 $\mathrm{AB}$ 上にあり, $$ \vec{r} = (1-\gamma)\vec{a} + \gamma \vec{b} \quad (\gamma \in \mathbb{R}) $$ と表されるとする。 このとき, 3 直線 $\mathrm{AP},\ \mathrm{BQ},\ \mathrm{CR}$ が 1 点で交わるための必要十分条件は, $$ \alpha \beta \gamma = 1 $$ である。
※本当に成り立つ?

Pythonコードについて

ベクトルのPythonコード

ベクトルはNumPyモジュールのarray([])で定義できる。
import numpy as np

# 2次元ベクトルの作成
a = np.array([1, 2])
b = np.array([3, 4])
ベクトルの加減, スカラー倍
ベクトル ab について, ベクトルの加法: c = a + b
ベクトル ab について, ベクトルの減法: d = a - b
ベクトル a のスカラー倍: e = 2 * a
内積・ノルム・単位ベクトル
NumPyを使って計算する:
ベクトル ab の内積: np.dot(a, b) で計算する
ベクトル a の大きさ(ノルム): np.linalg.norm(a) で計算する
ベクトル a の単位ベクトル: a / np.linalg.norm(a) で計算する
線形結合の例
2点 $\mathrm{A}(\vec{a}), \mathrm{B}(\vec{b})$ を結ぶ線上の任意の点 $\mathrm{P}(\vec{p})$ は, 線形結合で表すことができる。
p = 0.3 * a + 0.7 * b
ベクトルはMatPlotLibで図示できる:
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.lines import Line2D  # 凡例用

# ===ここでベクトルを追加できる===
# (始点x, 始点y, 終点x, 終点y, 名前, 色) 
vectors = [
    (0, 0, 2, 1, 'a', 'red'),
    (0, 0, 3, 4, 'b', 'blue'),
    (2, 1, 3, 4, 'p', 'green')
]

fig, ax = plt.subplots(figsize=(6,6))

for x0, y0, x1, y1, label, color in vectors:
    dx = x1 - x0
    dy = y1 - y0
    ax.quiver(x0, y0, dx, dy, angles='xy', scale_units='xy', scale=1, color=color)
    ax.scatter(x0, y0, color=color) #始点のプロット
    ax.scatter(x1, y1, color=color) #終点のプロット

# 軸の設定
all_x = [v[0] for v in vectors] + [v[2] for v in vectors]
all_y = [v[1] for v in vectors] + [v[3] for v in vectors]
ax.set_xlim([0, max(all_x)+1])
ax.set_ylim([0, max(all_y)+1])
ax.set_aspect('equal')
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_title('2D Vectors')
plt.grid(True)

# --- legend 用のダミーオブジェクトを作る ---
legend_elements = [
    Line2D([0], [0], color='red', lw=2, label='a'),
    Line2D([0], [0], color='blue', lw=2, label='b'),
    Line2D([0], [0], color='green', lw=2, label='p')
]

ax.legend(handles=legend_elements, loc='upper left')

plt.show()

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です