2019年12月28日土曜日

学習環境

微分積分学 (ちくま学芸文庫) (吉田 洋一(著)、筑摩書房)のⅣ.(積分法)、2.(原始関数)、問1.の解答を求めてみる。



    1. 以下 C はそれぞれ積分定数。

      dx x = 2 x + C

    2. x 3 x dx = x 7 2 dx = 2 9 x 9 2 + C = 2 9 x 4 x + C

コード

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

print('1.')

x = symbols('x')
fs = [1 / sqrt(x),
      x ** 3 * sqrt(x)]


class MyTestCase(TestCase):
    def test1(self):
        self.assertEqual(Integral(fs[0], x).doit(), 2 * sqrt(x))

    def test2(self):
        i = Integral(fs[1], x).doit()
        self.assertEqual(i, 2 * x ** Rational(9, 2) / 9)
        self.assertEqual(i, 2 * x ** 4 * sqrt(x) / 9)


p = plot(*fs,
         (x, 0, 5),
         ylim=(0, 5),
         legend=True,
         show=False)

colors = ['red', 'green', 'blue', 'brown', 'orange',
          'purple', 'pink', 'gray', 'skyblue', 'yellow']

for o, color in zip(p, colors):
    o.line_color = color

p.show()
p.save('sample1.png')

if __name__ == '__main__':
    main()

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

% ./sample1.py -v
1.
test1 (__main__.MyTestCase) ... ok
test2 (__main__.MyTestCase) ... ok

----------------------------------------------------------------------
Ran 2 tests in 0.016s

OK
%

0 コメント:

コメントを投稿