2020年7月30日木曜日

学習環境

続 解析入門 (原書第2版) (S.ラング(著)、松坂 和夫(翻訳)、片山 孝次(翻訳)、岩波書店)の第2章(ベクトルの微分)、1(微分係数)の練習問題16の解答を求めてみる。



    1. X=(cos4·π8,sin4·π8,π8)+s(-4·sin4·π8,4cos4·π8,1)
      X=(0,1,π8)+s(-4,0,1)

    2. X=(1,2,1)+t(1,2,2)

    3. X=(e3,e-3,32)+t(3e3,-3e-3,32)

    4. X=(1,1,1)+t(1,3,4)

コード

#!/usr/bin/env python3
from sympy import Matrix, Derivative, sqrt, exp
from sympy.plotting import plot3d_parametric_line
from sympy.abc import t

print('16.')

ps = [
    (t, 2 * t, t ** 2),
    (exp(3 * t), exp(-3 * t), 3 * sqrt(2) * t),
    (t, t ** 3, t ** 4)
]
for i, p in enumerate(ps):
    a = chr(ord("b") + i)
    print(f'({a})')
    colors = ['red', 'green', 'blue', 'brown', 'orange',
              'purple', 'pink', 'gray', 'skyblue', 'yellow']
    m = Matrix(p)
    b = Derivative(m, t, 1).doit()
    p = plot3d_parametric_line(
        (*p, (t, -5, 5)),
        (*(m.subs({t: 1}) + t * b.subs({t: 1})), (t, -5, 5)),
        show=False,
        legend=True,
    )
    for o, color in zip(p, colors):
        o.line_color = color
    p.save(f'sample16_{a}.png')
p.show()

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

% ./sample16.py
16.
(b)
(c)
(d)
%

0 コメント:

コメントを投稿