frogfish 发表于 2005-7-16 09:04

MATLAB表现无限大水体中水下射流速度数据

利用slice和contourslice 表现MATLAB提供的无限大水体中水下射流速度数据flow 。flow是一组定义在三维空间上的函数数据。
在本例中,从图中的色标尺可知,深红色表示“正速度”(向图的左方),深蓝表示“负速度”(向图的右方)。

%以下指令用切面上的色彩表现射流速度
clf;=flow; %取4个 的射流数据矩阵,V是射流速度。
x1=min(min(min(X)));x2=max(max(max(X))); %取x坐标上下限
y1=min(min(min(Y)));y2=max(max(max(Y))); %取y坐标上下限
z1=min(min(min(Z)));z2=max(max(max(Z))); %取z坐标上下限
sx=linspace(x1+1.2,x2,5); %确定5个垂直x轴的切面坐标
sy=0; %在y=0处,取垂直y轴的切面
sz=0; %在z=0处,取垂直z轴的切面
slice(X,Y,Z,V,sx,sy,sz); %画切片图
view([-12,30]);shading interp;colormap jet;axis off;colorbar




%以下指令用等位线表现射流速度
clf;v1=min(min(min(V)));v2=max(max(max(V))); %射流速度上下限
cv=linspace(v1,v2,15); %在射流上下限之间取15条等位线
contourslice(X,Y,Z,V,sx,sy,sz,cv);view([-12,30])
colormap jet;colorbar;box on
页: [1]
查看完整版本: MATLAB表现无限大水体中水下射流速度数据