How to get rid of values from meshgrid
4 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
esat gulhan
el 21 de Sept. de 2020
Comentada: Ameer Hamza
el 21 de Sept. de 2020
My code is below. I want to get rid of middle values of mesgrid which are very large. Nan maybe.
Is there any way to get rid of midle values (ı do not want see values in the midle of meshgrid ı want to blank [1 1] square from midle of meshgrid)
syms u uo ur v x y Q C r T tt
V=100;b=2;uo=-V*sin(Q);ur=V*2*pi*b/(2.*pi.*r)+V*cos(Q);r=(x.^2+y.^2).^0.5;Q=atan2(y,x);
uo=subs(uo);ur=subs(ur);
%VECTORFIELD
[x,y] = meshgrid(-5:gl:5,-5:gl:5);
u=subs(ur*cos(Q)-uo*sin(Q));v=subs(ur*sin(Q)+uo*cos(Q));
quiver(x,y,u,v,1.01,'r','linewidth',2),grid on
0 comentarios
Respuesta aceptada
Ameer Hamza
el 21 de Sept. de 2020
Editada: Ameer Hamza
el 21 de Sept. de 2020
Try this
syms u uo ur v x y Q C r T tt
V=100;b=2;uo=-V*sin(Q);ur=V*2*pi*b/(2.*pi.*r)+V*cos(Q);r=(x.^2+y.^2).^0.5;Q=atan2(y,x);
uo=subs(uo);ur=subs(ur);
%VECTORFIELD
gl = 0.11; % to avoid 0 in the meshgrid
[x,y] = meshgrid(-5:gl:5);
u=subs(ur*cos(Q)-uo*sin(Q));v=subs(ur*sin(Q)+uo*cos(Q));
mask = (abs(x) < 1) & (abs(y) < 1);
u(mask) = 0;
v(mask) = 0;
quiver(x,y,u,v,1.01,'r','linewidth',2),grid on
2 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre Linear Algebra 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!