stream2の計算ができない原因
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
stream2関数を使用した流線の計算方法に関する質問です.
ベクトル場の流線をstream2で計算しようとしたところ,一部分のみしか計算できず困っています.
ベクトルデータの座標 x,y(100×100の2-D行列)とベクトルデータの成分u,v(NaNを含む)があります.
これらのデータは以下のfigureのようになっており,このベクトル場の流線を計算したいです.
load data.mat
p = figure(1)
quiver(x,y,u,v) % ベクトル場の表示
p.Position(3:4) = [735 735];
流線の開始位置をstartX,startYとし,stream2で計算しようとしたところ,開始位置によって計算できる場合とできない場合があります.
流線の開始位置はベクトル場の左端と下辺です.
vert = stream2(x,y,u,v,startX,startY); % 流線の計算
q = figure(2)
quiver(x,y,u,v) % ベクトル場の表示
hold on
plot(startX,startY,'o') % 流線の開始位置
streamline(vert) % 流線の表示
hold off
q.Position(3:4) = [735 735];
ベクトル場は全体的に右上方向を向いており,流線を計算すること自体は可能だと思うのですが,下辺を開始位置としている場合なぜか計算ができていません.
これらの原因がわかる方はいらっしゃいますか?
2 Kommentare
Atsushi Ueno
am 24 Okt. 2023
原因は分かんないですが、Y座標をほんの少しずらすと”流れに乗り”ました。
websave("data.mat","https://jp.mathworks.com/matlabcentral/answers/uploaded_files/1519811/data.mat");
load data.mat
startY = startY + 0.001; % <<<---これ
vert = stream2(x,y,u,v,startX,startY); % 流線の計算
quiver(x,y,u,v); % ベクトル場の表示
hold on
plot(startX,startY,'o'); % 流線の開始位置
streamline(vert); % 流線の表示
hold off
Antworten (0)
Siehe auch
Kategorien
Mehr zu ベクトル場 finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!