FLAC3D 实例分析教程.pdf
FLAC原理实例与应用指南 FLAC3D 实例分析教程实例分析教程 1 FLAC3D 实例分析教程实例分析教程 刘 波 韩彦辉(美国)编著FLAC原理实例与应用指南 北京人民交通出版社,2005.9 Appendix附录附录 版权所有人民交通出版社,Itasca Consulting Group, USA 说 明 1.本实例分析教程是为方便读者学习、应用 FLAC 和 FLAC3D 而编写的,作为FLAC 原理、实例与应用指南一书的 附录。 2.计算算例参考了 Itasca Consulting Group 的培训算例,命 令流的解析旨在方便读者理解 FLAC 和 FLAC3D 建模及求解问题 的一般原则与步骤。 3.实例分析的算例中,FLAC 算例是基于 FLAC 5.00 版本、 FLAC 3D算例是基于 FLAC 3D 3.00版本实现计算分析的。读者在 学习和研究相关算例时,请务必采用 Itasca授权的合法版本进行分 析计算。 4.本实例分析教程仅供读者参考,读者在参考本教程算例 进行工程分析时,编者对可能产生的任何问题概不负责。 编 者 2005.10.18 FLAC原理实例与应用指南 FLAC3D 实例分析教程实例分析教程 2 实例分析实例分析 1基坑开挖基坑开挖 图 1基坑开挖的位移等值线图 例例 1 ; simple tutorial – trench excavation ;简单的隧道开挖方法 ; Step 1 create initial model state ;第一步初始模型的建立 ; create grid ; 建立网格 gen zone brick size 6 8 8 ;建立矩形的网格区域,其大小为6 8 8 ; assign material ;指定材料的性质 model mohr ;采用摩尔-库仑模型 prop bulk 1e8 shear 0.3e8 ;模型的材料性质体积模量 8 1 10 剪切模量 8 0.3 10 prop fric 35 coh 1e3 tens 1e3 ;摩擦角 35 粘聚力 3 1 10 抗拉强度 3 1 10 ; set global conditions ;设置全局参数 set grav 0,0,-9.81 FLAC原理实例与应用指南 FLAC3D 实例分析教程实例分析教程 3 ;设置重力加速度,z坐标正方向为正,故为-9.81 ini dens 2000 ;初始密度为 2000 ; set boundary conditions ;设置初始边界情况 fix x range x -0.1 0.1 ;在 x 方向上 固定 x 0边界,为滚动支撑 fix x range x 5.9 6.1 ;在 x 方向上 固定 x 6边界,为滚动支撑 fix y range y -0.1 0.1 ;在 y 方向上 固定 y 0边界,为滚动支撑 fix y range y 7.9 8.1 ;在 y 方向上 固定 y 8边界,为滚动支撑 fix z range z -0.1 0.1 ;在 z 方向上 固定 z 0边界,为滚动支撑 ; monitor model variables to check for equilibrium ;监控模型变量,并控制力学平衡 hist unbal ;监测不平衡力,并保留历史记录(在默认情况下,每十步做一次记录) hist gp zdisp 4,4,8 ;监测网格坐标点(4,4,8)在 z方向的位移,并保留历史纪录 solve ;运算,求解默认情况下 ratio 5 1 10−停止运算 pause ;暂停 save t1.sav ;形成sav文件,并保存为t1.sav pause ;暂停 ; rest t1.sav ;恢复t1.sav文件 ; Step 2 excavate trench ;第二步开挖隧道 model null range x 2,4 y 2,6 z 5,10 ;在x(2,4)y(2.,6)z(5,10 )范围内建立零模型(即开挖这一部分区域) pause ;暂停 set large ;在全局下设置大应变状态 initial xdis 0.0 ydis 0.0 zdis 0.0 ;把x,y,z重新设置为0(因为我们只为了观察基坑引起的位移变化, ;而不是从施加重力荷载引起的位移变化,这不会影响计算结果) pause FLAC原理实例与应用指南 FLAC3D 实例分析教程实例分析教程 4 ;暂停 step 1000 ;运算1000步 pause ;暂停 save t2.sav ;形成sav文件,并保存为t2.sav ret ;放在批处理文件的最后,以返回 3D FLAC的控制状态 FLAC原理实例与应用指南 FLAC3D 实例分析教程实例分析教程 5 实例分析实例分析 2浅基础的稳定性分析浅基础的稳定性分析 图2 浅基础位移矢量图 例例 2 ;--------------------------------------------------------------------- ; -二维的条形基础在Tresca材料中的塑性流动 ;--------------------------------------------------------------------- gen zone brick size 20 1 10 ;建立矩形的网格区域,其大小为20 1 10 model mohr ;采用摩尔-库仑模型 prop bul 2.e8 shea 1.e8 cohesion 1.e5 ;模型的材料性质体积模量 8 2.0 10 剪切模量 8 1.0 10 粘聚力 5 1.0 10 prop friction 0. dilation 0. tension 1.e10 ;内摩擦角 0 剪胀角 0 抗拉强度 10 1.0 10 fix x range x -.1 .1 ;在x方向上固定边界 x 0(即只在x方向上受约束) fix x y z range z -.1 .1 ;在x y z方向上固定边界 z 0(即为固定约束) fix x y z range x 19.9 20.1 ;在x y z方向上固定边界 x 20 fix y FLAC原理实例与应用指南 FLAC3D 实例分析教程实例分析教程 6 ;约束所有y方向上运动 fix x y z range x -.1 3.1 z 9.9 10.1 ;在x y z方向上固定平面 x 0,3 z 10 ini zvel -0.5e-5 range x -.1 3.1 z 9.9 10.1 ;在平面 x 0,3 z 10上初始化z方向的速度为 5 0.5 10−− def p_cons ;用fish 语言定义函数p_cons pdis1 gp_near0.,0.,10. ;靠近坐标(0,0,10)的节点的地址赋予pdis1 pdis2 gp_near0.,1.,10. ; ;靠近坐标(0,0,10)的节点的地址赋予pdis2 p_sol 2. pi ;2π赋予 p_sol end ;用于fish语言的结尾 p_cons ;运行函数p_cons ;--------------------------------------------------------------------- ; p_load average footing pressure / c ;场地的平均压力 ; c_disp magnitude of vertical displacement at footing center / a ;场地中心的垂直沉降量 ;--------------------------------------------------------------------- def actLoad ;定义函数 actLoad(活荷载)(fish语言的起始句) pnt gp_head ;把网格点指针的首个地址(gp_head)赋予变量 pnt pload 0.0 ;定义变量 pload为0 n 0 ;定义变量 n为0 loop while pnt null ;loop是循环命令,其条件是0pnt≠ if gp_zpospnt 9.9 then ;当变量 pnt所对应 的z坐标大于9.9 if gp_xpospnt rad base in_def FLAC原理实例与应用指南 FLAC3D 实例分析教程实例分析教程 20 ;交互式输入隧道中心以下的底部宽度,注意其值不能大于隧道半径。 ; default 0.5 msg tunnel “height“ from base to center height height in_def ;交互式输入模型底部到隧道中心的的高度,默认为0.5 ; default 2.0 msg extent of inner primitive in x-direction dx extent x0-dx to x0dx dx in_def ;在x方向上对内部的原始坐标进行扩展,分别增加、减少dx ; default 2.0 msg extent of inner primitive in z-direction dz extent z0-dz to z0dz dz in_def ;在z方向上对内部的原始坐标进行扩展,分别增加、减少dz ; default 5.0 msg uni-grid tunnel maximum in y-direction y2 y2 in_def ;统一网格坐标下,y坐标方向上的最大值 ; default 15.0 msg radial-grid tunnel maximum in y-direction y3 y3 in_def ;放射性网格在y方向上的最到值 ; dummyout model inner width stringraddx default 4.0 msg extent of entire tunnel in x-direction from tunnel center xr extent xr-x0 xr in_def x0 ;执行命令out(s)是为了在屏幕上显示其后面的信息。stringvar是转化变量 ;为字符串。并在x方向上从隧道中心扩展整个坐标系 ; dummyout model inner height stringraddz default 4.0 msg extent of entire tunnel in z-direction above tunnel center zt extent zt-z0 zt in_def z0 ;和上面的命令一样,在z方向上从隧道中心扩展整个坐标系 ; default 4 msg number of zones along top of tunnel primitive nx nx in_def ;初始隧道顶部的单元数 ; FLAC原理实例与应用指南 FLAC3D 实例分析教程实例分析教程 21 default 3 msg number of zones in radial direction nr nr in_def ;放射性网格在放射方向上的单元个数 ; default 4 msg number of zones in tunnel u-shaped wrap nu nu in_def ;u型隧道单元的数量 default 4 msg number of zones along bottom rightside nz1 must be even number nz1 in_def if nz1/2*2nz1 then nz1nz11 end_if ;隧道底部的单元数量,这里用if语句控制nz1的输入 ; if xr-x00 then zzz0-gp_zposp_gp ;这里的gp_zposp_gp是取这个地址中的网格点的z坐标 zxzz/xx if zxzz then ang2angmax*zz/xx ; remap direction from uni lengths to uni angles rrxx*sqrt2 gp_xposp_gpx0rr*cosang2 gp_zposp_gpz0rr*sinang2 else if zzxx then ang2angmax*xx/zz ; remap direction from uni lengths to uni angles rrzz*sqrt2 gp_xposp_gpx0rr*sinang2 gp_zposp_gpz0rr*cosang2 end_if end_if end_if p_gpgp_nextp_gp FLAC原理实例与应用指南 FLAC3D 实例分析教程实例分析教程 32 end_loop end def makeall tunnel_data make1 ; outside top make2 ; outside lower-right make3 ; outside bottom make4 ; outside bottom-right make5 ; inside bottom call make5 before make6 so common points mapped with map2 make6 ; inside top make7 ; far top and right ; remap inner tunnel walls into outer arcs map1a ; inside bottom adjust right side to vertical map1 ; inside bottom adjust right side to sector map2 ; inside top end makeall ;此时,执行上面的所有命令 gen merge 1e-4 ; gen zone reflect orig x0 y1 z0 norm 0 0 1 ; plo crea qqq plo add block group ;plo set perspective off ;easier to see w/o perspective plo sho ;显示图像,这里用户可以有一些下拉菜单的命令,找出自己想看的内容 pause ;暂停 group top heading range group g5 group invert range group g6 group rock range group top heading not group invert not ;这里的group命令是建立一些群,方便操作。 pause ;暂停 FLAC原理实例与应用指南 FLAC3D 实例分析教程实例分析教程 33 实例分析实例分析 8模型材料问题模型材料问题 图14y方向的应力曲线 例例 8 gen zone cyl p0 0 0 0 p1 1 0 0 p2 0 2 0 p3 0 0 1 size 4 5 4 ;建立圆柱的网格单元 ,大小为 4 5 4 gen zone reflect norm 1,0,0 ;对单元进行镜像,法线为(1,0,0),原点为(0,0,0) gen zone reflect norm 0,0,1 ;对以上所有单元再进行镜像,法线为(0,0,1),原点为(0,0,0) model mohr ;采用摩尔-库仑模型 prop bulk 1.19e10 shear 1.1e10 ;为模型赋予参数, 体积模量为 10 1.19 10 , 剪切模量为 10 1.1 10。 prop coh 2.72e5 fric 44 ten 2e5 ; 内聚力为 5 2.72 10,内摩擦角为44,抗拉强的为 5 2 10。 fix x y z range y -.1 .1 ;边界y0为固定支座 fix x y z range y 1.9 2.1 ;边界y2为固定支座 ini yvel 1e-7 range y -.1 .1 ;在y0的边界上,初始y方向上的速度为 7 1 10− ini yvel -1e-7 range y 1.9 2.1 FLAC原理实例与应用指南 FLAC3D 实例分析教程实例分析教程 34 ;在y2的边界上,初始y方向上的速度为- 7 1 10− ; ini pp 1e5 hist gp ydisp 0,0,0 ;监测网格点(0,0,0)点的y方向上的位移 hist zone syy 0,1,0 ;监测单元(0,1,0)点的y方向上的应力 hist zone syy 1,1,0 ;监测单元(1,1,0)点的y方向上的应力 step 3000 ;运行3000步 FLAC原理实例与应用指南 FLAC3D 实例分析教程实例分析教程 35 实例分析实例分析 9Interface 合并(联结)问题合并(联结)问题 图15运行1616步的z方向的等值线图 图16运行1649步的z方向的等值线图 FLAC原理实例与应用指南 FLAC3D 实例分析教程实例分析教程 36 例例 9 new ;新建 ; glued interface grid ;粘合交互网格 gen zone brick size 4 4 4 p0 0,0,0 p1 4,0,0 p2 0,4,0 p3 0,0,2 ;建立块体网格单元,大小为4 4 4 ,其具体位置由p0,p1,p2,p3 的坐标决定。 gen zone brick size 8 8 4 p0 0,0,3 p1 4,0,3 p2 0,4,3 p3 0,0,5 ;建立块体网格单元,大小为8 8 4 ,其具体位置由p0,p1,p2,p3 的坐标决定。 inter 1 face range z 2.9,3.1 ;在z 3 的面上建立交互单元 inter 1 prop kn 300e9 ks 300e9 tens 1e10 SBRATIO 1 ;赋予交界面参数,法向刚度为 11 3.0 10,剪切刚度为 11 3.0 10, 抗拉强度为 10 1.0 10,网格的比率为1 ini z add -1.0 range z 2.9,5.1 ;z方向上在2.9到5.1的范围内,所有z的坐标都减1 model elas ;材料模型为弹性模型 prop bulk 8e9 shear 5e9 ;材料的参数为,体积模量为 9 8 10,剪切模量为 9 5 10 fix z range z -.1 .1 ;固定边界z0 ,为滚动支座 fix x range x -.1 .1 ;固定边界x0 ,为滚动支座 fix x range x 3.9 4.1 ;固定边界x4 ,为滚动支座 fix y range y -.1 .1 ;固定边界y0 ,为滚动支座 fix y range y 3.9 4.1 ;固定边界y4 ,为滚动支座 apply szz -1e6 range z 3.9 4.1 x 0,2 y 0,2 ;在z4 的平面中,x(0,2),y(0,2)的范围内施加z方向的应力为 6 1 10− hist unbal ;监测不平衡力 solve ;计算,一般计算到ratio 5 1 10−为止 save inter.sav ;将文件保存为inter.sav call plot.dat ;调用plot.dat文件 pause ;暂停 FLAC原理实例与应用指南 FLAC3D 实例分析教程实例分析教程 37 new ;新建文档 ; attached grid ;连接网格 gen zone brick size 4 4 4 p0 0,0,0 p1 4,0,0 p2 0,4,0 p3 0,0,2 ;建立块体的网格单元,其大小为4 4 4 ,其空间位置由p0,p1,p2,p3决定 gen zone brick size 8 8 4 p0 0,0,2 p1 4,0,2 p2 0,4,2 p3 0,0,4 ;建立块体的网格单元,其大小为8 8 4 ,其空间位置由p0,p1,p2,p3决定 attach face range z 1.9 2.1 ;在z2的平面上连接交界面 model elas ;材料模型为弹性模型 prop bulk 8e9 shear 5e9 ;体积模量为 9 8 10,剪切模量为 9 5 10 fix z range z -.1 .1 ;固定边界z0 ,为滚动支座 fix x range x -.1 .1 ;固定边界x0 ,为滚动支座 fix x range x 3.9 4.1 ;固定边界x4 ,为滚动支座 fix y range y -.1 .1 ;固定边界y0 ,为滚动支座 fix y range y 3.9 4.1 ;固定边界y4 ,为滚动支座 apply szz -1e6 range z 3.9 4.1 x 0,2 y 0,2 ;在z4 的平面中,x(0,2),y(0,2)的范围内施加z方向的应力为 6 1 10− hist unbal ;监测不平衡力 Solve ;计算,一般计算到ratio 5 1 10−为止 save att.sav ;将文件保存为att.sav call plot.dat ;调用plot.dat文件 pause ;;暂停 new ;新建文本 ; one grid ;一个网格 gen zone brick size 8 8 8 p0 0,0,0 p1 4,0,0 p2 0,4,0 p3 0,0,4 ;建立块体的网格单元,其大小为8 8 8 ,其空间位置由p0,p1,p2,p3决定 model elas FLAC原理实例与应用指南 FLAC3D 实例分析教程实例分析教程 38 ;材料模型为弹性模型 prop bulk 8e9 shear 5e9 ;材料的体积模量为 9 8 10,剪切模量为 9 5 10 fix z range z -.1 .1 ;固定边界z0 ,为滚动支座 fix x range x -.1 .1 ;固定边界x0 ,为滚动支座 fix x range x 3.9 4.1 ;固定边界x4 ,为滚动支座 fix y range y -.1 .1 ;固定边界y0 ,为滚动支座 fix y range y 3.9 4.1 ;固定边界y4 ,为滚动支座 apply szz -1e6 range z 3.9 4.1 x 0,2 y 0,2 ;在z4 的平面中,x(0,2),y(0,2)的范围内施加z方向的应力为 6 1 10− hist unbal ;监测不平衡力 solve ;计算,一般计算到ratio 6 1 10−为止 save noatt.sav ;将文件保存为noatt.sav call plot.dat ;调用plot.dat文件 FLAC原理实例与应用指南 FLAC3D 实例分析教程实例分析教程 39 实例分析实例分析 10初始条件问题初始条件问题 APPLY命令可以在其后面选用关键词gradient,这时,我们就可以在一个指定 的范围内线性地改变应力或应变。在关键词gradient后面的参数为gx,gy,gz, 它们可以用来说明应力或者应变在x,y,z上的变化趋势。应力或者应变线性改 变的距离,是以全局坐标系下的原点(0,0,0)为准的。例如 o xyz SSg xg yg z (3.1) 在此公式中, o S的数值是全局坐标下的值,其原点坐标为(0,0,0), x g、 y g、 z g是沿x,y,z上的变化趋势值。 对于这个公式的理解,我们最好用下面的这得例子加以解释 apply sxx -10e6 gradient 0 , 0, 1e5 range z -100 , 0 在这个求解 xx σ的方程中,z为变量,所以 xx σ为 65 10 1010 xx zσ − 这里, xx σ在原点(0,0,0)的应力为 6 10 10 xx σ −,而在100z −处, 6 20 10 xx σ −。在这两点之间时,应力的大小随这一点距原点坐标的远近而线性 地改变。 特别指出,我们可以应用此命令来模拟由重力引起的,随深度而有所增加的应 力变化。我们在说明INITIAL 命令时,确定应力场是随坐标而产生坡度变化的, 并且重力加速度的值已有SET gravity 命令给出。 FLAC原理实例与应用指南 FLAC3D 实例分析教程实例分析教程 40 图17 在初始阶段z放向应力的等值线图 图18 在运行1113步后z放向应力的等值线图 例例 10 gen zone brick size 8 8 10 ratio 1.2 1 1 FLAC原理实例与应用指南 FLAC3D 实例分析教程实例分析教程 41 ;产生块体的网格单元,其到小为8 8 10 ,在x,y,z方向上的放大比率依 ;次为1.2 , 1 ,1 model mohr ;材料模型为摩尔-库仑模型 ini dens 2000 ;所有材料的初始密度为2000 prop bu