## 2020年1月21日火曜日

### 数学 - Python - 図形と代数の交錯する世界 - 平面上のベクトル - ベクトルとその演算 - ベクトルの成分 - 成分表示、大きさ

1. 成分表示。

$\begin{array}{l}\stackrel{\to }{AB}\\ =\left(3,1\right)-\left(-1,-2\right)\\ =\left(4,3\right)\\ \stackrel{\to }{BC}\\ =\left(1,9\right)-\left(3,1\right)\\ =\left(-2,8\right)\\ \stackrel{\to }{CA}\\ =\left(-1,-2\right)-\left(1,9\right)\\ =\left(-2,-11\right)\end{array}$

大きさ。

$\begin{array}{l}\left|\stackrel{\to }{AB}\right|\\ =\sqrt{{4}^{2}+{3}^{2}}\\ =\sqrt{16+9}\\ =\sqrt{25}\\ =5\\ \left|\stackrel{\to }{BC}\right|\\ =\sqrt{4+64}\\ =2\sqrt{1+16}\\ =2\sqrt{17}\\ \left|\stackrel{\to }{CA}\right|\\ =\sqrt{4+121}\\ =\sqrt{125}\\ =5\sqrt{5}\end{array}$

コード

#!/usr/bin/env python3
from unittest import TestCase, main
from sympy import pprint, symbols, Matrix, sqrt

print('2.')

a = Matrix([-1, -2])
b = Matrix([3, 1])
c = Matrix([1, 9])

class MyTestCase(TestCase):
def test_ab(self):
t = b - a
self.assertEqual(t, Matrix([4, 3]))
self.assertEqual(t.norm(), 5)

def test_bc(self):
t = c - b
self.assertEqual(t, Matrix([-2, 8]))
self.assertEqual(t.norm(), 2 * sqrt(17))

def test_ca(self):
t = a - c
self.assertEqual(t, Matrix([-2, -11]))
self.assertEqual(t.norm(), 5 * sqrt(5))

if __name__ == '__main__':
main()


% ./sample6.py -v
6.
test_ab (__main__.MyTestCase) ... ok
test_bc (__main__.MyTestCase) ... ok
test_ca (__main__.MyTestCase) ... ok

----------------------------------------------------------------------
Ran 3 tests in 0.045s

OK
%