When i plot the streamline using the code. I am unbale to get the stream lines for the complete field as shown in the figure.
Kindly let me know the way to get stream lines all over the plot.
[x,y] = meshgrid(0:0.1:1,0:0.1:1);
u = x;
v = -y;
>> figure
quiver(x,y,u,v)
startx = 0.1:0.1:1;
starty = ones(size(startx));
streamline(x,y,u,v,startx,starty)

 採用された回答

Ameer Hamza
Ameer Hamza 2020 年 5 月 11 日
編集済み: Ameer Hamza 2020 年 5 月 11 日

0 投票

In this case, you can try something like this.
[x,y] = meshgrid(0:0.1:1,0:0.1:1);
u = x;
v = -y;
figure
quiver(x,y,u,v)
startx = 0:0.02:1; % <=== chage the number of points in startx
starty = ones(size(startx));
streamline(x,y,u,v,startx,starty)
For the plot in your other question, you can also try to increase the number of points in the startx vector, and accordingly the number of points in starty. I am not sure why I didn't try on that question. Maybe there was some other issue. You can try it again.

10 件のコメント

MS
MS 2020 年 5 月 11 日
thanks for the help. it is filled up now here. Since, you changed the startx limt from 0.1 to 0. i think, the issue with the other question is diffrent. I chaged the values still the same.
rg = linspace(0, max(R), 100);
cg = linspace(0, max(C), 100);
[Rg, Cg] = meshgrid(rg, cg);
Fg = griddata(R, C, F, Rg, Cg);
Ug = griddata(R, C, U, Rg, Cg);
Vg = griddata(R, C, V, Rg, Cg);
xstart = linspace(0, max(R), 1000);
ystart = 0.005*ones(size(xstart));
s = streamline(Rg,Cg,Ug,Vg,xstart,ystart);
[s.Color] = deal('g');
Ameer Hamza
Ameer Hamza 2020 年 5 月 11 日
編集済み: Ameer Hamza 2020 年 5 月 11 日
Sometimes the lines of streamlines seem to terminate arbitrarily. Even though the quiver works fine at those points. I am not sure why this thing happens. Can you try this
ystart = 0.01*ones(size(xstart));
MS
MS 2020 年 5 月 11 日
sure, thanks. i will update the results.
Ameer Hamza
Ameer Hamza 2020 年 5 月 11 日
Sorry! I meant to write
ystart = 0.01*ones(size(xstart));
Can you try this and see the result.
MS
MS 2020 年 5 月 11 日
Thanks, I triedd with even less value. The figure i attached in the previous comment is the result using the value.
ystart = 0.005*ones(size(xstart));
Ameer Hamza
Ameer Hamza 2020 年 5 月 11 日
No, I am asking about increasing the value a little bit.
MS
MS 2020 年 5 月 11 日
okay sorry, i will try it.
MS
MS 2020 年 5 月 11 日
I tired it. Still the same.
Ameer Hamza
Ameer Hamza 2020 年 5 月 11 日
I am not sure what else can be done to make it correct.
MS
MS 2020 年 5 月 11 日
Thank you. It may be a mistake of the data file.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

質問済み:

MS
2020 年 5 月 11 日

コメント済み:

MS
2020 年 5 月 11 日

Community Treasure Hunt

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

Start Hunting!

Translated by