2019年2月9日土曜日

学習環境

ラング線形代数学(上)(S.ラング (著)、芹沢 正三 (翻訳)、ちくま学芸文庫)の3章(行列)、2(行列の乗法)、練習問題12の解答を求めてみる。


  1. A 2 = [ 1 2 a 0 1 ] A 3 = [ 1 2 a 0 1 ] [ 1 a 0 1 ] = [ 1 3 a 0 1 ] A n = [ 1 n a 0 1 ]

コード

Python 3

#!/usr/bin/env python3
from sympy import pprint, symbols, randMatrix, Matrix
print('12.')

a = symbols('a')


def f(i, j):
    if i == 0 and j == 1:
        return a
    if i <= j:
        return 1
    return 0


A = Matrix([[f(i, j) for j in range(2)]
            for i in range(2)])
pprint(A)
print()
for n in range(1, 6):
    print(f'A^{n}')
    pprint(A ** n)

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

C:\Users\...> py -3 sample10.py
12.
⎡1  a⎤
⎢    ⎥
⎣0  1⎦

A^1
⎡1  a⎤
⎢    ⎥
⎣0  1⎦
A^2
⎡1  2⋅a⎤
⎢      ⎥
⎣0   1 ⎦
A^3
⎡1  3⋅a⎤
⎢      ⎥
⎣0   1 ⎦
A^4
⎡1  4⋅a⎤
⎢      ⎥
⎣0   1 ⎦
A^5
⎡1  5⋅a⎤
⎢      ⎥
⎣0   1 ⎦

C:\Users\...>

0 コメント:

コメントを投稿