contour plot of stream function for a tornado

24 visualizaciones (últimos 30 días)
Randy Chen
Randy Chen el 28 de Oct. de 2020
Editada: Alan Stevens el 29 de Oct. de 2020
I have a stream function for a tornado and I watned to plot it using contour function, but it's not working:
m1=-3000;
m2 = 5800;%strength
[r,theta] = meshgrid(-20:1:20,0:0.1:2*pi);
psi = (m1/(2*pi))*theta + (m2/(2*pi))*log(r);
contour(r,theta,psi);
How should I fix it so the plot looks something like this:
I also want to plot a circle in the middle with radius r = a constant value

Respuesta aceptada

Alan Stevens
Alan Stevens el 28 de Oct. de 2020
More like this?
m1=-3000;
m2 = 5800;%strength
R = 0:0.1:20;
THETA = linspace(0,2*pi,numel(R));
[r,theta] = meshgrid(R,THETA);
psi = m1/(2*pi)*theta + (m2/(2*pi))*log(r);
contour(r.*cos(theta),r.*sin(theta),psi,20,'b--');
  2 comentarios
Randy Chen
Randy Chen el 28 de Oct. de 2020
yes that's great!
by the way how should I add a circle with a constant radius? should I still use contour? i'm not sure how to do that
Alan Stevens
Alan Stevens el 28 de Oct. de 2020
Editada: Alan Stevens el 29 de Oct. de 2020
Like so
m1=-3000;
m2 = 5800;%strength
R = 0:0.1:20;
THETA = linspace(0,2*pi,numel(R));
[r,theta] = meshgrid(R,THETA);
psi = m1/(2*pi)*theta + (m2/(2*pi))*log(r);
contour(r.*cos(theta),r.*sin(theta),psi,20,'b--');
hold on
rc = 10;
plot(rc*cos(THETA), rc*sin(THETA),'k')
axis equal

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Contour Plots en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by