2018年12月25日火曜日

学習環境

ラング線形代数学(上)(S.ラング (著)、芹沢 正三 (翻訳)、ちくま学芸文庫)の2章(ベクトル空間)、3(基底)、練習問題2.を取り組んでみる。



    1. x = 1 x + y = 0 y = - 1 1 , - 1

    2. x + y = 2 - x + y = 1 2 y = 3 y = 3 2 x = 1 2 1 2 , 3 2

    3. 2 x - y = 1 x = 1 y = 1 1 , 1

    4. 2 x - y = 4 x = 3 y = 2 3 , 2

コード(Emacs)

Python 3

#!/usr/bin/env python3
from sympy import pprint, symbols, Matrix, solve

print('1.')

x1, x2 = symbols('x1, x2')
tss = [((1, 0), (1, 1), (0, 1)),
       ((2, 1), (1, - 1), (1, 1)),
       ((1, 1), (2, 1), (-1, 0)),
       ((4, 3), (2, 1), (-1, 0))]


for i, (x, a, b) in enumerate(tss):
    print(f'({chr(ord("a") + i)})')
    X = Matrix(x)
    A = Matrix(a)
    B = Matrix(b)
    pprint(solve(X - (x1 * A + x2 * B), dict=True))
    print()

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

$ ./sample2.py
1.
(a)
[{x₁: 1, x₂: -1}]

(b)
[{x₁: 1/2, x₂: 3/2}]

(c)
[{x₁: 1, x₂: 1}]

(d)
[{x₁: 3, x₂: 2}]

$

0 コメント:

コメントを投稿