利用matlab绘制流场中的流线
生活随笔
收集整理的這篇文章主要介紹了
利用matlab绘制流场中的流线
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
利用matlab繪制流場中的流線,表示出駐點位置。
目錄
- 利用matlab繪制流場中的流線,表示出駐點位置。
- 前提:已知流函數和勢函數(空氣動力學)
- 三個案例分析
- 感謝參考
前提:已知流函數和勢函數(空氣動力學)
代碼如下。
// 流函數繪制 clear all; %等勢面方法 [x2,y2]=meshgrid(-3:0.05:3,-3:0.05:3); %直勻流+點源 %P=x2+log(x2.^2+y2.^2);Q=y2+atan(y2./x2); %圓柱無環量繞流 %P=x2+x2./(x2.^2+y2.^2); Q=y2-y2./(x2.^2+y2.^2); %蘭金卵形 %勢函數P P=0.5*log((x2-1).^2+y2.^2)-0.5*log((x2+1).^2+y2.^2)+1*x2; %流函數Q Q=atan(y2./(x2-1))-atan(y2./(x2+1))+1*y2; [u2,v2]=gradient(P); max(abs(curl(x2,y2,u2,v2)),[],'all'); figure hold on pcolor(x2,y2,P)%勢函數 shading interp d = 8;dd = 10;%d用來調整箭頭的間距,dd用來調整箭頭長短 quiver(x2(1:d:end,1:d:end),y2(1:d:end,1:d:end),u2(1:d:end,1:d:end)'./dd,v2(1:d:end,1:d:end)'./dd,'color','r')%畫箭頭 contour(x2,y2,Q,'LineColor','k','LineWidth',0.8,'LevelList',linspace(-50,50,500))%調節線的稠密程度 text(0,-1,'x','color','w','FontSize',10); text(0,1,'x','color','w','FontSize',10);%標注駐點位置 %text(0.5,0,'x','color','w','FontSize',10); %text(-0.5,0,'x','color','w','FontSize',10); hold off // 流函數繪制 clear all; %等勢面方法 [x2,y2]=meshgrid(-3:0.05:3,-3:0.05:3); %直勻流+點源 %P=x2+log(x2.^2+y2.^2);Q=y2+atan(y2./x2); %圓柱無環量繞流 %P=x2+x2./(x2.^2+y2.^2); Q=y2-y2./(x2.^2+y2.^2); %蘭金卵形 %勢函數P P=0.5*log((x2-1).^2+y2.^2)-0.5*log((x2+1).^2+y2.^2)+1*x2; %流函數Q Q=atan(y2./(x2-1))-atan(y2./(x2+1))+1*y2; [u2,v2]=gradient(P); max(abs(curl(x2,y2,u2,v2)),[],'all'); figure hold on pcolor(x2,y2,P)%勢函數 shading interp d = 8;dd = 10;%d用來調整箭頭的間距,dd用來調整箭頭長短 quiver(x2(1:d:end,1:d:end),y2(1:d:end,1:d:end),u2(1:d:end,1:d:end)'./dd,v2(1:d:end,1:d:end)'./dd,'color','r')%畫箭頭 contour(x2,y2,Q,'LineColor','k','LineWidth',0.8,'LevelList',linspace(-50,50,500))%調節線的稠密程度 text(0,-1,'x','color','w','FontSize',10); text(0,1,'x','color','w','FontSize',10);%標注駐點位置 %text(0.5,0,'x','color','w','FontSize',10); %text(-0.5,0,'x','color','w','FontSize',10); hold off三個案例分析
均為水平來流從左到右V∞V_{∞}V∞? ,左匯-Q(-a,0),右源Q(a,0)
- case 1
駐點在y軸上,Q/π\piπa>V∞V_{∞}V∞?
- case 2
駐點在(0,0)Q/π\piπa=V∞V_{∞}V∞?
- case 3
駐點在x軸,Q/π\piπa<V∞V_{∞}V∞?
感謝參考
1、matlab網站
2、csdn流場可視化
總結
以上是生活随笔為你收集整理的利用matlab绘制流场中的流线的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 在RHEL5下实现RAID5磁盘阵列
- 下一篇: Subsets