> with(LinearAlgebra); -1
 

A real matrix with two complex conjugate eigenvalues: 

> `assign`(B, Matrix(2, 2, [2, 2, -1, 2])); 1
 

`assign`(B, Matrix(%id = 134585660)) (1)
 

> `assign`(d, Determinant(B)); 1
 

6 (2)
 

Scale B to get a matrix with determinant 1: 

> `assign`(A, `/`(`*`(Matrix(2, 2, [2, 2, -1, 2])), `*`(sqrt(d)))); 1
 

`assign`(A, Matrix(%id = 135769912)) (3)
 

> Determinant(A); 1
 

1 (4)
 

> `assign`(lambda, S, Eigenvectors(A)); 1
 

`assign`(lambda, S, Vector[column](%id = 135769992), Matrix(%id = 135844544)) (5)
 

> `assign`(theta, argument(lambda[1])); 1
 

arctan(`+`(`*`(`/`(1, 6), `*`(`^`(3, `/`(1, 2)), `*`(`^`(6, `/`(1, 2))))))) (6)
 

> `assign`(R, Matrix(2, 2, [cos(theta), sin(theta), `+`(`-`(sin(theta))), cos(theta)])); 1
 

`assign`(R, Matrix(%id = 135845384)) (7)
 

> `assign`(T, Matrix(2, 2, [Re(S[1, 1]), Im(S[1, 1]), Re(S[2, 1]), Im(S[2, 1])])); 1
 

`assign`(T, Matrix(%id = 135845464)) (8)
 

> Typesetting:-delayDotProduct(Typesetting:-delayDotProduct(`/`(1, `*`(T)), A), T); 1
 

Matrix(%id = 135845728) (9)
 

> with(plots); -1
 

> `assign`(orbit, proc (P, u, T) local i, orb; description
`assign`(orbit, proc (P, u, T) local i, orb; description
`assign`(orbit, proc (P, u, T) local i, orb; description
`assign`(orbit, proc (P, u, T) local i, orb; description
`assign`(orbit, proc (P, u, T) local i, orb; description
`assign`(orbit, proc (P, u, T) local i, orb; description
`assign`(orbit, proc (P, u, T) local i, orb; description
`assign`(orbit, proc (P, u, T) local i, orb; description
 

> orbit(A, `<,>`(1, 0), 10); 1
 

[Vector[column](%id = 135845560), Vector[column](%id = 135869356), Vector[column](%id = 135885816), Vector[column](%id = 135885888), Vector[column](%id = 135885984), Vector[column](%id = 135902496), V...
[Vector[column](%id = 135845560), Vector[column](%id = 135869356), Vector[column](%id = 135885816), Vector[column](%id = 135885888), Vector[column](%id = 135885984), Vector[column](%id = 135902496), V...
(10)
 

> display(pointplot(orbit(A, `<,>`(1, 0), 50), symbol = solidcircle, symbolsize = 15, color = red, scaling = constrained), pointplot(orbit(A, `<,>`(1, 0), 50), connect = true, color = blue, scaling = co...
display(pointplot(orbit(A, `<,>`(1, 0), 50), symbol = solidcircle, symbolsize = 15, color = red, scaling = constrained), pointplot(orbit(A, `<,>`(1, 0), 50), connect = true, color = blue, scaling = co...
display(pointplot(orbit(A, `<,>`(1, 0), 50), symbol = solidcircle, symbolsize = 15, color = red, scaling = constrained), pointplot(orbit(A, `<,>`(1, 0), 50), connect = true, color = blue, scaling = co...
 

Plot_2d
 

> `assign`(C, `+`(`*`(1.01, `*`(A)))); 1
 

`assign`(C, Matrix(%id = 135936012)) (11)
 

> display(pointplot(orbit(C, `<,>`(1, 0), 50), symbol = solidcircle, symbolsize = 15, color = red, scaling = constrained), pointplot(orbit(C, `<,>`(1, 0), 50), connect = true, color = blue, scaling = co...
display(pointplot(orbit(C, `<,>`(1, 0), 50), symbol = solidcircle, symbolsize = 15, color = red, scaling = constrained), pointplot(orbit(C, `<,>`(1, 0), 50), connect = true, color = blue, scaling = co...
display(pointplot(orbit(C, `<,>`(1, 0), 50), symbol = solidcircle, symbolsize = 15, color = red, scaling = constrained), pointplot(orbit(C, `<,>`(1, 0), 50), connect = true, color = blue, scaling = co...
 

Plot_2d
 

> `assign`(E, `+`(`*`(.99, `*`(A)))); 1
 

`assign`(E, Matrix(%id = 135936092)) (12)
 

> display(pointplot(orbit(E, `<,>`(1, 0), 250), symbol = solidcircle, symbolsize = 15, color = red, scaling = constrained), pointplot(orbit(E, `<,>`(1, 0), 250), connect = true, color = blue, scaling = ...
display(pointplot(orbit(E, `<,>`(1, 0), 250), symbol = solidcircle, symbolsize = 15, color = red, scaling = constrained), pointplot(orbit(E, `<,>`(1, 0), 250), connect = true, color = blue, scaling = ...
display(pointplot(orbit(E, `<,>`(1, 0), 250), symbol = solidcircle, symbolsize = 15, color = red, scaling = constrained), pointplot(orbit(E, `<,>`(1, 0), 250), connect = true, color = blue, scaling = ...
 

Plot_2d
 

>