自己研究了下用Matlab绘制二维应力云图的方法,三维应力云图的绘制可以以此类推。
实现的方法主要是运用fill函数,三维情形应该是fill3函数。
这里我们以一个四边形的例子来说明。
如上图所示的四个点,其坐标x,y和对应的应力值stress为:
x=[0 1 1 0 0];
y=[0 0 1 1 0];
stress=[1 2 3 4 1];
然后利用fill函数就可以得到改四边形的stress云图。代码如下:
fill(x,y,stress);
shading interp;
colorbar;
axis equal;
结果如下:
利用这个思路,我们在得到有限元计算的所有节点的应力值后,可以
对单元进行每个子单元的应力云图绘制,循环完所有的单元后就可以得
到整体区域的应力云图了。
绘制代码如下所示:
hold on;
for e=1:ne
i=Conn(e,:);%Connectivity Matrix
x=X(i);
y=Y(i);
s=Sress(i);
fill(x,y,s,'FaceColor','interp');
end
shading interp;
hold off;
axis equal
这里以1/4带孔方板为例,我们得到的应力云图如下: