Creating a vector field
107 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hello everybody,
I am trying to create a vector field. The vector at each point is combined out of two others.
I tried
[x,y] = meshgrid(-2:.2:2,-2:.2:2) ; to create the points I want to take a look at
VectorX = [x./(2*pi*(x.^2+y.^2)),0]; is the Vector in the "x" direction
VectorY = [0,y./(2*pi*(x.^2+y.^2))]; is the Vector in the "y" direction
Vectortoplot = [(x./(2*pi*(x.^2+y.^2))),(y./(2*pi*(x.^2+y.^2)))];
quiver(x,y,Vectortoplot)
But all I get is an empty coordinat system form 0 to 1 in 0.1 steps in each direction. I am a little confused.
If you could help me, I would be very thankful.
2 commentaires
Jan
le 28 Nov 2012
Please learn how to format code in the forum. Inserting white lines does not look fancy.
Réponses (1)
Babak
le 28 Nov 2012
Modifié(e) : Babak
le 28 Nov 2012
I don't know why you put a zero at the end of VectorX and a zero at the beginning of VectorY which makes those lines incorrect.
Your usage of quiver doesn't seem to be proper either. quiver needs 4 inputs. See
doc quiver
on that.
Here's what I ran:
[x,y] = meshgrid(-2:.2:2,-2:.2:2) ; %to create the points I want to take a look at
VectorX = [x./(2*pi*(x.^2+y.^2))]; %is the Vector in the "x" direction
VectorY = [y./(2*pi*(x.^2+y.^2))]; %is the Vector in the "y" direction
Vectortoplot = [(x./(2*pi*(x.^2+y.^2))),(y./(2*pi*(x.^2+y.^2)))];
% size(x)
% size(y)
% size(VectorX)
% size(VectorY)
quiver(x,y,VectorX,VectorY)
3 commentaires
Rupchand Sutradhar
le 5 Juil 2021
Modifié(e) : Rupchand Sutradhar
le 5 Juil 2021
how can I set the length of arrow ?
Voir également
Catégories
En savoir plus sur Vector Fields dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!