主要内容

显示发散与流管

什么流管可以显示

流管类似于流线,除了流管有宽度之外,它提供了另一个维度,您可以使用它来表示信息。

默认为MATLAB®图形显示矢量场的散度由管的宽度。您还可以为每个管顶点定义宽度,从而将其他数据映射到宽度。

这个例子使用了以下技巧:

  • 流管以指示流场中的矢量方向和散度数据集

  • 将彩色的平面切片,以表示与等高线重叠的气流速度,以增强能见度

输入包括体积坐标、矢量场分量和流管的起始位置。

1.加载数据并计算所需的值

加载数据并计算绘制图表所需的值。这些值包括:

  • 切片平面的位置(最大x、最小y,和海拔高度的值)

  • 最低x值作为流管的开始

  • 风速(矢量场的大小)

    荷载风xmin = min(x(:));Xmax = max(x(:));Ymin = min(y(:));Alt = 7.356;% z值为切片和流管平面Wind_speed =√(u。^2 + v ^2 + w.^2);

2.绘制切片平面

绘制切片平面()和设置表面属性创建平滑着色的切片。使用16种颜色hsvcolormap

Hslice = slice(x,y,z,wind_speed,xmax,ymin,alt);set(hslice,'FaceColor','interp','EdgeColor','none') colormap hsv(16)

3.添加等高线切片平面

添加等高线(contourslice)到切片平面。调整等高线间隔,使线条与切片平面中的颜色边界匹配:

  • 调用caxis来获取当前的颜色限制。

  • 设置所使用的插值方法contourslice线性匹配所使用的默认值

    Color_lim = caxis;cont_interval = linspace(color_lim(1),color_lim(2),17);Hcont = contourslice(x,y,z,wind_speed,xmax,ymin,…alt、cont_intervals“线性”);集(hcont,‘EdgeColor’,。4 .4 .4],'LineWidth',1)

4.创建流管

使用meshgrid为流管的起点创建数组,从最小值开始x取值范围为20 ~ 50英寸y,并躺在一个平面内z(对应于其中一个切片平面)。

流管(廉管道)绘制于指定位置,并按预设宽度缩放至1.25倍,以强调散度(宽度)的变化。向量[1.25 30]中的第二个元素指定了沿管子周长的点数(默认值是20)。您可能希望随着管子尺寸的增加而增加这个值,以保持管子的光滑外观。

设置数据纵横比(daspect)廉管道

流管是表面对象,因此可以通过设置表面属性来控制它们的外观。这个示例设置表面属性,以提供明亮的红色表面。

[sx,sy,sz] = meshgrid(xmin,20:3:50,alt);daspect ((1 1 1))%在调用streamtube之前设置DARhtubes =廉管道(x, y, z, u, v, w, sx, sy,深圳,30 [1.25]);集(htubes,‘EdgeColor’,‘没有’,‘FaceColor’,‘r’,……“AmbientStrength”。5)

5.定义视图

定义视图并添加照明(视图volumebounds投影camlight).

view(-100,30) axis(volumebounds(x,y,z,wind_speed)) set(gca,'Projection','perspective') camlight left

Baidu
map