2020年2月7日金曜日

学習環境

新装版 数学読本3 (松坂 和夫(著)、岩波書店)の第9章(図形と代数の交錯する世界 - 平面上のベクトル)、9.1(ベクトルとその演算)、内積を成分で表すことの問17の解答を求めてみる。



    1. a·a+xb=a·a+xa·b=a2+xa·b=2,32+x2,3·1,-1=13+x2-3=13-x13-x=0x=13

    2. 1,4·2+x,3-x=02+x+12-4x=0x=143

    3. a+xb·a-xb=0a2-x2b2=04+9-x21+1=0x2=132x=±132

コード

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

print('17.')

a = Matrix([2, 3])
b = Matrix([1, -1])
x = symbols('x')


class MyTestCase(TestCase):
    def test1(self):
        self.assertEqual(solveset(a.dot(a + x * b)), {13})

    def test2(self):
        self.assertEqual(solveset((a - b).dot(a + x * b)), {Rational(14, 3)})

    def test3(self):
        self.assertEqual(solveset((a + x * b).dot(a - x * b)),
                         {sign * sqrt(Rational(13, 2)) for sign in [-1, 1]})


if __name__ == "__main__":
    main()

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

% ./sample17.py -v
17.
test1 (__main__.MyTestCase) ... ok
test2 (__main__.MyTestCase) ... ok
test3 (__main__.MyTestCase) ... ok

----------------------------------------------------------------------
Ran 3 tests in 0.099s

OK
%

0 コメント:

コメントを投稿