Help with the following error with quiver

1 view (last 30 days)
I am getting the above error using the function quiver for vector field
x = -4e-7:0.1e-12:4e-7;
y = -4e-7:0.1e-12:4e-7;
[X,Y] = meshgrid(x,y);
HX = (atan(((g/2 + X)./Y);
HY1 = (cos((g/2 + X).^2 + (Y).^2/(g/2 - X).^2 + (Y).^2));
H = sqrt(HY1.^2 + HX.^2);
Rik on 24 May 2022
Editing away your question is very rude, please don't do it again.

Sign in to comment.

Accepted Answer

Sam Chak
Sam Chak on 24 Mar 2022
Edited: Sam Chak on 26 Mar 2022
If g is assumed as the gravity, then the "Region of Repulsion" is found here. Solving the simultaneous equations and give two saddle points somewhere around and region. Check it out.
[X, Y] = meshgrid(-7:4/14:-3, -2:4/14:2);
g = 10;
U = (1/pi)*(atan(((g/2 + X)./Y) + atan((g/2 - X)./Y)));
V = (-1/2*pi)*(log((g/2 + X).^2 + (Y).^2./(g/2 - X).^2 + (Y).^2));
quiver(X, Y, U, V, 1.5)
axis square
axis([-7.5 -2.5 -2.5 2.5])
  1 Comment
Sam Chak
Sam Chak on 24 Mar 2022
Are you looking for 3-D vector field like this?
[X, Y, Z] = meshgrid(-7:4/14:-3, -2:4/14:2, 0:4/14:4);
g = 10;
U = (1/pi)*(atan(((g/2 + X)./Y) + atan((g/2 - X)./Y)));
V = (-1/2*pi)*(log((g/2 + X).^2 + (Y).^2./(g/2 - X).^2 + (Y).^2));
H = sqrt(U.^2 + V.^2);
h = quiver3(X, Y, Z, U, V, H);
set(h, 'maxheadsize', 1.5);

Sign in to comment.

More Answers (1)

Walter Roberson
Walter Roberson on 24 Mar 2022
quiver has a few calling sequences:
  • quiver(x, y, u, v)
  • quiver(u, v)
  • either of those followed by a scale factor
  • any of the above proceeded by an axes handle
You are using three parameters, so you are either using axes, u, v or else u, v, scale. But the first parameter is not an axes so you are using u,v, scale
Did you possibly intend to use quiver3?


Find more on Vector Fields in Help Center and File Exchange


Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!