How do I show a quiver plot from a matrix?
5 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I am trying to graph this direction field:
x' = (1 1; 4 1)x
This is my code:
a = [1 1;4 1];
x = [x y];
[x,y] = meshgrid(-10:1:10,-10:1:10);
dx = 1;
dy = a.*x.*1;
r = ( dx.^2 + dy.^2 ).^0.5;
u = dx./r;
v = dy./r;
figure
quiver(x,y,u,v);
It returns this error:
ꕋerror: QuiverPlot: product: nonconformant arguments (op1 is 2x2, op2 is 21x21)
error: called from
QuiverPlot at line 5 column 4
I guess my x vector does not have the same dimension as my a vector, even though a has two columns and x has two rows.
As a side note, this problem was given by Boyce and Diprima's textbook with no context regarding the code.
1 comentario
Respuestas (1)
Cris LaPierre
el 14 de Jul. de 2020
The issue is with your calculation of dy. Variable a is 2x2, but t is 42x21.
2 comentarios
Cris LaPierre
el 20 de Jul. de 2020
Editada: Cris LaPierre
el 20 de Jul. de 2020
Because you create it using x and y, specifically placing y directly underneath x, and they are each 21x21. Perhaps take a look at the documentation for meshgrid.
Ver también
Categorías
Más información sobre Data Distribution Plots 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!