MatLab Eigenvector Graphical Representation for 4x4 matrix
14 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
GABBA
el 20 de Mayo de 2016
Comentada: John D'Errico
el 20 de Mayo de 2016
To find the graphical representation of the eigenvectors of a 2x2 matrix, I know that you can use eigshow(), and the major axis of the ellipse are the eigenvectors.
But, how do you represent the eigenvectors of a 4x4 matrix graphically in MatLab? eigshow() only works for 2x2 matrices.
0 comentarios
Respuesta aceptada
John D'Errico
el 20 de Mayo de 2016
Editada: John D'Errico
el 20 de Mayo de 2016
Ok, so you want to plot something in 4 dimensions. After all, that is what the eigenvectors of a 4x4 matrix would be. It is nice to have goals in life. It is better yet to have realistic goals.
Unless of course, you have a working, 4 dimensional monitor. Mine is still out to the repair shop, along with my Holodeck. They just can't get parts these days. :) I suppose, since those parts would necessarily come from the future, it may be a few years before they arrive. Do you know if UPS has time machine delivery?
The fact is, much of mathematics requires you to understand something that cannot be seen in one or two or even three dimensions. One needs to learn to do that. Often the trick is to visualize a comparable problem in a low number of dimensions, and then to recognize how similar behavior still applies in some high number of dimensions.
4 comentarios
Roger Stafford
el 20 de Mayo de 2016
@Gabba: If you were attempting to visualize four-dimensional eigenvalues, that could be done as four points in a two-dimensional complex plane. For four-dimensional eigenvectors the human brain is very poorly equipped with the capacity to envision them in graphical form.
John D'Errico
el 20 de Mayo de 2016
Numbers are just that, just numbers. Abstract symbols only. Without context, they mean nothing. For that matter, a plot is just some squiggles on the screen, when viewed without context.
Lets see what we can do though. Suppose I posed the matrix:
syms x
A = magic(4)
A(2,2) = x;
A(2,3) = 1-x;
So, we have a symbolic matrix.
A
A =
[ 16, 2, 3, 13]
[ 5, x, 1 - x, 8]
[ 9, 7, 6, 12]
[ 4, 14, 15, 1]
[V,D] = eig(A);
Don't display them. It gets really nasty even for such a small problem.
V1 = matlabFunction(V(:,1));
V1(2)
ans =
-0.40748 + 1.0661e-16i
-0.46372 - 1.8597e-15i
-0.29091 + 1.8934e-15i
1 + 0i
Ok, so we might decide to plot those numbers as a function of index on the x axis, and then plot several such vectors, varying x. Only take the real part of course, since V1 will be real here, with garbage imaginary part.
figure
hold on
for xval = 0:1:20
plot(1:4,real(V1(xval)),'-')
end
grid on

So, with a little more work, we could do things like add legend, titles, etc., that describe what the plot is and what it means.
That plot means nothing out of context of course. But you can view it as the evolution of one eigenvector as a function of a parameter in that matrix.
Be careful, as eig can get tricky. An eigenvector is not unique. In fact, the sign may change arbitrarily. As well, all sorts of strange things can occur, but this may be the reason why you were asked to solve this problem.
Más respuestas (0)
Ver también
Categorías
Más información sobre Special Values en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!