Contact
CoCalc Logo Icon
StoreFeaturesDocsShareSupport News AboutSign UpSign In
| Download

All published worksheets from http://sagenb.org

Views: 168759
Image: ubuntu2004
A = matrix(3, 3, [1, 2, 0, 2, 1, 2, 1, 2, 3]) # 행렬 A, 3행 3열 print(A) # 행렬 A 출력
[1 2 0] [2 1 2] [1 2 3]
x = matrix(3, 1, [1, 1, 1]) # 열벡터 x. 3행 1열 print(x) # 벡터 x 출력
[1] [1] [1]
K10 = (A^10) * x # K10은 A의 10 거듭제곱에 열벡터를 곱한 벡터 K11 = (A^11) * x # K11는 A의 11 거듭제곱에 열벡터를 곱한 벡터 print(K10) # K10 출력 print # 둘 사이의 공간 print(K11) # K11 출력
[3498205] [6681695] [9264127] [16861595] [32206359] [44653976]
PMev10 = K11[0][0] / K10[0][0] # 우세한(dominant) 고유값은 K10, K11 각각의 첫 번째 성분을 나눈 값으로 구할 수 있습니다. print(PMev10.n()) # PMev10 출력, .n()은 값을 소수 형태로 출력합니다.
4.82007057905412
print(n((1/K2[0][0]) * K2)) # 우세한 고유값에 대응하는 고유벡터, n은 값을 소수 형태로 출력합니다.
[1.00000000000000] [1.91004225875429] [2.64826524418360]
A.eigenvalues() # A의 고유값
[-1.279452315768607?, 1.459362941393819?, 4.820089374374788?]
# 위의 10, 11 거듭 제곱을 100, 101에 대해서도 해보자. K100 = (A^100) * x # K100은 A의 100 거듭제곱에 열벡터를 곱한 벡터 K101 = (A^101) * x # K101는 A의 101 거듭제곱에 열벡터를 곱한 벡터 PMev100 = K101[0][0] / K100[0][0] # 우세한(dominant) 고유값은 K10, K11 각각의 첫 번째 성분을 나눈 값으로 구할 수 있습니다. print(PMev100.n()) # PMev100 출력, .n()은 값을 소수 형태로 출력합니다.
4.82008937437479