2019年1月11日金曜日

学習環境

解析入門 原書第3版 (S.ラング(著)、松坂 和夫(翻訳)、片山 孝次(翻訳)、岩波書店)の第3部(積分)、第13章(積分の応用)、補充問題、曲線の長さの練習問題2の解答を求めてみる。


  1. 1 + d dx log x 2 dx = 1 + 1 x 2 dx = x 2 + 1 x dx t = x 2 + 1 dt dx = 1 2 · 2 x · 1 x 2 + 1 = x x 2 + 1 t x · x 2 + 1 x dt = t 2 x 2 dt = t 2 t 2 - 1 dt = t 2 - 1 + 1 t 2 - 1 dt = 1 + 1 t 2 - 1 dt = t + 1 t 2 - 1 dt a t + 1 + b t - 1 = a + b t + - a + b t 2 - 1 a + b = 0 - a + b = 1 2 b = 1 b = 1 2 a = - 1 2 1 t 2 - 1 dt = 1 2 1 t - 1 - 1 t + 1 dt = 1 2 log t - 1 - log t + 1 x = 1 2 , t = 5 2 x = 2 , t = 5

    よって求める曲線、対数関数の指示された区間における長さは、

    t 5 2 5 + 1 2 log t - 1 t + 1 5 2 5 = 5 - 5 2 + 1 2 log 5 - 1 5 + 1 - log 5 - 2 5 + 2 = 5 2 + 1 2 log 5 - 1 5 + 1 · 5 + 2 5 - 2 = 5 2 + 1 2 log 3 + 5 3 - 5 = 5 2 + 1 2 log 3 + 5 2 4 = 5 2 + log 3 + 5 2

コード

Python 3

#!/usr/bin/env python3
from sympy import pprint, symbols, Integral, Derivative, plot, sqrt, Rational
from sympy import log

x = symbols('x')

f = log(x)
I = Integral(sqrt(1 + Derivative(f, x, 1) ** 2), (x, Rational(1, 2), 2))

for t in [I, I.doit()]:
    pprint(t.simplify())
    print()

p = plot((f, (x, 0.1, Rational(1, 2))),
         (f, (x, Rational(1, 2), 2)),
         (f, (x, 2, 3)),
         legend=True, show=False)
colors = ['red', 'green', 'blue']
for i, color in enumerate(colors):
    p[i].line_color = color
p.save('sample2.png')

for t in [I.doit(), sqrt(5) / 2 + log((3 + sqrt(5)) / 2)]:
    print(float(t))

入出力結果(Terminal, cmd(コマンドプロンプト), Jupyter(IPython))

$ python3 sample1.py
1.
4                          
⌠                          
⎮      _________________   
⎮     ╱           2        
⎮    ╱  ⎛d ⎛ 3/2⎞⎞         
⎮   ╱   ⎜──⎝x   ⎠⎟  + 1  dx
⎮ ╲╱    ⎝dx      ⎠         
⌡                          
0                          

  8    80⋅√10
- ── + ──────
  27     27  

$

0 コメント:

コメントを投稿