学習環境
- Surface
- Windows 10 Pro (OS)
- Nebo(Windows アプリ)
- iPad
- MyScript Nebo - MyScript(iPad アプリ(iOS))
- 参考書籍
続 解析入門 (原書第2版) (S.ラング(著)、松坂 和夫(翻訳)、片山 孝次(翻訳)、岩波書店)の第1章(ベクトル)、7(ベクトル積)の練習問題8の解答を求めてみる。
とおく。
CP 1について。
CP 2 について。
CP 3について。
任意の a に対して
CP 4について。
よって、
(証明終)
コード
#!/usr/bin/env python3
from unittest import TestCase, main
from sympy import Matrix, symbols
from sympy.abc import f
print('8.')
a = Matrix(symbols('a:3'))
b = Matrix(symbols('b:3'))
c = Matrix(symbols('c:3'))
def eq(x, y):
return all([x0.expand() == y0.expand() for x0, y0 in zip(x, y)])
class TestCrossProduct(TestCase):
def test1(self):
self.assertEqual(a.cross(b), -b.cross(a))
def test2(self):
self.assertTrue(eq(a.cross(b + c), a.cross(b) + a.cross(c)))
self.assertTrue(eq((b + c).cross(a), b.cross(a) + c.cross(a)))
def test3(self):
self.assertTrue(eq((f * a).cross(b), f * a.cross(b)))
self.assertTrue(f * a.cross(b), a.cross(f * b))
def test4(self):
self.assertTrue(eq(a.cross(b).cross(c), a.dot(c) * b - b.dot(c) * a))
if __name__ == "__main__":
main()
入出力結果(Zsh、PowerShell、Terminal、Jupyter(IPython))
% ./sample8.py -v
8.
test1 (__main__.TestCrossProduct) ... ok
test2 (__main__.TestCrossProduct) ... ok
test3 (__main__.TestCrossProduct) ... ok
test4 (__main__.TestCrossProduct) ... ok
----------------------------------------------------------------------
Ran 4 tests in 0.042s
OK
%
0 コメント:
コメントを投稿