Why am I only getting partial streamlines.
7 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Boris Chan
il 17 Feb 2021
Commentato: David Goodmanson
il 17 Feb 2021
I am trying to plot streamlines to look like this
But I am only getting part way
I have tried changing my sy and sx multiple times but it just changes what part shows up. I have no idea what I'm doing wrong
Here's my code
%%
[X,Y] = meshgrid(-5:0.5:5);
sx = linspace(-5,5,20);
sy = sx;
% sx = (-5:0.5:5);
% sy = ones(size(sx));
sy = sx./sx;
% [SX,SY] = meshgrid(sx,sy);
%let U = e1 & V = e2
U = Y;
V = X;
figure()
hold on
quiver(X,Y,U,V);
streamline(X,Y,U,V,sx,sy,[0.1,20000]);
0 Commenti
Risposta accettata
David Goodmanson
il 17 Feb 2021
Hi Boris,
the problem is the line sy = sx./sx which creates a vector of ones for sy. Then every streamline originates at the horizontal line sy =1. Here is an example that draws the streamlines orginating from the left side (upper half) and the top side (left half); the remining two sides are similar.
[X,Y] = meshgrid(-5:0.5:5);
sx = linspace(0,5,10);
sx(end) =[]; % eliminate streamlines originating at the corners
sy = sx;
onx = ones(size(sx));
ony = ones(size(sy));
U = Y;
V = X;
figure()
hold on
quiver(X,Y,U,V);
streamline(X,Y,U,V,-5*onx,sy,[0.1,20000]);
streamline(X,Y,U,V,-sx, 5*ony,[0.1,20000]);
hold off
2 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Vector Fields in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!