您好,欢迎来到刀刀网。
搜索
您的当前位置:首页matlab程序画几何图形并进行网格划分(可打印修改)

matlab程序画几何图形并进行网格划分(可打印修改)

来源:刀刀网
编写程序,对下图几何区域按有限元法进行网格划分,确定单元中结点数目及位置,并对单元和结点分别进行编号。

二、程序思路

基于MATLAB软件平台,首先画出几何图形,然后对几何区域按照有限元法思想进行三角形网格剖分,最后按顺序依次输出单元及结点编号和坐标。

三、编写源程序:

clear;

%第一步:画出几何区域%为按逆时针顺序绘制几何区域x_up=[3.5,0];y_up=[2,2]; x_l=[0,0];y_l=[2,0]; x_low=[0,2.5];y_low=[0,0]; n=9; c=linspace(pi,pi/2,n);r=1; x_c=r*cos(c)+3.5;

y_c=r*sin(c); x_r=[3.5,3.5];y_r=[1,2]; x=[x_low,x_c ,x_r,x_up,x_l]; y=[y_low,y_c ,y_r,y_up,y_l]; plot(x,y, 'm'); xlabel('x轴');ylabel('y轴');title('几何区域');hold on

l=k*(pi/2)*r;

x_up(3)=3.5-l;

%上固体边界数组

%入流左边界数组

%下固体边界数组%圆弧等分变量n%圆弧半径变量r

%三角函数表示圆柱左上部分 %出流右边界数组 %整体边界X坐标数组

%整体边界Y坐标数组 %绘制几何区域

y_up(3)=2;

cut_point=[x_up(3), y_up(3)]; x_up(3)=x_up(2);y_up(3)=y_up(2);

x_up(2)= cut_point(1); y_up(2)= cut_point(2); %将上边界点坐标按顺序重排x_cutline=[ x_up(2),x_low(2)];

y_cutline=[ y_up(2),y_low(2)]; %分割线数组plot(x_cutline, y_cutline); %绘制分割线n1=6; %上边界左半部分n1等分变量x_upcp1=linspace(x_up(2),x_up(3),n1+1); %上边界左半部分n1等分y_upcp1=linspace(y_up(2),y_up(3),n1+1);

x_lowcp1=linspace(x_low(2),x_low(1),n1+1); %下边界n1等分y_lowcp1=linspace(y_low(2),y_low(1),n1+1);

x_upcp2=linspace(x_up(1),x_up(2),n+1); %上边界右半部分n等分y_upcp2=linspace(y_up(1),y_up(2),n+1);x_upper=[ x_upcp2,x_upcp1]; %上固体边界坐标数组y_upper=[ y_upcp2,y_upcp1];

c1=linspace(pi*3/2,pi,n+1); x_c1=cos(c1)+3.5; y_c1=abs(sin(c1)) ;

x_lower=[x_c1,x_lowcp1]; y_lower=[y_c1,y_lowcp1];for i=1:n1+n+2 %画竖线plot([x_upper(i) x_lower(i)],[ y_upper(i) y_lower(i)],'m');end

m=7;

for i=n+n1+2:-1:1

plot([x_upper(i) x_lower(i)],[ y_upper(i) y_lower(i)],'m');%绘制竖线 x1(i,:)=linspace(x_upper(i),x_lower(i),m+1); %竖线m等分 y1(i,:)=linspace(y_upper(i),y_lower(i),m+1); end

for i=1:m

for j=n+n1+2:-1:2

 plot([x1(j,i) x1(j-1,i)],[y1(j,i) y1(j-1,i)],'m');% plot([x1(j,i) x1(j-1,i+1)],[y1(j,i) y1(j-1,i+1)],'m'); endend

for j=1:n+n1 for i=1:m

p1=i+(j-1)*(m+1);p2=i+1+j*(m+1);p3=i+j*(m+1);

end

t=2*i+2*(j-1)*m;p4=i+(j-1)*(m+1);p5=i+1+(j-1)*(m+1);p6=i+1+j*(m+1);e(t-1,:)=[p1,p2,p3]; e(t,:)=[p4,p5,p6];end

      %整体编号与局部编号关系

四、程序各步运行结果:

具体程序如上所写第一步:画出几何区域

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- gamedaodao.com 版权所有 湘ICP备2022005869号-6

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务