我想用Ansus Fluent在MATLAB的contourf
情节中绘制表面解决方案。
该解决方案是ASCII格式的表格,其中包含散点(x,y,z),用于描述每个点的平面和温度。
在第一张图片上,您可以看到散点图,其中所有点和温度都是颜色。在这里,您可以看到边界的正确几何形状。
但如果我想要一个轮廓图,我需要插入散点。在下一张图片上,您可以看到结果。问题是MATLAB插入"通过"边界,例如在底部。我认为这个问题与凹边界和Delauney三角剖分有关。
我的代码
clear all
close all
clc
data_txt = importdata('file'); % 5Columns: NodeNumber, x,y,z,temperature
data_int = scatteredInterpolant(data_txt.data(:,3),data_txt.data(:,4),data_txt.data(:,5),'natural','none');
x_min=min(data_txt.data(:,2));
x_max=max(data_txt.data(:,2));
y_min=min(data_txt.data(:,3));
y_max=max(data_txt.data(:,3));
z_min=min(data_txt.data(:,4));
z_max=max(data_txt.data(:,4));
x = x_min:0.0001:x_max;
y = y_min:0.0001:y_max;
z = z_min:0.0001:z_max;
[Y, Z] = meshgrid(y, z);
data_int_ = data_int(Y,Z);
figure_handle=figure;
contourf(Y,Z,data_int_,100,'Edgecolor','none');
在这种情况下,x坐标是常量。我可以使用旋转矩阵对每个坐标执行此操作。比我有x,y,数据问题。
有没有办法插入我的散点,但要获得正确的边界形状?如何阻止Matlab插入没有数据的凹区?