2020年4月13日月曜日

学習環境

解析入門 原書第3版 (S.ラング(著)、松坂 和夫(翻訳)、片山 孝次(翻訳)、岩波書店)の第Ⅵ部(多変数の関数)、第19章(多変数の関数)、3(微分可能性と勾配)の練習問題6の解答を求めてみる。



    1. h2+3hkh2+3hkh2+3|hkH2+3HHH2+3H24H2

    2. h3+h2k+k3h3+h2k+k3H3+H3+H33H3

    3. 3hk2+2h33H3+2H35H3

    4. h+k4=h4+4h3k+6h2k2+4hk3+k416H4

    5. h+k3=h3+3h2k+3hk2+k38H2

コード

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

print('6.')


class TestInequalities(TestCase):
    def test(self):
        h, k = symbols('h, k', real=True)
        for _ in range(10):
            h, k = [random.randrange(-100, 101) for _ in range(2)]
            H = Matrix([h, k])
            for a, (b, c) in [(h ** 2 + 3 * h * k, (4, 3)),
                              (h ** 3 + h ** 2 *
                               k + k ** 3, (3, 3)),
                              (3 * h * k ** 2 + 2 * h ** 3, (5, 3)),
                              ((h + k) ** 4, (16, 4)),
                              ((h + k) ** 3, (3, 3))]:
                self.assertLessEqual(abs(a), b * H.norm() ** c)


if __name__ == "__main__":
    main()

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

% ./sample6.py -v
6.
test (__main__.TestInequalities) ... ok

----------------------------------------------------------------------
Ran 1 test in 0.097s

OK
%

0 コメント:

コメントを投稿