2020年5月9日土曜日

学習環境

新装版 数学読本3 (松坂 和夫(著)、岩波書店)の第11章(立体的な広がりの中の図形 - 空間図形)、11.2(空間のベクトル)、ベクトルの内積の問12の解答を求めてみる。



    1. A B · A F = 1 · 2 cos π 4 = 1

    2. 2 · 2 · cos π 3 = 1

    3. 2 · 2 · cos π 2 = 0

    4. 2 · 2 cos π = - 2

    5. 3 · 2 · 2 3 = 2

    6. 1

    7. 3 2 · 2 · 2 3 = 1

    8. 2 2 · 2 cos 2 3 π = - 1 2

    9. 0

コード

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

print('12.')


class TestVector(TestCase):
    def test(self):
        a = Matrix([0, 0, 0])
        b = Matrix([0, 0, 1])
        c = Matrix([1, 0, 1])
        d = Matrix([1, 0, 0])
        e = Matrix([0, 1, 0])
        f = Matrix([0, 1, 1])
        g = Matrix([1, 1, 1])
        h = Matrix([1, 1, 0])
        p = (g - a) / 2
        q = (c + h) / 2
        s = [b.dot(f),
             f.dot(g - b),
             (g - b).dot(e - d),
             (e - d).dot(c - f),
             (e - c).dot(f - c),
             (d - a).dot(c - b),
             (p - e).dot(d - e),
             (q - c).dot(d - e),
             (p - a).dot(q - c)]
        t = [1, 1, 0, -2, 2, 1, 1, -Rational(1, 2), 0]
        for i, (s0, t0) in enumerate(zip(s, t), 1):
            print(f'({i})')
            self.assertEqual(s0, t0)


if __name__ == "__main__":
    main()

入出力結果(Zsh、PowerShell、Terminal、Jupyter(IPython))

% ./sample12.py -v
12.
test (__main__.TestVector) ... (1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
ok

----------------------------------------------------------------------
Ran 1 test in 0.037s

OK
%

0 コメント:

コメントを投稿