多心圆隧道用FLAC3D直接建模的方法.docx
《多心圆隧道用FLAC3D直接建模的方法.docx》由会员分享,可在线阅读,更多相关《多心圆隧道用FLAC3D直接建模的方法.docx(6页珍藏版)》请在第壹文秘上搜索。
1、多心圆隧道直接用FLAC3D建模丁其乐2013/6/18多心圆隧道模型使用FLAC3D建模的难点在于FLAC3D中并没有以不规那么曲线为边界的原始3D根本网格,隧道的断面图见图-图一隧道内轮廓线是由多个圆弧做成的,所以内部区域模型只能通过3D根本网格拼接而成,这时我想到了使用cylinder(圆柱体形网格)拼接,但是这个圆弧的圆心并不是一个点,怎么办?这时我想到了通过fish来调整圆心位置,使得各圆弧的圆心都调整到Ol位置,同时又要保证各圆弧的圆弧线不变,且内部网格点的相对位置不变。下面我以一个简单的例子来说明我调整的过程:图:在图二中圆弧OIAB的圆心为Ol,圆心坐标为(XLZl),现在通过
2、坐标调整把圆弧OIAB所占区域调整到02AB(如上图所示),02的坐标为(X2,Z2),同时CHA上面一点Ml,调整之后在O2A上为M2oA和MI的坐标分别为A(Ax,Az)和MI(MIX,Mlz)设:,IOlMIl左一1)IolAlM2的坐标为M2x,M2y那么:M2x-Mlx=k(O2x-O)(3)2z-Mlz=A(Sz-Olz)(4)由(3)、(4)就以求出来M2的坐标。下面用-个简单的例子说明实现代码。newtitle调整圆弧区域到指定位置:定义参数defpara;O1的平面坐标Olx=-2.9Olz=O;O2的平面坐标O2x=0O2z=0rl=5.9;Ol的半径al=O*degrad
3、;A点与X轴的夹角a2=3O*degrad;B点与X轴的夹角;AB点的坐标Ax=rl*cos(a1)+0IxAz=r1*sin(a1)+01ZBx=rl*cos(a2)OlxBz=rl*sin(a2)+01Zendpara;生产模型genzocylp(Olx,0,Olz)pl(Ax,O,Az)p2(Olx,l,Olz)p3(Bx,0,Bz)size416group调整genzocylp(Olx,2,Olz)pl(Ax,2,Az)p2(Olx,3,Olz)p3(Bx,2,Bz)size416group原始;为了比照而建;调整节点位置defdingpg=gp_headloopwhilegp_gro
4、up(pg,l)=调整xx=gp_xpos(pg)zz=gp_zpos(pg)k=sqrt(xx-01x)2+(zz-O1z)2)1kl=l-kgp_xpos(pg)=k1*(O2x-01x)+xxgp_zpos(pg)=k1*(O2z-01z)+zzPg=gPJext(pg)end_loopenddingplblgr结果图三图三从图中可以看出来两个区域的圆弧线完全一样,但是圆心和对应的节点己经调整到了我们想要的位置。克服了这个难关,再建立多心圆隧道的模型就简单多了。下面给出图模型的代码:newtitle隧道建模;定义参数defset_para;O1的平面坐标Olx=OOlz=O;O2的平面坐
5、标O2x=2.9O2z=0;O3的平面坐标03K=L70O3z=L40:O4的平面坐标O4x=0O4z=3.66rl=3.0;O1的半径r2=5.9;O2的半径r3=1.09;O3的半径r4=6.44;O4的半径al=90*degrada2=18O*degrada3=197*degrada4=251*degrada5=27O*degradd=O.5;衬砌的厚度endset_para;各关键点的坐标defkeypoint;衬砌内层关键点xl=rl*cos(al)+01Xzl=rl*sin(al)+Olzx2=r2*cos(a2)+O2xz2=r2*sin(a2)O2zx3=r3*cos(a3)+
6、O3xz3=r3*sin(a3)+O3zx4=r4*cos(a4)+O4xz4=r4*sin(a4)+O4zx5=r4*cos(a5)+O4xz5=r4*sin(a5)O4z;衬砌外层关犍点x6=(rl+d)*cos(al)+01Xz6=(r1+d)*sin(a1)+0Izx7=(r2+d)*cos(a2)+O2xz7=(r2+d)*sin(a2)O2zx8=(r3+d)*cos(a3)+O3xz8=(r3+d)*sin(a3)O3zx9=(r4+d)*cos(a4)+O4xz9=(r4+d)*sin(a4)+O4zX10=(r4+d)*cos(a5)+O4xZ10=(r4+d)*sin(a5
7、)+O4z;围岩外层关键点xll=OZIl=6X12=-6z12=6X13=-6z13=0X14=-6z14=-24x15=-6z15=-4.8x16=-6z16=-6x17=-4.8z17=-6x18=-24z!8=-6x19=0z19=-6endkeypoint;调整节点位置defsexpositionpg=gp_headloopwhilepg#nullinnerlD=int(gp_group(pg,1)caseofinnerIDcase1Bef_centreX=O1X;调整前的圆心坐标Bef_centreZ=O1zEnd-CentreX二OIX;调整后的圆心坐标Een_centreZ=O
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 多心 隧道 FLAC3D 直接 建模 方法