## 2473 days ago by Henryk

A = matrix(SR,[[2,-1],[1,2]]) # to jest macierz z Matwiejewa t = var('t') # szukamy rozwiązania x(y),y(t) x = function('x',t) y = function('y',t) C_1 = var('C_1') C_2 = var('C_2') A
 ```[ 2 -1] [ 1 2]```
S = matrix(SR,[[-I,I],[1,1]]); S
 ```[-I I] [ 1 1]```
S_inverse = S.inverse(); S_inverse
 ```[ 1/2*I 1/2] [-1/2*I 1/2]```
D = S_inverse*A*S; D
 ```[-I + 2 0] [ 0 I + 2]```
D_1 = matrix(SR,[[exp(t*(-I+2)),0],[0,exp(t*(I+2))]]); D_1; (matrix(SR,[[C_1,C_2]])*S*D_1*S_inverse)
 ```[e^(-(I - 2)*t) 0] [ 0 e^((I + 2)*t)] [1/2*I*(-I*C_1 + C_2)*e^(-(I - 2)*t) - 1/2*I*(I*C_1 + C_2)*e^((I + 2)*t) 1/2*(-I*C_1 + C_2)*e^(-(I - 2)*t) + 1/2*(I*C_1 + C_2)*e^((I + 2)*t)]```
x = 1/2*I*(-I*C_1 + C_2)*e^(-(I - 2)*t) - 1/2*I*(I*C_1 + C_2)*e^((I + 2)*t) y = 1/2*(-I*C_1 + C_2)*e^(-(I - 2)*t) + 1/2*(I*C_1 + C_2)*e^((I + 2)*t)
# uwaga, w tym przykładzie, trzeba wstawić wyliczona wielkość x to wolframalpha, # żeby się upewnić, że dziala, gdyż sage nie umie uprościć tego wyrażenia print (derivative(x,t)-2*x-y).simplify() print (derivative(y,t)+x-2*y).simplify()
 ```1/2*(-I*C_1 - C_2)*e^((I + 2)*t) + 1/2*(I*C_1 - C_2)*e^(-(I - 2)*t) + 1/2*I*(C_1 - I*C_2)*e^((I + 2)*t) - 1/2*I*(C_1 + I*C_2)*e^(-(I - 2)*t) -1/2*I*(-I*C_1 - C_2)*e^((I + 2)*t) + 1/2*I*(I*C_1 - C_2)*e^(-(I - 2)*t) + 1/2*(C_1 - I*C_2)*e^((I + 2)*t) + 1/2*(C_1 + I*C_2)*e^(-(I - 2)*t)```
x = C_2*e^(2*t)*sin(t)+C_1*e^(2*t)*cos(t) y = C_2*e^(2*t)*cos(t)-C_1*e^(2*t)*sin(t)
(derivative(x,t)-2*x-y)
 `0`