flac3D基础与工程实例命令
FLAC3D基本原理及简单实例
FLAC3D基础知识
• 其中,体积模量K和剪切模量G与杨氏模量E和泊松比v有以下关系:
E 3(1 2 ) E G 2(1 ) K
9 KG 3K G 3K 2G G 2(3K G ) E
或
摩尔-库伦塑性模型需要材料参数有: (1)密度 (2)体积模量 (3)剪切模量 (4)内摩擦角 (5)粘聚力 (6)抗拉强度 如果不指定这些材料参数,其值将会自动默认为零。
3D
生成网格
执行变更
定义材料本构关系和 性质 定义边界、初始条件
计算结果保存及调用
图形绘制及结果输出
FLAC3D基础知识
指定材料模型
• 一旦完成了网格的生成,就必须给模型中的所有单元指定一种或者更 多的材料模型及相应的性质。这可以用两个命令MODEL和 PROPERTY来完成。FLAC中有十种内置的材料模型,一般只用三种 模型:MODEL null,MODEL elastic和MODEL mohr。 • MODEL null指的是从模型中去除的或开挖的材料; MODEL elastic 指的是各向同性弹性材料行为; MODEL mohr指的是摩尔-库伦塑性 行为。 • MODEL elastic和MODEL mohr需要通过PROPERTY命令指定材料的 性质,弹性模型需要的材料参数有: • (1)密度 • (2)体积模量 • (3)剪切模量
f t 3 t
式中, 是摩擦角,C是粘聚力, t 是张拉强度,且有:
N
3
张拉强度不超过 值,最大值由下式给定:
1 sin 1 sin
t max
c tan
2.2 FLAC3D常用材料本构模型
Mohr-Coulomb模型
流动法则
FLAC3D常见命令与使用技巧
FLAC3D常见命令与使用技巧FLAC3D常见命令与使用技巧1、FLAC3D常见命令:1.FLAC3D是有限元程序吗?答:不是!是有限差分法。
2.最先需要掌握的命令有哪些?答:需要掌握gen, ini, app, plo, solve等建模、初始条件、边界条件、后处理和求解的命令。
3.怎样看模型的样子?答:plo blo gro可以看到不同的group的颜色分布4.怎样看模型的边界情况?答:plo gpfix red5.怎样看模型的体力分布?答:plo fap red6.怎样看模型的云图?答:位移:plo con dis (xdis, ydis, zdis)应力:plo con sz (sy, sx,sxy, syz, sxz)7.怎样看模型的矢量图?答:plo dis (xdis, ydis, zdis)8.怎样看模型有多少单元、节点?答:pri info9.怎样输出模型的后处理图?答:File/Print type/Jpg file,然后选择File/Print,将保存格式选择为jpe文件10.怎样调用一个文件?答:File/call或者call命令10.如何施加面力?答:app nstress11.如何调整视图的大小、角度?答:综合使用x, y, z, m, Shift键,配合使用Ctrl+R,Ctrl+Z等快捷键12.如何进行边界约束?答:fix x ran(约束的是速度,在初始情况下约束等效于位移约束)13.如何知道每个单元的ID?答:用鼠标双击单元的表面,可以知道单元的ID和坐标14.如何进行切片?答:plo set plane ori (点坐标) norm (法向矢量) plo con sz plane (显示z方向应力的切片)15.如何保存计算结果?答:save +文件名.16.如何调用已保存的结果?答:rest +文件名;或者File / Restore17.如何暂停计算?答:Esc18.如何在程序中进行暂停,并可恢复计算?答:在命令中加入pause命令,用continue进行继续19.如何跳过某个计算步?答:在计算中按空格键跳过本次计算,自动进入下一步20. Fish是什么东西?21. Fish是否一定要学?答:可以不用,需要的时候查Mannual 获得需要的变量就可以了22.FLAC3D允许的命令文件格式有哪些?答:无所谓,只要是文本文件,什么后缀都可以23.如何调用一些可选模块?答:config dyn (fluid, creep, cppudm)24 .如何在圆柱体四周如何施加约束条件?答:可以用fix ... ran cylinder end1 end2 radius r1 cylinder end1 end2radius r2 not,其中r225.如何能把一个PLOT的图像数据导出来以便用其他软件绘图?答:用set log on命令,把数据导出来,转到excel里处理一下,然后用surfer或者什么作图软件绘制就行了。
FLAC3D 实例命令流1
第1部分命令流按照顺序进行2-1定义一个FISH函数newdef abcabc = 25 * 3 + 5Endprint abc2-2使用一个变量newdef abchh = 25abc = hh * 3 + 5EndPrint hhPrint abc2-3对变量和函数的理解newdef abchh = 25abc = hh * 3 + 5Endset abc=0 hh=0print hhprint abcprint hhnewdef abcabc = hh * 3 + 5endset hh=25print abcset abc=0 hh=0print hhprint abcprint hh2-4获取变量的历史记录newgen zone brick size 1 2 1model mohrprop shear=1e8 bulk=2e8 cohes=1e5 tens=1e10fix x y z range y -0.1 0.1apply yvel -1e-5 range y 1.9 2.1plot set rotation 0 0 45plot block groupdef get_adad1 = gp_near(0,2,0)ad2 = gp_near(1,2,0)ad3 = gp_near(0,2,1)ad4 = gp_near(1,2,1)endget_addef loadload=gp_yfunbal(ad1)+gp_yfunbal(ad2)+gp_yfunbal(ad3)+gp_yfunbal(ad4) endhist loadhist gp ydis 0,2,0step 1000plot his 1 vs -22-5用FISH函数计算体积模量和剪砌模量newdef derives_mod = y_mod / (2.0 * (1.0 + p_ratio))b_mod = y_mod / (3.0 * (1.0 - 2.0 * p_ratio))endset y_mod = 5e8 p_ratio = 0.25deriveprint b_modprint s_mod2-6 在FLAC输入中使用符号变量Newdef derives_mod = y_mod / (2.0 * (1.0 + p_ratio))b_mod = y_mod / (3.0 * (1.0 - 2.0 * p_ratio))endset y_mod = 5e8 p_ratio = 0.25derivegen zone brick size 2,2,2model elasticprop bulk=b_mod shear=s_modprint zone prop bulkprint zone prop shear2-7 控制循环Newdef xxxsum = 0prod = 1loop n (1,10)sum = sum + nprod = prod * nend_loopendxxxprint sum, prodnewgen zone brick p0 (0,0,0) p1 (-10,0,0) p2 (0,10,0) p3 (0,0,-10) model elasplot set rotation 0 0 45plot block groupdef installpnt = zone_headloop while pnt #nullz_depth = -z_zcen(pnt)y_mod = y_zero + cc * sqrt(z_depth)z_prop(pnt, ’shear’) = y_mod / (2.0*(1.0+p_ratio))z_prop(pnt, ’bulk’) = y_mod / (3.0*(1.0-2.0*p_ratio))pnt = zone_next(pnt)end_loopendset p_ratio=0.25 y_zero=1e7 cc=1e8install2-8 拆分命令行new ;example of a sum of many thingsdef long_sumtemp = v1 + v2 + v3 + v4 + v5 + v6 + v7 + v8 + v9 + v10 long_sum = temp + v11 + v12 + v13 + v14 + v15end2-9 变量类型newdef haveoneaa = 2bb = 3.4cc = ’Have a nice day’dd = aa * bbee = cc + ’, old chap’endhaveoneprint fish2-10 IF条件语句newdef abcif xx > 0 thenabc = 1000elseabc = -1000end_ifendset xx = 10print abcset xx = 0print abc2-11 索单元自动生成newgen zone brick size 10 3 5plot set rotation 0 0 45plot block groupdef place_cablesloop n (1,5)z_d = float(n) - 0.5commandsel cable beg 0.0,1.5,z_d end 7.0,1.5,z_d nseg 7 end_commandend_loopendplace_cablesplot grid sel geom rednewgen zone brick size 10 3 5plot set rotation 15 0 60plot block groupmod mohrprop bulk 1e8 shear .3e8 fric 35prop coh 1e3 tens 1e3ini dens 1000set grav 0,0,-10fix x y z range z -.1 .1fix y range y -.1 .1fix y range y 2.9 3.1fix x range x -.1 .1fix x range x 9.9 10.1set largehist unbalsolvesave cab_str.savini xdis 0 ydis 0 zdis 0hist gp xdisp 0,1,5def place_cablesloop n (1,5)z_d = 5.5 - float(n)z_t = z_d + 0.5z_b = z_d - 0.5commandfree x range x -.1,.1 z z_b z_tsolvesel cable beg 0.0,0.5,z_d end 7.0,0.5,z_d nseg 7sel cable beg 0.0,1.5,z_d end 7.0,1.5,z_d nseg 7sel cable beg 0.0,2.5,z_d end 7.0,2.5,z_d nseg 7sel cable prop emod 2e10 ytension 1e8 xcarea 1.0 &gr_k 2e10 gr_coh 1e10 gr_per 1.0end_commandend_loopendplace_cablessave cab_end.savplot sketch sel cable force red2-12圆形隧道开挖模拟计算;建立模型gen zon radcyl p0 0 0 0 p1 6 0 0 p2 0 1 0 p3 0 0 6 &size 4 2 8 4 dim 3 3 3 3 rat 1 1 1 1.2 group outsiderockgen zone cshell p0 0 0 0 p1 3 0 0 p2 0 1 0 p3 0 0 3 &size 1 2 8 4 dim 2.7 2.7 2.7 2.7 rat 1 1 1 1 group concretliner fill group insiderock gen zon reflect dip 90 dd 90 orig 0 0 0gen zon reflect dip 0 dd 0 ori 0 0 0gen zon brick p0 0 0 6 p1 6 0 6 p2 0 1 6 p3 0 0 13 size 4 2 6 group outsiderock1 gen zon brick p0 0 0 -12 p1 6 0 -12 p2 0 1 -12 p3 0 0 -6 size 4 2 5 group outsiderock2 gen zon brick p0 6 0 0 p1 21 0 0 p2 6 1 0 p3 6 0 6 size 10 2 4 group outsiderock3 gen zon reflect dip 0 dd 0 orig 0 0 0 range group outsiderock3gen zon brick p0 6 0 6 p1 21 0 6 p2 6 1 6 p3 6 0 13 size 10 2 6 group outsiderock4gen zon brick p0 6 0 -12 p1 21 0 -12 p2 6 1 -12 p3 6 0 -6 size 10 2 5 group outsiderock5 gen zon reflect dip 90 dd 90 orig 0 0 0 range x -0.1 6.1 z 6.1 13.1gen zon reflect dip 90 dd 90 orig 0 0 0 range x -0.1 6.1 z -6.1 -12.1gen zon reflect dip 90 dd 90 orig 0 0 0 range x 6.1 21.1 z -12.1 13.1;绘制模型图plot block groupplot add axes red;plot set rotation 0 0 45 用于显示三维模型;设置重力set gravity 0 0 -10;给定边界条件fix z range z -12.01,-11.99fix x range x -21.01,-20.99fix x range x 20.99,21.01fix y range y -0.01 0.01fix y range y 0.99,1.01;求解自重应力场model mohrini density 1800 ;围岩的密度prop bulk=1.47e8 shear=5.6e7 fric=20 coh=5.0e4 tension=1.0e4 ;体积、剪切、摩擦角、凝聚力、抗拉强度set mech ratio=1e-4solvesave Gravsol.savplot cont zdisp outl onplot cont szz;毛洞开挖计算initial xdisp=0 ydisp=0 zdisp=0model null range group insiderock any group concretliner anyplot block groupplot add axes redset mech ratio=5e-4solvesave Kaiwsol.savplot cont zdispplot cont sdispplot cont szzplot cont xzz;模筑衬砌计算model elas range group concretliner anyplot block groupplot add axes redini density 2500 range group concretliner any ;衬砌混凝土的密度prop bulk=16.67e9,shear=12.5e9 range group concretliner any ;衬砌混凝土的体积弹模、剪切弹模set mech ratio=1e-4solvesave zhihusol.savplot cont zdispplot cont sdispplot cont szzplot cont xzz;完成计算分析。
《FLAC3D基础与工程实例》全部命令流
《FLA C/FLA C 3D基础与工程实例》全部命令流1gen zone bri p0 0 0 0 p1 10 0 0 p2 0 10 0 p3 0 0 10 &p4 15 15 0 p5 0 15 15 p6 15 0 10 p7 20 20 20 &size 10 10 10 rat 1.0 0.9 1.1 groupbrick_1gen zone bri p0 20 0 0 p1 add 10 0 0 p2 add 0 20 0 p3 add 0 0 15 & size 10 10 10 rat 1.0 0.9 1.1 groupbrick_2gen zone bri p0 40 0 0 edge 10 size 10 10 10 rat 1.0 0.9 1.1 groupbrick_3 plot surnewgen zon bri size 3 3 3modelelasprop bulk 3e8 shear1e8ini dens 2000fix z ran z -.1 .1fix x ran x -.1 .1fix x ran x 2.9 3.1fix y ran y -.1 .1fix y ran y 2.9 3.1set grav 0 0 -10solveapp nstres s -10e4 ran z 3 x 1 2 y 1 2 hist gp vel 0 0 3hist gp vel 0 3 3plo hist 1 redplo add hist 2 bluesolve;-------------------------------------工程信息;Projec t Record Tree export;Title:Simple test;---------------------------------计算第一步;... STATE: STATE1 ....configgrid 10,10modelelasti cgroup'User:Soil' notnul lmodelelasti c notnul l group'User:Soil'prop densit y=1500.0 bulk=3E6 shear=1E6 notnul l group'User:Soil' fix x y j 1fix x i 1fix x i 11set gravit y=9.81histor y 999 unbala ncedsolvesave state1.sav;----------------------------------计算第二步;... STATE: STATE2 ....initia l xdisp0 ydisp0initia l xvel 0 yvel 0modelnull i 4 7 j 8 10group'null' i 4 7 j 8 10groupdelete 'null'histor y 1 xdispi=4, j=11solvesave state2.sav;--------------------------------绘图命令;*** plot comman ds ****;plot name: syyplot hold grid syy fill;plot name: Unbala ncedforceplot hold histor y 999;plot name: gridplot hold grid magnif y 20.0 lred grid displa cemen t;plot name: Xdis-Aplot hold histor y 1 linenew; ===============================; 定义球体半径和半径方向上单元网格数; ===============================def parmrad=10.0rad_si ze=5endparm; ===============================; 建立八分之一球体外接立方体网格; ===============================gen zone pyrami d p0 rad 0 0 p1 rad 0 rad p2 rad rad 0 p3 0 0 0 & p4 rad rad rad size rad_si ze rad_si ze rad_si ze group1gen zone pyrami d p0 0 rad 0 p1 rad rad 0 p2 0 rad rad p3 0 0 0 & p4 rad rad rad size rad_si ze rad_si ze rad_si ze group2gen zone pyrami d p0 0 0 rad p1 0 rad rad p2 rad 0 rad p3 0 0 0 & p4 rad rad rad size rad_si ze rad_si ze rad_si ze group3; ==================================; 利用FISH语言将内部立方体节点调整到球面; ==================================def make_s pherep_gp=gp_hea dloop whilep_gp#null; 获取节点点坐标值:P=(px,py,pz)px=gp_xpo s(p_gp)py=gp_ypo s(p_gp)pz=gp_zpo s(p_gp)dist=sqrt(px*px+py*py+pz*pz)if dist>0 then; 节点位置调整maxp=max(px,max(py,pz))k=(maxp/rad)*(rad/dist)gp_xpo s(p_gp)=k*pxgp_ypo s(p_gp)=k*pygp_zpo s(p_gp)=k*pzend_ifp_gp=gp_nex t(p_gp)end_lo opendmake_s phere; ===============================; 利用镜像生成完整球体网格; =============================== gen zone refgen zone ref dip 90gen zone ref dip 90 dd 90; =============================== ; 显示球体网格; =============================== plot surfpl set back whpl bl grngen zon bri size 1 1 2 groupsoil ran z 1 1 grouprock ran z 0 1 expgri d 1.flac3dgen zon bri size 3 3 3modelmohrprop bu 3e6 sh 1e6 coh 10e3 fric 15 fix z ran z -.1 .1fix x ran x -.1 .1fix x ran x 2.9 3.1fix y ran y -.1 .1fix y ran y 2.9 3.1ini dens 2000hist unbalset grav 10solveelasti csave 6-1.savrest 6-1.savini xd 0 yd 0 zd 0 xv 0 yv 0 zv 0app nstres s -100e3ran z 2.9 3.1 x 1 2 y 1 2 solvesave 6-2.savrest 6-1.savini xd 0 yd 0 zd 0 xv 0 yv 0 zv 0app nstres s -100e3ran z 2.9 3.1 x 1 2 y 1 2 hist id=2 gp zdis 1 1 3hist id=3 gp zdis 1 1 2hist id=4 gp xdis 1 1 3hist id=5 gp xdis 1 1 3hist id=6 zone szz 1 1 3hist id=7 zone szz 1.5 1.5 2.5hist id=8 zone sxz 1.5 1.5 2.5solvesave 6-3.savrest 6-3.savset log onset logfil e 6-2.log printzone stress printgp disset log offrest 6-1.savini xd 0 yd 0 zd 0 xv 0 yv 0 zv 0app nstres s -100e3ran z 2.9 3.1 x 1 2 y 1 2 plot set rot 20 0 30plot con szz ou on magf 10plot add hist 1set movieavi step 1 file 6-5.avimoviestartsolvemoviefinishngen zon bri size 1 1 2 modelelasprop bulk 3e7 shear1e7 fix z ran z 0fix x ran x 0fix x ran x 1fix y ran y 0fix y ran y 1ini dens 2000set grav 0 0 -10solveplo con szngen zon bri size 1 1 2modelmohrprop bulk 3e7 shear1e7 c 1e10 f 15 tensio n 1e10 fix z ran z 0fix x ran x 0fix x ran x 1fix y ran y 0fix y ran y 1ini dens 2000set grav 0 0 -10solveprop bulk 3e7 shear1e7 c 10e3 f 15 ten 0solveplo con szngen zone bricksize 1 1 2modelmohrprop bulk 3e7 shear1e7 coh 10e3 fri 15 ten 0 fix z ran z 0fix x ran x 0fix x ran x 1fix y ran y 0fix y ran y 1ini dens 2000set grav 0 0 -10solveelasplo con sznewgen zone bricksize 1 1 2modelmohrprop bulk 3e7 shear1e7 coh 10e3 fri 15 ten 0 fix z ran z 0fix x ran x 0fix x ran x 1fix y ran y 0fix y ran y 1ini dens 2000ini szz -40e3 grad 0 0 20e3 ran z 0 2ini syy -20e3 grad 0 0 10e3 ran z 0 2ini sxx -20e3 grad 0 0 10e3 ran z 0 2set grav 0 0 -10solveplo con szngen zon bri size 1 1 2modelmprop bulk 3e7 shear1e7 c 10e10f 15 ten 1e10 fix z ran z 0fix x ran x 0fix x ran x 1fix y ran y 0fix y ran y 1ini dens 2000 ran z 0 1ini dens 1500 ran z 1 2ini szz -35e3 grad 0 0 20e3 ran z 0 1ini syy -17.5e3 grad 0 0 10e3 ran z 0 1ini sxx -17.5e3 grad 0 0 10e3 ran z 0 1ini szz -15e3 grad 0 0 15e3 ran z 1 2ini syy -7.5e3 grad 0 0 7.5e3 ran z 1 2ini sxx -7.5e3 grad 0 0 7.5e3 ran z 1 2ini pp 10e3 grad 0 0 -10e3 ran z 0 1set grav 0 0 -10solveplo con szngen zon bri size 1 1 2modelmprop bulk 3e7 shear1e7 c 10e10f 15 ten 1e10 fix z ran z 0fix x ran x 0fix x ran x 1fix y ran y 0fix y ran y 1ini dens 2000 ran z 0 2ini szz -50e3 grad 0 0 20e3 ran z 0 1ini syy -30e3 grad 0 0 10e3 ran z 0 1ini sxx -30e3 grad 0 0 10e3 ran z 0 1ini pp 30e3 grad 0 0 -10e3 ran z 0 2app nstres s -10e3 ran z 2set grav 0 0 -10solveplo con sznewgen zone brickp0 0 0 0 p1 60 0 0 p2 0 60 0 p3 0 0 90 & p4 60 60 0 p5 0 60 90 p6 60 0 150 p7 60 60 150 & size 6 6 10modelelaspro bulk 10e10she 10e10ini den 2500applysxx -1e9 grad 0 0 1.1111111e7 rangex -.1 .1 applysxx -1e9 grad 0 0 6.6666666e6 rangex 59.9 60.1 applysyy -1e9 grad 0 0 8.3333333e6 rangey -.1 .1 applysyy -1e9 grad 0 0 8.3333333e6 rangey 59.9 60.1 applyszz -1e8 grad 0 0 8.3333333e5 ran z 0 120set grav 0 0 -10step 30000ini xdisp0 ydisp0 zdisp0ini xvel 0 yvel 0 zvel 0plo cont szznewgen zone brickp0 0 0 0 p1 60 0 0 p2 0 60 0 p3 0 0 90 & p4 60 60 0 p5 0 60 90 p6 60 0 150 p7 60 60 150 & size 6 6 10modelelaspro bulk 10e10she 10e10ini den 2500ini sxx -1e9 grad 0 0 1.1111111e7 rangex -.1 .1ini sxx -1e9 grad 0 0 6.6666666e6 rangex 59.9 60.1ini syy -1e9 grad 0 0 8.3333333e6 rangey -.1 .1ini syy -1e9 grad 0 0 8.3333333e6 rangey 59.9 60.1ini szz -1e8 ran z -.1 .1fix x y z ran z -.1 .1set grav 0 0 -10solveini xdisp0 ydisp0 zdisp0ini xvel 0 yvel 0 zvel 0plo cont szznewgen zone brickp0 0 0 -50 p1 27.5 0 -50 p2 0 5 -50 p3 0 0 -10 size 8 1 10 groupclaygen zone brickp0 27.5 0 -50 p1 100 0 -50 p2 27.5 5 -50 p3 27.5 0 -10 ratio1.1 1 1 size 12 1 10 groupclaygen zone brickp0 0 0 -10 p1 27.5 0 -10 p2 0 5 -10 p3 0 0 0 ratio1 1 0.8 size 8 1 4 groupsoilgen zone brickp0 27.5 0 -10 p1 100 0 -10 p2 27.5 5 -10 p3 27.5 0 0 ratio1.1 1 0.8 size 12 1 4 groupsoilgen zone brickp0 0 0 0 p1 27.5 0 0 p2 0 5 0 p3 0 0 5 p4 27.5 5 0 &p5 0 5 5 p6 20 0 5 p7 20 5 5 size 8 1 5 groupdamfix x y z ran z -49.9 -50.1fix x ran x -.1 .1fix x ran x 99.9 100.1fix ymodelmohr ran z -50 0modelnull ran z 0 5prop bulk 7.8e6 shear3.0e6 coh 10e10tensio n 1e10 ran groupsoilini dens 1500 ran groupsoilprop bulk 3.91e6 shear1.5e6 coh 10e10tensio n 1e10 ran groupclayini dens 1800 ran groupclayset grav 0 0 -9.8hist id=1 unbalsolveprop bulk 7.8e6 shear3.0e6 coh 10e3 fric 15 ran groupsoilprop bulk 3.91e6 shear1.5e6 coh 20e3 fric 20 ran groupclaysolvesave elasti c.savini xdis 0 ydis 0 zdis 0 ;将节点位移清零ini xvel 0 yvel 0 zvel 0 ;将节点速度清零hist id=2 gp zdis 0 0 0 ;记录地基顶部中心点的沉降hist id=3 gp zdis 27.5 0 0 ;记录路基坡脚处的沉降hist id=4 gp xdis 27.5 0 0 ;记录路基坡脚处的水平位移model elasti c ran z 0 1 ; ;激活0 m ~ 1 m的单元prop bulk 7.8e6 shear3.0e6 ran z 0 1ini dens 1500 ran z 0 1solve;按软件默认精度求解save fill-1.savmodelelasti c ran z 1 2prop bulk 7.8e6 shear3.0e6 ran z 1 2ini dens 1500 ran z 1 2solvesave fill-2.savmodelelasti c ran z 2 3prop bulk 7.8e6 shear3.0e6 ran z 2 3ini dens 1500 ran z 2 3solvesave fill-3.savmodelelasti c ran z 3 4prop bulk 7.8e6 shear3.0e6 ran z 3 4ini dens 1500 ran z 3 4solvesave fill-4.savmodelelasti c ran z 4 5prop bulk 7.8e6 shear3.0e6 ran z 4 5ini dens 1500 ran z 4 5solvesave fill-5.savpau;plo bl gr;gen zone brickp0 0 0 0 p1 100 0 0 p2 0 5 0 p3 0 0 5 sizegen zone brickp0 0 0 -50 p1 27.5 0 -50 p2 0 5 -50 p3 0 0 -10 size 8 1 10 groupclay gen zone brickp0 27.5 0 -50 p1 100 0 -50 p2 27.5 5 -50 p3 27.5 0 -10 ratio1.1 1 1 size 12 1 10 groupclaygen zone brickp0 0 0 -10 p1 27.5 0 -10 p2 0 5 -10 p3 0 0 0 ratio1 1 0.8 size 8 1 4 groupsoilgen zone brickp0 27.5 0 -10 p1 100 0 -10 p2 27.5 5 -10 p3 27.5 0 0 ratio1.1 1 0.8 size 12 1 4 groupsoilgen zone brickp0 0 0 0 p1 27.5 0 0 p2 0 5 0 p3 0 0 5 p4 27.5 5 0 &p5 0 5 5 p6 20 0 5 p7 20 5 5 size 8 1 5 groupdamset log on ;打开log记录set logfil e 1.log ;设置记录文件名为:1.logrestore fill-1.sav ;调用保存的文件printgp dis rangei d 517 any id 533 any ;输出两个节点的变形值restor e fill-2.savprintgp dis rangeid 517 any id 533 anyrestor e fill-3.savprintgp dis rangeid 517 any id 533 anyrestor e fill-4.savprintgp dis rangeid 517 any id 533 anyrestor e fill-5.savprintgp dis rangeid 517 any id 533 anyset log off ;关闭log记录def abcabc = 1 + 2 * 3 abcd = 1.0 / 2.0 endabcprintfishdef abcif aa < 0 thenabc = 0.0 elseabc = 2.0 * aa endifendabcdef abcloop aa (1, 2.5) comman dprintaaendcom mand endloo pendnewgen zon bri size 3 3 3modelelasti cprop bu 3e7 sh 1e7ini dens 2000fix x y z ran z -.1 .1fix x ran x -.1 .1fix x ran x 2.9 3.1fix y ran y -.1 .1fix y ran y 2.9 3.1set grav 10solveini xd 0 yd 0 zd 0 xv 0 yv 0 zv 0save 8-4.sav8-5rest 8-4.savdef E_modi fyp_z = zone_h eadd_k = 704d_n = 0.38d_pa = 101325.0 ;//标准大气压loop whilep_z # nullsigma_3 = -1.0 * z_sig1(p_z)E_new= d_k * d_pa * (sigma_3 / d_pa) ^ d_n z_prop(p_z,'young') = E_newp_z = z_next(p_z)endloo pendE_modi fy8-6rest 8-5.savtable1 name load_s ettle mentdef add_lo adp_gp = gp_nea r(2,1,3)loop n (1,5)app_lo ad = n * (-1000e3)file_n ame = '7-6_add_step' + string(n) + '.sav' comman dapp nstres s app_lo ad ran z 2.9 3.1 x 1 2 y 1 2 s olves ave file_n ameendcom mandxtable(1,n) = -1.0 * app_lo adytable(1,n) = gp_zdi sp(p_gp)endloo pendadd_lo adsave 8-6.sav8-7rest 8-6.savdef find_m ax_di spp_gp = gp_hea dmaxdis p_val ue = 0.0maxdis p_gpi d = 0loop whilep_gp # nulldisp_g p = sqrt(gp_xdi sp(p_gp) ^ 2 + gp_ydi sp(p_gp) ^ 2 + gp_zdi sp(p_gp) ^ 2) if disp_g p > maxdis p_val uemaxdis p_val ue = disp_g pmaxdis p_gpi d = gp_id(p_gp)endifp_gp = gp_nex t(p_gp)endloo pendfind_m ax_di spprintmaxdis p_val ue maxdis p_gpi drest 8-6.savconfig zextra 1def get_si gma_d ifp_z = zone_h eadloop whilep_z # nullsigma_dif = z_sig3(p_z) - z_sig1(p_z)z_extr a(p_z,1) = sigma_difp_z = z_next(p_z)endloo pendget_si gma_d ifplot con zextra 1;---------------------------------------------------;; 移来移去法接触面的建立;---------------------------------------------------ngen zone radcyl p0 (0,0,0) p1 (8,0,0) p2 (0,0,-5) p3 (0,8,0) &p4 (8,0,-5) p5 (0,8,-5) p6 (8,8,0) p7 (8,8,-5) &p8 (.3,0,0) p9 (0,.3,0) p10 (.3,0,-5) p11 (0,.3,-5) & size 3 10 6 15 ratio1 1 1 1.15gen zone radcyl p0 (0,0,-5) p1 (8,0,-5) p2 (0,0,-8) p3 (0,8,-5) &p4 (8,0,-8) p5 (0,8,-8) p6 (8,8,-5) p7 (8,8,-8) &p8 (.3,0,-5) p9 (0,.3,-5) p10 (.3,0,-8) p11 (0,.3,-8) & size 3 6 6 15 ratio1 1 1 1.15 fillgen zone reflec t dd 270 dip 90groupclay;interf ace 1 face rangecylind er end1 (0,0,0) end2 (0,0,-5.1) radius .31 &cylind er end1 (0,0,0) end2 (0,0,-5.1) radius .29 notinterf ace 2 face rangecylind er end1 (0,0,-4.9) end2 (0,0,-5.1) radius .31;pausegen zone cyl p0 (0,0,6) p1 (.3,0,6) p2 (0,0,1) p3 (0,.3,6) &p4 (.3,0,1) p5 (0,.3,1) &size 3 10 6gen zone cyl p0 (0,0,6.1) p1 (.3,0,6.1) p2 (0,0,6) p3 (0,.3,6.1) &p4 (.3,0,6) p5 (0,.3,6) &size 3 1 6gen zone reflec t dd 270 dip 90 rangez 1 6.1grouppile rangez 1 6.1pauseini z add -6.0 rangegrouppilesave pile_g eom.sav;导来导去法;---------------------------------------------ngen zone bricksize 3 3 3group2 rangex 1 2 y 1 2 z 1 2group1 rangegr 2 notsave 1.savdel ran group2 notinterf ace 1 face rangex 1 y 1 2 z 1 2interf ace 1 face rangex 2 y 1 2 z 1 2interf ace 1 face rangex 1 2 y 1 z 1 2interf ace 1 face rangex 1 2 y 1 2 z 1interf ace 1 face rangex 1 2 y 1 2 z 2rest 1.savdel ran group2expgri d 1.fac3dimpgri d 1.flac3dmodelelafix x y z ran z 0ini den 2000set grav 0 0 -10interf ace 1 prop kn 20e6 ks 20e6 coh 10e3 fri 15 app nstr -200e3ran x 0 1 y 1 2 z 3solve;切割模型法;------------------------------ngen zone bricksize 3 3 3 group1 rangex 1 2 y 1 2 z 2 3 group2 rangegroup1 not gen separa te 1int 1 wrap 1 2int 1 maxedg e 0.5plo int red9-4; Create Materi al Zonesgen zone bricksize 5 5 5 &p0 (0,0,0) p1 (3,0,0) p2 (0,3,0) p3 (0,0,5) &p4 (3,3,0) p5 (0,5,5) p6 (5,0,5) p7 (5,5,5)gen zone bricksize 5 5 5 p0 (0,0,5) edge 5.0groupMateri al; Create Bin Zonesgen zone bricksize 1 5 5 &p0 (3,0,0) p1 add (3,0,0) p2 add (0,3,0) &p3 add (2,0,5) p4 add (3,6,0) p5 add (2,5,5) &p6 add (3,0,5) p7 add (3,6,5)gen zone bricksize 1 5 5 &p0 (5,0,5) p1 add (1,0,0) p2 add (0,5,0) &p3 add (0,0,5) p4 add (1,6,0) p5 add (0,5,5) &p6 add (1,0,5) p7 add (1,6,5)gen zone bricksize 5 1 5 &p0 (0,3,0) p1 add (3,0,0) p2 add (0,3,0) &p3 add (0,2,5) p4 add (6,3,0) p5 add (0,3,5) &p6 add (5,2,5) p7 add (6,3,5)gen zone bricksize 5 1 5 &p0 (0,5,5) p1 add (5,0,0) p2 add (0,1,0) &p3 add (0,0,5) p4 add (6,1,0) p5 add (0,1,5) &p6 add (5,0,5) p7 add (6,1,5)groupBin rangegroupMateri al not; Create namedrangesynony msrangename=Bin groupBinrangename=Materi al groupMateri al; Assign models to groupsmodelmohr rangeMateri almodelelas rangeBingen separa te Materi alinterf ace 1 wrap Materi al Bin rangeplaneori 0 0 0 normal 1 -1 0 aboveinterf ace 2 wrap Materi al Bin rangeplaneori 0 0 0 normal 1 -1 0 belowint 1 maxedg e 0.55int 2 maxedg e 0.55; Assign proper tiesprop shear1e8 bulk 2e8 fric 30 rangeMateri alprop shear1e8 bulk 2e8 r angeBinini den 2000int 1 prop ks 2e9 kn 2e9 fric 15int 2 prop ks 2e9 kn 2e9 fric 15; Assign Bounda ry Condit ionsfix x rangex -0.1 0.1 any x 5.9 6.1 any fix y rangey -0.1 0.1 any y 5.9 6.1 any fix z rangez -0.1 0.1 Bin; Monito r histor ieshist unbalhist gp zdisp(6,6,10)hist gp zdisp(0,0,10)hist gp zdisp(0,0,0); Settin gsset largeset grav 0,0,-10; Cyclin gstep 4000save bin.sav9-5;;------------------------------------------------------------------;rest pile_g eom.savgroupclaymodelmohr rangeprop bulk 8.333e7 shear3.846e7 coh 30000fric 0 rangegroupclay modelelas rangegrouppileprop bulk 8.333e7 shear3.846e7 rangegrouppileinterf ace 1 prop kn 1e8 ks 1e8 fric 20 coh 30000interf ace 2 prop kn 1e8 ks 1e8 fric 20 coh 30000;ini dens 1230 rangegroupclayini dens 1230 rangegrouppilemodelnull rangez -0.1 0.15;fix z rangez -8.1 -7.9fix x rangex -8.1 -7.9fix x rangex 7.9 8.1fix y rangey -.1 .1fix y rangey 7.9 8.1set grav 0 0 -10ini szz 0. grad 0 0 12300. rangez -5.5 0.ini szz 17600grad 0 0 15500rangez -8 -5.5ini sxx 0. grad 0 0 5271.4 rangez -5.5 0.ini sxx 7542.86 grad 0 0 6642.86 rangez -8 -5.5ini sxx add 31428.6 grad 0 0 5714.3 rangez -8 -5.5ini syy 0. grad 0 0 5271.4 rangez -5.5 0.ini syy 7542.86 grad 0 0 6642.86 rangez -8 -5.5ini syy add 31428.6 grad 0 0 5714.3 rangez -8 -5.5;waterdensit y 1000watertableorigin 0,0,-5.5 normal 0 0 -1ini dens 1550 rangez -8 -5.5hist unbal;solverat 1.e-6save pile0.sav;modelelas rangegrouppileprop bulk 13.9e9 shear10.4e9 rangegrouppileini dens 2500 rangegrouppilecall find_a dd.fissolverat 1.e-6save pile1.savrest pile1.sav ;调用保存文件ini state0ini xdis 0.0 ydis 0.0 zdis 0.0 ;位移清零applyszz -0.4e6 rangez 0.05 0.15 grouppile ;桩顶加第一级荷载solvesave app0.4.savprintgp disp rangei d 1 ;输出第一级荷载下的桩顶位移,假定桩顶中心的i d号为1 applyszz -0.6e6 rangez 0.05 0.15 grouppile ;桩顶加第二级荷载solvesave app0.6.savprintgp disp rangei d 1 ;输出第二级荷载下的桩顶位移…………………………………………;依次加载,直到桩破坏;--------------------------------------------------------------------;速度加载法rest pile1.savini state0ini xdis 0 ydis 0 zdis 0def zs_top;检测桩顶竖向荷载ad = top_he adzftot= 0.0loop whilead # nullgp_pnt = mem(ad+1)zf = gp_zfu nbal(gp_pnt)zftot= zftot+ zfad = mem(ad)endloo pzs_top = zftot/ 0.1414endfix z rangez 0.05 .15 grouppile ;固定桩顶速度,用速度来确定位移def rampwhile_stepp ingif step < ncut thenudapp= float(step) * udmax/ float(ncut)elseudapp= udmaxendifad = top_he adloop whilead # nullgp_pnt = mem(ad+1)gp_zve l(gp_pnt) = udappad = mem(ad)endloo pendhist gp zdis 0,0,0hist gp zvel 0,0,0hist zs_tophist zone szz 0,0,-.1set mech damp combset udmax= -1e-8 ncut 30000step 225000save pile2.sav;;------------------------------------------------------------------------;位移控制法def solve_stepsloop n (1,21)save_f ile = string(n) + '-step.sav'comman ds tep 40000s ave save_f ilepri zone stress ran id 2381 a id 2361 a id 2341 a ;输出桩顶网格单元的应力 endcom mandendloo pendsolve_steps;-----------------------------------------------------------------------------sel beam beg 0 0 0 end 2 0 0 nseg 2sel beam beg 2 0 0 end 4 0 -1 nseg 3sel beam id=2 beg 4 0 -1 end 5 0 -2 nseg 2 plot sel geo id on nod on scale0.04plot ad axsel node id=1 0 0 0sel node id=2 2 0 0sel node id=3 4 0 -1sel node id=4 5 0 -2sel beamse l id=1 cid=1 node 1 2 sel beamse l id=1 cid=2 node 2 3 sel beamse l id=1 cid=3 node 3 4 plot sel geo id on nod on scale0.04 plot ad axdef set_va lsptA = 25.0 * sin( 40.0*degrad )ptB = 25.0 * cos( 40.0*degrad )endset_va lsgen zone cylind er p0=( 0.0, 0.0, 0.0 ) &p1=( ptA, 0.0, ptB ) &p2=( 0.0, 25.0, 0.0 ) &p3=( 0.0, 0.0, 25.0 ) &p4=( ptA, 25.0, ptB ) &p5=( 0.0, 25.0, 25.0 ) &size=(1, 2, 2)sel shellid=5 rangecylind er end1=(0.0, 0.0,0.0) &e nd2=(0.0,25.0,0.0) radius=24.5 not plot blo groplot ad sel geom blackblackcid on scale=0.03plot ad axpaudelete ; delete all zonessel node init zpos add -25.0newgen zone bricksize 6 8 8modelmohrprop bulk 1e8 shear0.3e8 fric 35prop coh 1e10 tens 1e10set grav 0 0 -9.81ini dens 1000fix x rangex -0.1 0.1fix x rangex 5.9 6.1fix y rangey -0.1 0.1fix y rangey 7.9 8.1fix z rangez -0.1 0.1hist n 5hist unbalset mech force50solvesave beam-brace0.sav;prop coh 1e3 tens 1e3modelnull rangex 2 4 y 2 6 z 5 10set largeini xdis 0 ydis 0 zdis 0sel beam begin=( 2, 4, 8) end=( 4, 4, 8) nseg=2sel beam prop emod=2.0e11 nu=0.30sel beam prop XCArea=6e-3 XCIz=200e-6 XCIy=200e-6 XCJ=0.0 hist gp zdisp4 4 8solvesave beam-brace1.sav;plot create GravVplot set planedip 90 dd 0 origin 3 4 0plot set rot 15 0 20plot set center 2.5 4.2 4.0plot set cap size 25plot add cont disp planebehind shadeonplot add sel beam forcefxplot add sel geom blackblacknode=off shrink fac=0.0plot add axesplot show;非全长锚固、预紧力锚杆(锚索)模拟;方法1、通过删除-建立link链接来模拟托盘gen zone radtun p0 0,0,0 p1 25,0,0 p2 0,50, 0 p3 0,0,25 size 4 25 4 10 dim 4 4 4 4 ratio1 1 1 1.1 fillgen zone reflec t normal 1 0 0 ori 0 0 0gen zone reflec t normal0 0 1 ori 0 0 0mo mohrpro bulk 2.2e9 she 1.3e9 fric 30 coh 1.3e6 ten 1.5e5ini dens 2000fix x rangex -25.1,-24.9fix x rangex 24.9 25.1fix y rangey 49.9 50.1fix z rangez -25.1 -24.9fix z rangez 24.9 25.1sel cableid=1 beg 0, 0, 0 end 0 ,29, 0 nseg 10sel cableid=1 beg 0,29,0 end 0,35,0 nseg 6sel cableid=1 prop emod 2e10 ytensi on 310e3xcarea 0.0004906 &gr_coh 1 gr_k 1 gr_per 0.0785 rangecid 1,10sel cableid=1 prop emod 2e10 ytensi on 310e3xcarea 0.0004906 &gr_coh 10e5 gr_k 2e7 rangecid 11,17sel delete link rangeid 1sel link id=100 1 target zonesel link attach xdir=rigidydir=rigidzdir=rigidxrdir=rigidyrdir=rigidzrdir=rigidrangeid 100sel cableid=1 preten sion60e3 rangecid 1,10step 2000sav 10-5.sav;非全长锚固、预紧力锚杆(锚索)模拟;方法2、通过设置极大锚固剂参数模拟托盘gen zone radtun p0 0,0,0 p1 25,0,0 p2 0,50, 0 p3 0,0,25 size 4 25 4 10 dim 4 4 4 4 ratio1 1 1 1.1 fillgen zone reflec t normal 1 0 0 ori 0 0 0gen zone reflec t normal0 0 1 ori 0 0 0mo mohrpro bulk 2.2e9 she 1.3e9 fric 30 coh 1.3e6 ten 1.5e5ini dens 2000fix x rangex -25.1,-24.9fix x rangex 24.9 25.1fix y rangey 49.9 50.1fix z rangez -25.1 -24.9fix z rangez 24.9 25.1sel cableid=1 beg 0, 0, 0 end 0 ,29, 0 nseg 10sel cableid=1 beg 0,29,0 end 0,35,0 nseg 6sel cable prop emod 2e10 ytensi on 310e3xcarea 0.0004906 &gr_coh 1 gr_k 1 gr_per 0.0785 rangecid 2,10sel cable prop emod 2e10 ytensi on 310e3xcarea 0.0004906 &gr_coh 10e5 gr_k 2e7 rangecid 11,17sel cable prop emod 2e10 ytensi on 310e3xcarea 0.0004906 &gr_coh 10e8 gr_k 2e10 rangecid 1,1sel cableid=1 preten sion60e3 rangecid 1,10step 2000sav 10-6.sav;非全长锚固、预紧力锚杆(锚索)模拟;方法3、借助别的结构单元(如liner单元)来模拟托盘gen zone radtun p0 0,0,0 p1 25,0,0 p2 0,50, 0 p3 0,0,25 size 4 25 4 10 dim 4 4 4 4 ratio1 1 1 1.1 fillgen zone reflec t normal 1 0 0 ori 0 0 0gen zone reflec t normal0 0 1 ori 0 0 0mo mohrpro bulk 2.2e9 she 1.3e9 fric 30 coh 1.3e6 ten 1.5e5ini dens 2000fix x rangex -25.1,-24.9fix x rangex 24.9 25.1fix y rangey 49.9 50.1fix z rangez -25.1 -24.9fix z rangez 24.9 25.1sel cableid=1 beg 0, 0, 0 end 0 ,29, 0 nseg 10sel cableid=1 beg 0,29,0 end 0,35,0 nseg 6sel cableid=1 prop emod 2e10 ytensi on 310e3xcarea 0.0004906 &gr_coh 1 gr_k 1 gr_per 0.0785 rangecid 1,10sel cableid=1 prop emod 2e10 ytensi on 310e3xcarea 0.0004906 &gr_coh 10e5 gr_k 2e7 rangecid 11,17sel linerrangey=-.1, .1 x=-1,1 z=-1,1sel linerPROP iso=( 25e9, 0.15) thick=0.1 ; concre tesel linerPROP cs_nk=8e8 cs_sk=8e8 &cs_ncu t=0.0 cs_sco h=0.0 cs_sco hres=0.0 cs_sfr ic=0.0sel delete link rangeid 1sel link id=100 1 target node tgt_nu m 18sel link attach xdir=rigidydir=rigidzdir=rigidxrdir=rigidyrdir=rigidzrdir=rigidrangeid 100sel cableid=1 preten sion60e3 rangecid 1,10step 2000sav 10-7.savntitleStruct ure_d ynami c_ana lysis_lake waterconfig dynsel pile id=1 beg 0 0 0 end 0 0 1sel pile prop dens 2400 &Emod 1.0e10 Nu 0.3 XCArea 0.3 &XCJ 0.16375XCIy 0.00625XCIz 0.01575&Per 2.8 &CS_sK1.3e11 CS_sCo h 0.0 CS_sFr ic 10.0 &CS_nK1.3e11 CS_nCo h 0.0 CS_nFr ic 0.0 CS_nGa p offdef f1whiles teppi ngf0=10000*sin(10*dytime)np = nd_hea dloop whilenp # nullif nd_pos(np,1,3)=1nd_app ly(np,1)=f0endifnp = nd_nex t(np)endloo pendsel node fix x y z xr yr zr ran id=1sel set damp combin edplo cre pileplo curren t pileplo set back blackfore whitemag 0.8plo add sel geo id on sca .04 magf 1e3plo add sel fapp lgreen magf 1e3plo add sel pile mom my lbluelred magf 1e3 axe yelset movieavi step 100 file pile.avimoviestartsol age 1moviefinishnewconf dyn ;打开动力计算功能gen zone bricksize 10 5 10mod elasmod null rangex=0,5 z=5,10 ;删除部分网格fix z rangex=-.1 .1 z=.1 10.1 ;设置静力边界条件fix z rangex=9.9,10.1 z=.1 10.1fix y rangey=-.1 .1fix y rangey=4.9 5.1prop bulk 2e8 shear 1e8 ;设置土体参数prop bulk 4e9 shear 2e9 rangex=5,6 z=5,10 ;设置墙体参数(土体参数的20倍)ini dens 2000 ;设置密度def setup;动荷载中的变量赋值freq = 1.0omega= 2.0 * pi * freqold_ti me = clockendsetup;执行变量赋值def wave ;定义动荷载函数wave = sin(omega* dytime) ;定义动荷载变量endapplyxvel = 1 hist wave rangez=-.1 .1 ;施加动荷载applyzvel = 0 r angez=-.1 .1hist gp xvel 5,2,0hist gp xvel 5,2,10hist gp zvel 5,2,10hist dytimedef tim ;估算程序运行的时间tim = 0.01 * (clock- old_ti me)endset dyn multi on ;设置动态多步solveage 1.0print tim ;输出计算时间printdyn ;输出动力计算相关信息save mult1.savnewconfig dyngen zone bricksize 1,1,50modelelasprop shear1e7 bulk 2e7ini dens 1000def setupomega= 2.0 * pi * freqpulse= 1.0 / freqendset freq=4.0setupdef waveif dytime > pulsewave = 0.0elsewave = 0.5 * (1.0 - cos(omega* dytime))endifendrangename bottom z=-.1 .1fix z rangez=.5 55 ;将上部网格都施加数值向约束applydquiet squiet rangebottomapplysxz -2e5 hist wave syz 0.0 szz 0.0 rangebottom;-2e5的系数来源于的值applynvel 0 planenorm 0,0,1 rangebottomhist gp xvel 0,0,0hist gp xvel 0,0,25hist gp xvel 0,0,50hist dytimehist waveplot create hhhplot add hist 1 2 3 vs 4plot showsolveage 2。
FLACFLAC3D基础与工程实例_记录
《FLACFLAC3D基础与工程实例》阅读札记目录一、FLACFLAC3D软件概述 (2)1. 软件背景与简介 (3)1.1 FLACFLAC3D的发展历程 (4)1.2 软件的应用领域及特点 (5)2. 软件安装与运行环境 (6)2.1 系统要求 (7)2.2 安装步骤 (8)2.3 运行环境配置 (10)二、FLACFLAC3D基础知识 (11)1. 基本概念与术语 (13)1.1 有限元分析原理 (14)1.2 离散元法简介 (14)1.3 FLACFLAC3D中的相关术语解释 (15)2. 软件操作界面及功能模块 (17)2.1 操作界面介绍 (18)2.2 主要功能模块说明 (20)2.3 菜单功能详解 (20)三、工程实例分析 (22)1. 地质工程实例 (23)1.1 工程背景及问题定义 (25)1.2 模型建立与参数设置 (26)1.3 结果分析与讨论 (27)2. 土木工程实例 (29)2.1 工程概况与建模目的 (30)2.2 建模过程及计算步骤 (31)2.3 结果展示与工程应用 (32)四、FLACFLAC3D应用技巧与注意事项 (33)1. 建模技巧与优化方法 (34)1.1 建模策略及优化思路 (35)1.2 网格划分与模型简化技巧 (36)1.3 参数设置与模型验证方法 (38)2. 数据分析与处理方法 (40)2.1 数据采集与整理方法 (41)2.2 结果分析与图表展示技巧 (42)一、FLACFLAC3D软件概述3D是一种广泛使用的岩土力学与有限元分析软件。
它是一套专门用来分析连续介质中的物理力学现象的强大工具,主要应用于土木、矿山、隧道等领域,能针对各种复杂的工程问题进行数值建模和模拟分析。
3D以其高效、灵活的数值分析能力,为工程师提供了强大的技术支持。
其主要特点包括:多功能:3D能够模拟多种物理过程,包括应力分析、稳定性分析、流体流动分析等,适用于多种工程场景。
flac3d入门指南
设置初始应力的弹塑性求解:
gen zon bri size 1 1 2 model mohr prop bulk 3e7 shear 1e7 c 10e3 f 15 ten 0 fix z ran z 0 fix x ran x 0 fix x ran x 1 fix y ran y 0 fix y ran y 1 ini dens 2000 ini szz -40e3 grad 0 0 20e3 ran z 0 2 ini syy -20e3 grad 0 0 10e3 ran z 0 2 ini sxx -20e3 grad 0 0 10e3 ran z 0 2 set grav 0 0 -10 solve
4、边界条件及初始条件
在FLAC3D中,包含多种边界条件,边界方位 可以任意变化,边界条件可以是速度边界、应力边 界,单元内部可以给定初始应力,节点可以给定初 始位移、速度等,还可以给定地下水位以计算有效 应力等。这众多的边界条件主要通过apply或fix命 令来进行设置。而初始条件则主要通过initial命令 来执行,对所提的这两个命令必须严格区分并了解 其差异。通常我们所计算的模型均采用力学边界, 初始条件也基本是初始地应力的输入,对此两种不 同的力,其设置存在差别,同时在计算过程中,该 二者的变化情况也各不相同。
对于这两种基本的 网格,其公共面上的 关键点的对应关系更 需校核好,否则将出 现杂乱错误的网格。
对此马蹄形隧道,其公 共面处,p0 — p0,p1—p3, p2—p2,p4—p5 , p8—p9,p10 —p11
对于对称的模型也可以采 用镜像命令:
gen zone reflect norm -1 0 0 & origin 0,0,0
对于任何形状的单元体, 其建立单元模型时关键
FLAC3D新手部分命令
show ;显示图形
;到此可以利用save Trench.sav命令来保存一个名叫Trench的.sav类型的文件
;-----------------------------------------------------------------------开挖阶段-----------------------------------------------------------------------
set mech force=50 ;设定最大不平衡力
solve ;按一定的精度自动求解平衡状态
;显示最大不平衡力以及节点(4,4,8)在Z方向上的位移图
;plot ;进入自动绘图模式
;hist 1 ;显示最大不平衡力变化曲线
;hist 2 ;显示节点(4,4,8)在Z方向的位移变化曲线
;设定视角
plot ;此处出现bug,因为不能利用上面的plot直接调用"FLAห้องสมุดไป่ตู้3D>"
set rot 15 0 20
set center 2.5 4.2 4.0
add boundary behind ;增加边界线框,并且线框只在平面的后面显示
add bcont szz plane ;在当前面绘制出垂直应力分布图
ini xdis=0 ydis=0 zdis=0 ;将所有网格点位移清零(因为需要模拟的是开挖过程引起的位移的变化,而不是从加载重力开始到开挖整个过程的位移变化)
step 2000 ;执行2000步时间
;查看位移等值曲线图
plot ;进入绘图设置
creat DispCont ;创建名为DispCont的视图窗口
完整word版,FLAC3D 实例命令流1
第1部分命令流按照顺序进行2-1定义一个FISH函数newdef abcabc = 25 * 3 + 5Endprint abc2-2使用一个变量newdef abchh = 25abc = hh * 3 + 5EndPrint hhPrint abc2-3对变量和函数的理解newdef abchh = 25abc = hh * 3 + 5Endset abc=0 hh=0print hhprint abcprint hhnewdef abcabc = hh * 3 + 5endset hh=25print abcset abc=0 hh=0print hhprint abcprint hh2-4获取变量的历史记录newgen zone brick size 1 2 1model mohrprop shear=1e8 bulk=2e8 cohes=1e5 tens=1e10fix x y z range y -0.1 0.1apply yvel -1e-5 range y 1.9 2.1plot set rotation 0 0 45plot block groupdef get_adad1 = gp_near(0,2,0)ad2 = gp_near(1,2,0)ad3 = gp_near(0,2,1)ad4 = gp_near(1,2,1)endget_addef loadload=gp_yfunbal(ad1)+gp_yfunbal(ad2)+gp_yfunbal(ad3)+gp_yfunbal(ad4) endhist loadhist gp ydis 0,2,0step 1000plot his 1 vs -22-5用FISH函数计算体积模量和剪砌模量newdef derives_mod = y_mod / (2.0 * (1.0 + p_ratio))b_mod = y_mod / (3.0 * (1.0 - 2.0 * p_ratio))endset y_mod = 5e8 p_ratio = 0.25deriveprint b_modprint s_mod2-6 在FLAC输入中使用符号变量Newdef derives_mod = y_mod / (2.0 * (1.0 + p_ratio))b_mod = y_mod / (3.0 * (1.0 - 2.0 * p_ratio))endset y_mod = 5e8 p_ratio = 0.25derivegen zone brick size 2,2,2model elasticprop bulk=b_mod shear=s_modprint zone prop bulkprint zone prop shear2-7 控制循环Newdef xxxsum = 0prod = 1loop n (1,10)sum = sum + nprod = prod * nend_loopendxxxprint sum, prodnewgen zone brick p0 (0,0,0) p1 (-10,0,0) p2 (0,10,0) p3 (0,0,-10) model elasplot set rotation 0 0 45plot block groupdef installpnt = zone_headloop while pnt #nullz_depth = -z_zcen(pnt)y_mod = y_zero + cc * sqrt(z_depth)z_prop(pnt, ’shear’) = y_mod / (2.0*(1.0+p_ratio))z_prop(pnt, ’bulk’) = y_mod / (3.0*(1.0-2.0*p_ratio))pnt = zone_next(pnt)end_loopendset p_ratio=0.25 y_zero=1e7 cc=1e8install2-8 拆分命令行new ;example of a sum of many thingsdef long_sumtemp = v1 + v2 + v3 + v4 + v5 + v6 + v7 + v8 + v9 + v10 long_sum = temp + v11 + v12 + v13 + v14 + v15end2-9 变量类型newdef haveoneaa = 2bb = 3.4cc = ’Have a nice day’dd = aa * bbee = cc + ’, old chap’endhaveoneprint fish2-10 IF条件语句newdef abcif xx > 0 thenabc = 1000elseabc = -1000end_ifendset xx = 10print abcset xx = 0print abc2-11 索单元自动生成newgen zone brick size 10 3 5plot set rotation 0 0 45plot block groupdef place_cablesloop n (1,5)z_d = float(n) - 0.5commandsel cable beg 0.0,1.5,z_d end 7.0,1.5,z_d nseg 7 end_commandend_loopendplace_cablesplot grid sel geom rednewgen zone brick size 10 3 5plot set rotation 15 0 60plot block groupmod mohrprop bulk 1e8 shear .3e8 fric 35prop coh 1e3 tens 1e3ini dens 1000set grav 0,0,-10fix x y z range z -.1 .1fix y range y -.1 .1fix y range y 2.9 3.1fix x range x -.1 .1fix x range x 9.9 10.1set largehist unbalsolvesave cab_str.savini xdis 0 ydis 0 zdis 0hist gp xdisp 0,1,5def place_cablesloop n (1,5)z_d = 5.5 - float(n)z_t = z_d + 0.5z_b = z_d - 0.5commandfree x range x -.1,.1 z z_b z_tsolvesel cable beg 0.0,0.5,z_d end 7.0,0.5,z_d nseg 7sel cable beg 0.0,1.5,z_d end 7.0,1.5,z_d nseg 7sel cable beg 0.0,2.5,z_d end 7.0,2.5,z_d nseg 7sel cable prop emod 2e10 ytension 1e8 xcarea 1.0 &gr_k 2e10 gr_coh 1e10 gr_per 1.0end_commandend_loopendplace_cablessave cab_end.savplot sketch sel cable force red2-12圆形隧道开挖模拟计算;建立模型gen zon radcyl p0 0 0 0 p1 6 0 0 p2 0 1 0 p3 0 0 6 &size 4 2 8 4 dim 3 3 3 3 rat 1 1 1 1.2 group outsiderockgen zone cshell p0 0 0 0 p1 3 0 0 p2 0 1 0 p3 0 0 3 &size 1 2 8 4 dim 2.7 2.7 2.7 2.7 rat 1 1 1 1 group concretliner fill group insiderock gen zon reflect dip 90 dd 90 orig 0 0 0gen zon reflect dip 0 dd 0 ori 0 0 0gen zon brick p0 0 0 6 p1 6 0 6 p2 0 1 6 p3 0 0 13 size 4 2 6 group outsiderock1 gen zon brick p0 0 0 -12 p1 6 0 -12 p2 0 1 -12 p3 0 0 -6 size 4 2 5 group outsiderock2 gen zon brick p0 6 0 0 p1 21 0 0 p2 6 1 0 p3 6 0 6 size 10 2 4 group outsiderock3 gen zon reflect dip 0 dd 0 orig 0 0 0 range group outsiderock3gen zon brick p0 6 0 6 p1 21 0 6 p2 6 1 6 p3 6 0 13 size 10 2 6 group outsiderock4gen zon brick p0 6 0 -12 p1 21 0 -12 p2 6 1 -12 p3 6 0 -6 size 10 2 5 group outsiderock5 gen zon reflect dip 90 dd 90 orig 0 0 0 range x -0.1 6.1 z 6.1 13.1gen zon reflect dip 90 dd 90 orig 0 0 0 range x -0.1 6.1 z -6.1 -12.1gen zon reflect dip 90 dd 90 orig 0 0 0 range x 6.1 21.1 z -12.1 13.1;绘制模型图plot block groupplot add axes red;plot set rotation 0 0 45 用于显示三维模型;设置重力set gravity 0 0 -10;给定边界条件fix z range z -12.01,-11.99fix x range x -21.01,-20.99fix x range x 20.99,21.01fix y range y -0.01 0.01fix y range y 0.99,1.01;求解自重应力场model mohrini density 1800 ;围岩的密度prop bulk=1.47e8 shear=5.6e7 fric=20 coh=5.0e4 tension=1.0e4 ;体积、剪切、摩擦角、凝聚力、抗拉强度set mech ratio=1e-4solvesave Gravsol.savplot cont zdisp outl onplot cont szz;毛洞开挖计算initial xdisp=0 ydisp=0 zdisp=0model null range group insiderock any group concretliner anyplot block groupplot add axes redset mech ratio=5e-4solvesave Kaiwsol.savplot cont zdispplot cont sdispplot cont szzplot cont xzz;模筑衬砌计算model elas range group concretliner anyplot block groupplot add axes redini density 2500 range group concretliner any ;衬砌混凝土的密度prop bulk=16.67e9,shear=12.5e9 range group concretliner any ;衬砌混凝土的体积弹模、剪切弹模set mech ratio=1e-4solvesave zhihusol.savplot cont zdispplot cont sdispplot cont szzplot cont xzz;完成计算分析。
Flac3D命令--完整经典版
27. ID号查询通过标题栏查看或者执行【Plotitems】/【1 Block group】/【Modify】命令中
grid_point ID’s 28. 建立接触面单元的各类方法(桩的接触面桩端和桩侧最好采用不同id号的接触面单元) 接触面参数的选取见文件155页9.51。接触面有关的常用命令9.7 162页。 ① 移来移去法:两个模型分开,一个建立接触面单元,然后移动使两个模型合并。
PLOT block group 查看计算模型 Ctrl+G 变成灰色图像
25. 采用 2 种方式观察网格节点速度: : HIST gpvel<x y z>记录某个节点的速度; PLOT
vel 命令绘制完整的速度矢量场图;力平衡时,由于网格节点力不为零就存在网
格节点速度,仍有可能产生较大位移。 26. 初始地应力场:通常用的是以下三种方法,即弹性求解法、改变参数的弹塑性求解法
定义群组方法!
Gen zone brick size 3 3 3 ; group 2 range x 1 2 y 1 2 z 1 2 ; group 1 range group 2 not
删除其它群组 只保留群组2
del ran group 2 not
Plot blo gro range group dam只显示dam组的单元
6 5 所以 xx 为: xx =-10 10 +10 z ;原点(0,0,0)
14. free x range x -.1 .1 z 6.9 10.1放松x=0 平面上,z=7,10 这一部分在x 方向的约 束(可以在此处产生破坏) 15. 体积模量K和剪切模量G与杨氏模量及泊松比v之间的转换关系如下:
之后重新打开6-2.log
FLAC3D 实例命令流4
第4部分命令流按照顺序进行new;1/4 上半部分gen zon radcyl p0 15.7 0 0 p1 24.5 0 0 p2 15.7 1 0 p3 15.7 0 8.8 &size 5 2 10 4 dim 5.8 5.8 5.8 5.8 rat 1 1 1 1.2 group outrockysgen zone cshell p0 15.7 0 0 p1 21.5 0 0 p2 15.7 1 0 p3 15.7 0 5.8 &size 1 2 10 4 dim 5.4 5.4 5.4 5.4 rat 1 1 1 1 group liningys fill group inrockysgen zon reflect dip 90 dd 270 orig 15.7 0 0;1/4 下半部分gen zon radcyl p0 15.7 0 0 p1 15.7 0 -6.9 p2 15.7 1 0 p3 24.5 0 0 &size 5 2 10 4 dim 3.9 5.8 3.9 5.8 rat 1 1 1 1.2 group outrockyxgen zone cshell p0 15.7 0 0 p1 15.7 0 -3.9 p2 15.7 1 0 p3 21.5 0 0 &size 1 2 10 4 dim 3.5 5.4 3.5 5.4 rat 1 1 1 1 group liningyx fill group inrockyxgen zon reflect dip 90 dd 270 orig 15.7 0 0 range group liningyx any &group inrockyx any group outrockyx any;右隧道中地层网格gen zon brick p0 0 0 -6.9 p1 6.9 0 -6.9 p2 0 1 -6.9 p3 0 0 0 size 6 2 5 group outrock1 gen zon brick p0 24.5 0 -6.9 p1 65 0 -6.9 p2 24.5 1 -6.9 p3 24.5 0 0 size 20 2 5 group outrock1gen zon brick p0 0 0 0 p1 6.9 0 0 p2 0 1 0 p3 0 0 8.8 size 6 2 5 group outrock2gen zon brick p0 24.5 0 0 p1 65 0 0 p2 24.5 1 0 p3 24.5 0 8.8 size 20 2 5 group outrock2;右隧道上侧土体网格gen zon brick p0 0 0 8.8 p1 6.9 0 8.8 p2 0 1 8.8 p3 0 0 36 size 6 2 10 group outrock3 gen zon brick p0 24.5 0 8.8 p1 65 0 8.8 p2 24.5 1 8.8 p3 24.5 0 36 size 20 2 10 group outrock3gen zon brick p0 6.9 0 8.8 p1 24.5 0 8.8 p2 6.9 1 8.8 p3 6.9 0 36 size 10 2 10 group outrock3;右隧道下侧土体网格gen zon brick p0 0 0 -24 p1 6.9 0 -24 p2 0 1 -24 p3 0 0 -6.9 size 6 2 8 group outrock4 gen zon brick p0 24.5 0 -24 p1 65 0 -24 p2 24.5 1 -24 p3 24.5 0 -6.9 size 20 2 8 groupoutrock4gen zon brick p0 6.9 0 -24 p1 24.5 0 -24 p2 6.9 1 -24 p3 6.9 0 -6.9 size 10 2 8 group outrock4gen zon reflect dip 90 dd 270 orig 0 0 0plot add axes redplot block group;设置重力加速度set gravity 0 0 -10;给定边界条件fix z range z -24.01,-23.99fix x range x -65.01,-64.99fix x range x 64.99,65.01fix y range y -0.01 0.01fix y range y 0.99,1.01;0-求解自重应力场model mohrini density 2200;围岩的密度prop bulk=1.923e9, shear=4.167e9 fric=35, coh=0.5e6 tension=5e5;体积、剪切、摩擦角、凝聚力、抗拉强度step 6000save Gsol.savplot cont zdispplot cont szz;1-左隧道上半断面开挖rest Gsol.savini xdis 0.0 ydis 0.0 zdis 0.0ini density 2400 range group outrockzs anyprop bulk=6.0e9, shear=10.0e9 fric=45, coh=1.2e6 tension=2e6 &range group outrockzs anymodel null range group inrockzs any group liningzs anystep 2000save stepp1.sav;2-初期支护rest stepp1.savsel shell id=1 range x -21.51 -9.89 cyl end1 -15.7 0 0 end2 -15.7 1 0 rad 5.8 sel shell id=1 prop iso=(21.0e9,0.2) thick=0.20step 2000save stepp2.sav;3-左隧道下半断面开挖rest stepp2.savmodel null range group inrockzx any group liningzx anystep 2000save stepp3.savplot add axes redplot block groupplot cont zdispplot cont szz;4-左隧道二次衬砌rest stepp3.savmodel elas range group liningzsmodel elas range group liningzxini density 2600 range group liningzsini density 2600 range group liningzxprop bulk=12.5e9, shear=16.667e9 range group liningzsprop bulk=12.5e9, shear=16.667e9 range group liningzxstep 2000save stepp4.savplot add axes redplot block groupplot cont zdispplot cont szz;5-右隧道上半断面开挖rest stepp4.savini density 2400 range group outrockys anyprop bulk=6.0e9, shear=10.0e9 fric=45, coh=1.2e6 tension=2e6 & range group outrockys anymodel null range group inrockys any group liningys anystep 2000save stepp5.savplot cont zdisp;6-初期支护rest stepp5.savsel shell id=1 range x 9.89 21.51 cyl end1 15.7 0 0 end2 15.7 1 0 rad 5.8 sel shell id=1 prop iso=(21.0e9,0.2) thick=0.20step 2000plot cont zdispsave stepp6.savplot add axes redplot block groupplot cont zdispplot cont szz;7-左隧道下半断面开挖rest stepp6.savmodel null range group inrockyx any group liningyx anystep 2000save stepp7.savplot cont zdisp;8-左隧道二次衬砌rest stepp7.savmodel elas range group liningysmodel elas range group liningyxini density 2600 range group liningysini density 2600 range group liningyxprop bulk=12.5e9, shear=16.667e9 range group liningysprop bulk=12.5e9, shear=16.667e9 range group liningyxstep 2000save stepp8.savplot add axes redplot block groupplot cont zdisp plot cont szznew。
(完整版)FLAC3D常用命令
1. apply(缩写:app)可用来定义边界条件及初始条件:1)添加应力格式1:apply szz -0.3395e6 range z -0.1 0.1格式1:apply szz -0.3395e6 range group pile格式3:apply szz -0.3395e6 range z -0.1 0.1 group pile格式4:apply nstress 数值range z 2.9 3.1(或3)x 1 2 y 1 22)以一定速度施加位移边界格式1:apply yvel -1e5 range y -1.9 2.1 施; 加y 方向速度-1e5/step3)添加边界条件格式:apply szz <数值> grad <梯度> range <范围>示例1:apply szz -1e9 grad 0 0 8.3e5 range z 0 120 示例2:apply szz -0.6e6 range z 0.05 0.15 group pile 注:<数值>是梯度方向坐标0 点的数值,可通过定义坐标范围的上下值与梯度计算得到。
2. range(缩写:ran)通过range功能,可以使命令作用在一定指定范围的目标上;如果一个命令没有使用range 来确定范围,则命令对整个模型有效。
1)利用坐标指定一定的范围格式1:range z 0 1格式2:range z 2.9 3.1 x 1 2 y 1 22)利用分组来指定范围格式:range group 13)以上两种的复合格式:range z -0.1 0.1 group pile4)利用id 号来指定一定的范围格式:range id 0 10该命令后跟起始id 和结束id,这里的id 可以是实体单元、网格、结构单元、接触面和节点的编号。
例:model elastic range id 1 10 ;指定id 为1到10的单元为各向同性弹性本构。
5)命名一个范围(需要先命名这个范围)格式:range name <自己起一个名字> <范围> 示例:range name intersected_zones x 5 8 y 3 7 引用这个范围的格式:内容+range nrange <自己起的那个名字> 示例:range nrangeintersected_zone6)命名一个柱形范围格式:同4)示例1:range name bhole cylinder end10 0 0 end2 -9.14 0 0 rad 0.46示例2:range name interface1 cylinder end1 0 0 0 end2 0 0 -0.9 radius 0.36 &cylinder end1 0 0 0 end2 0 0 -0.9 radius 0.34 not 7)any 和notAny 跟在range 命令后表示“和”的意思,即使若干个定义的范围同时起效;not 跟在range后表示“除了”的意思,即除此之外的范围示例1:group wall range group 1 any group 2 any ;把组 1 和组 2 定义为新组,组名为wall示例2:group wall range group 1 not ;把除了组 1 之外的所有部分定义为新组,组名为wall.示例3:range name interface1 cylinder end1 0 0 0 end2 0 0 -0.9 radius 0.36 &cylinder end1 0 0 0 end2 0 0 -0.9 radius 0.34 not3. set 用来设置重力、收敛标准、给某些变量赋值1)设置重力格式:set gravity 0 0 -102)设置收敛标准格式1:set mech ratio <value> :用R 无量纲值确定收敛标准(默认10e-5)格式2:set mech force <value> ;绝对收敛标准,体系最大不平衡力小于某一临界值,此局限性较大。
《FLAC3D基础与工程实例》全部命令流
1
gen zone bri p0 0 0 0 p1 10 0 0 p2 0 10 0 p3 0 0 10 &
p4 15 15 0 p5 0 15 15 p6 15 0 10 p7 20 20 20 &
size 10 10 10 rat 1.0 0.9 1.1 group brick_1
gen zone bri p0 20 0 0 p1 add 10 0 0 p2 add 0 20 0 p3 add 0 0 15 &
solve
app nstress -10e4 ran z 3 x 1 2 y 1 2
hist gp vel 0 0 3
hist gp vel 0 3 3
plo hist 1 red
plo add hist 2 blue
solve
3-1
;-------------------------------------工程信息
ini szz -15e3 grad 0 0 15e3 ran z 1 2
ini syy -7.5e3 grad 0 0 7.5e3 ran z 1 2
ini sxx -7.5e3 grad 0 0 7.5e3 ran z 1 2
model elas
prop bulk 3e8 shear 1e8
ini dens 2000
fix z ran z -.1 .1
fix x ran x -.1 .1
fix x ran x 2.9 3.1
fix y ran y -.1 .1
fix y ran y 2.9 3.1
set grav 0 0 -10
set log off
6-5
rest 6-1.sav
FLAC及FLAC3D基础与工程实例51-3
FLAC及FLAC3D基础与工程实例511.2.1FLAC/FLAC3D的使用特征;FLAC/FLAC3D的使用特征主要表现为:;?命令驱动模式;FLAC/FLAC3D有两种输入模式:①人机交互;FLAC/FLAC3D专为岩土工程力学分析开发,;FLAC/FLAC3D可以模拟多种结构形式,如岩;借助其强大的绘图功能,用户能绘制各种图形和表格;?开放性;FLAC/FLAC3D几乎是一个全开放的系统,1.2.1 FLAC/FLAC3D的使用特征FLAC/FLAC3D的使用特征主要表现为:? 命令驱动模式FLAC/FLAC3D有两种输入模式:① 人机交互模式,即从键盘输入各种命令控制软件的运行;② 命令驱动模式,即写成命令流文件,由文件来控制软件的运行。
其中,命令驱动模式为FLAC/FLAC3D的主要输入模式,尽管这种驱动方式对于简单问题的分析过于繁杂,对软件初学者而言相对较困难,但对于那些从事大型复杂工程问题分析而言,因涉及多次参数修改、命令调试,这种方式无疑是最有效、最经济的(当然,由于二维建模相对简单,照顾不少用户的使用习惯,在FLAC中也可以采用界面操作模式即GIIC模式进行分析计算)。
? 专一性FLAC/FLAC3D专为岩土工程力学分析开发,内置丰富的弹、塑性材料本构模型(其中FLAC内置11个,FLAC3D内置12个),有静力、动力、蠕变、渗流、温度5种计算模式,各种模式间可以相互耦合,以模拟各种复杂的工程力学行为。
FLAC/FLAC3D可以模拟多种结构形式,如岩体、土体或其它材料实体:梁、锚元、桩、壳以及人工结构,如支护、衬砌、锚索、岩栓、土工织物、摩擦桩、板桩等。
通过设置界面单元,可以模拟节理、断层或虚拟的物理边界等。
借助其强大的绘图功能,用户能绘制各种图形和表格。
用户可以通过绘制计算时步函数关系曲线来分析、判断体系何时达到平衡与破坏状态,并在瞬态计算或动态计算中进行量化监控,从而通过图形直观地进行各种分析。
FLAC3D常见命令与使用技巧
FLAC3D常见命令与使用技巧1.基本命令:- !new: 创建一个新的FLAC3D模型- !zone generate: 通过定义边界和离散网格参数生成岩石模型- zone struct properties: 设置岩石模型的物理性质,如弹性模量、泊松比等- zone gridpoint initialize: 初始化模型中的网格节点- zone cmodel assign: 在指定区域内分配一种材料模型- zone face apply stress: 在模型表面施加一定的应力条件- zone solve: 求解模型,得到模型的应力应变分布2.材料模型:- zone cmodel initialize: 初始化材料模型的参数- zone cmodel property assign: 为材料模型分配属性- zone cmodel model assign: 为材料模型指定模型类型3.自定义模型:- zone cmodel new: 创建一个自定义材料模型- zone cmodel property new: 创建一个自定义的材料模型属性- zone cmodel property set: 设置材料模型属性的值- zone cmodel initialize: 初始化材料模型的参数4.辅助命令:- zone gridpoint fix: 固定指定区域的网格节点- zone gridpoint value prescribe: 为指定区域的网格节点预设值- zone gridpoint stress initialize: 初始化模型中的网格节点应力- zone gridpoint velocity assign: 为指定区域的网格节点分配速度- zone gridpoint delete: 删除指定区域的网格节点5.使用技巧:-使用脚本:可通过编写脚本,将一系列命令自动执行,提高工作效率-模型可视化:FLAC3D提供了强大的可视化功能,可以实时观察模型行为-使用参数化模型:可以通过设定参数的方式进行模型设置,便于修改和调整-多个窗口:可以同时打开多个FLAC3D窗口,方便对不同模型进行比较和分析-参考案例:可以参考软件自带的案例,了解不同类型的建模和分析方法这些是FLAC3D的一些常见命令和使用技巧,希望对用户在使用该软件时有所帮助。
Flac3D相关命令_加油_大家一起学习!
1. 基础实例分析命令:Gen zone ……;model ……;prop ……(材料参数);set grav 0,0,-9.81(重力加速度) plot add block group red yellow 把在group 中的部分染成红色和黄色plot add axes black 坐标轴线为黑色;print zone stress% K 单元应力结果输出 ini dens 2000 ran z a b (设置初始密度,有时不同层密度不同);ini ……(设置初始条件);fix ……(固定界面)hist unbal 监测不平衡力,并保留历史记录;save t1.sav 保存到文件t1;hist gp zdisp 4,4,8监测网格坐标点(4,4,8)在z 方向的位移,并保留历史纪录 plot set rot 20 0 30视图的旋转角度为(20,0,30)PLOT block group 查看计算模型 Ctrl+G 变成灰色图像Ctrl+Z 模型某个部分进行放大 Home 、End 拉近远离图像X ,Y ,Z 旋转 Shift+ X ,Y ,Z 反向旋转set plot jpg ;set plot quality 100 ;plot hard file 1.jpg 图像输出(格式、像素、名称) plot set magf 1.0视图的放大倍数为1.0;plo con szz z 方向应力云图2. ini z add -1 range group one 群one 的所有单元,在z 方向上向下移动1m ;然后合并命令 gen merge 1e-5 range z 0此命令是接触面单元合并成一个整体,1e-5是容差3. (基坑开挖步骤):Step 1: create initial model state (建立初始模型)Step 2: excavatetrench (开挖隧道)4. group Top range group Base not 定义(群组Base 以外的为)群组Top5. plot blo gro 使得各个群组不同颜色显示6. (两个部分间设置界面;切割法):gen separate Top 使两部分的接触网格分离为两部分;interface 1 wrap Base Top 在(Base 和Top )这两部分之间添加接触单元;plot create view_int 显示,并创建标题view_int ;plot add surface 显示表面;plot add interface red 界面颜色红色7. (简单的定义函数及运行函数)new ;def setup 定义函数setup ;numy = 8定义常量numy 为8;depth = 10.0 定义depth 为10;end 结束对函数的定义;setup 运行函数setup8. (隧道生成)上部圆形放射性圆柱及下部块体单元体的建立,然后镜像。
FLAC3D常用命令
1. apply(缩写:app)可用来定义边界条件及初始条件:1)添加应力格式1:apply szz -0.3395e6 range z -0.1 0.1格式1:apply szz -0.3395e6 range group pile格式3:apply szz -0.3395e6 range z -0.1 0.1 group pile格式4:apply nstress 数值range z 2.9 3.1(或3)x 1 2 y 1 22)以一定速度施加位移边界格式1:apply yvel -1e5 range y -1.9 2.1 ;施加y方向速度-1e5/step3)添加边界条件格式:apply szz <数值> grad <梯度> range <范围>示例1:apply szz -1e9 grad 0 0 8.3e5 range z 0 120示例2:apply szz -0.6e6 range z 0.05 0.15 group pile注:<数值>是梯度方向坐标0点的数值,可通过定义坐标范围的上下值与梯度计算得到。
2. range(缩写:ran)通过range功能,可以使命令作用在一定指定范围的目标上;如果一个命令没有使用range来确定范围,则命令对整个模型有效。
1)利用坐标指定一定的范围格式1:range z 0 1格式2:range z 2.9 3.1 x 1 2 y 1 22)利用分组来指定范围格式:range group 13)以上两种的复合格式:range z -0.1 0.1 group pile4)利用id号来指定一定的范围格式:range id 0 10该命令后跟起始id和结束id,这里的id可以是实体单元、网格、结构单元、接触面和节点的编号。
例:model elastic range id 1 10 ;指定id为1到10的单元为各向同性弹性本构。
flac3d命令总结
6.加载前的位移清零
ini xdisp=0 ydisp=0 zdisp=0
7.开挖命令
m null range x 20 100 y 20 30 z 20 24.50
8.看切面及记录数据
pl set plane ori 0 0 76.85 norm 0 0 1
12.显示塑性区
plot block state
13.显示部分网格情况(位移上的范围)
plot block state/zadisp/szz range z 3.15 7.65
14.显示部分网格情况(id上的范围)
pl block state/zadisp/szz range id 501 1100
21.出图命令
set plot jpg
set plot quality 40
plot hard file name
22.看已知单元id号岩性参数方法
菜单栏-display-set range-"add"-ID-"在low里输入ID号"-确定-再点display-zones-property-bulk
15.修改间隔
pl con szz interval 2.5e06
16.显示网格
pl grid
17.查看节点号
pl grid num
18.查看模型有多少个单元、节点。
pl info
19.查看边界条件
plot fix
20.如何保存/名
1.建模型命令
new
plot block group
gen zone brick size 60 100 2 p0 0 0 0 p1 120 0 0 p2 0 200 0 p3 0 0 8.40 group 1
FLAC3D 实例命令流5
第5部分命令流按照顺序进行newgen zon radcyl p0 9 0 0 p1 18 0 0 p2 9 36 0 p3 9 0 9 &size 4 24 8 4 dim 3 3 3 3 rat 1 1 1 1.2 group outrgen zone cshell p0 9 0 0 p1 12 0 0 p2 9 36 0 p3 9 0 3 &size 1 24 8 4 dim 2.7 2.7 2.7 2.7 rat 1 1 1 1 group liny fill group inrgen zon reflect dip 90 dd 90 orig 9 0 0gen zon reflect dip 0 dd 0 ori 9 0 0;1/2隧道地层部分gen zon brick p0 18 0 -9 p1 36 0 -9 p2 18 36 -9 p3 18 0 9 size 10 12 8 group outr1gen zon brick p0 18 0 9 p1 36 0 9 p2 18 36 9 p3 18 0 13 size 10 12 2 group outr2gen zon brick p0 0 0 9 p1 18 0 9 p2 0 36 9 p3 0 0 13 size 8 12 2 group outr2 gen zon brick p0 18 0 -23 p1 36 0 -23 p2 18 36 -23 p3 18 0 -9 size 10 12 8 group outr3gen zon brick p0 0 0 -23 p1 18 0 -23 p2 0 36 -23 p3 0 0 -9 size 8 12 8 group outr3gen zon reflect dip 90 dd 270 orig 0 0 0group linz range group liny x -12.1 -5.99;绘制模型图plot add axes redplot set rotation 20 0 45plot block group;0-自重应力场求解set gravity 0 0 -10;给定边界条件fix z range z -23.01,-22.99fix x range x -36.01,-35.99fix x range x 35.99,36.01fix y range y -0.01 0.01fix y range y 35.99,36.01model mohr;围岩的密度ini density 1800;体积、剪切、摩擦角、凝聚力、抗拉强度prop bulk=1.47e8 shear=5.6e7 fric=20 coh=5.0e4 tension=1.0e4step 3000save Gsol.sav;第1步rest Gsol.savinitial xdisp=0 ydisp=0 zdisp=0model null range group inrz y 0 6model elas range group linz y 0 6ini density 2500 range group linz y 0 6prop bulk=16.67e9,shear=12.5e9 range group linz y 0 6 step 3000save step1.sav;第2步rest step1.savmodel null range group inrz y 6 12model elas range group linz y 6 12ini density 2500 range group linz y 6 12prop bulk=16.67e9,shear=12.5e9 range group linz y 6 12 step 3000save step2.sav;第3步rest step2.savmodel null range group inrz y 12 18model elas range group linz y 12 18ini density 2500 range group linz y 12 18prop bulk=16.67e9,shear=12.5e9 range group linz y 12 18 step 3000save step3.sav;第4步rest step3.savmodel null range group inrz y 18 24model elas range group linz y 18 24ini density 2500 range group linz y 18 24prop bulk=16.67e9,shear=12.5e9 range group linz y 18 24 step 3000save step4.sav;第5步rest step4.savmodel null range group inrz y 24 30model elas range group linz y 24 30ini density 2500 range group linz y 24 30prop bulk=16.67e9,shear=12.5e9 range group linz y 24 30 step 3000save step5.sav;第6步rest step5.savmodel null range group inrz y 30 36model elas range group linz y 30 36ini density 2500 range group linz y 30 36prop bulk=16.67e9,shear=12.5e9 range group linz y 30 36 step 3000save step6.sav;第1步rest step6.savmodel null range group inry y 0 6model elas range group liny y 0 6ini density 2500 range group liny y 0 6prop bulk=16.67e9,shear=12.5e9 range group liny y 0 6 step 3000save step7.sav;第2步rest step7.savmodel null range group inry y 6 12model elas range group liny y 6 12ini density 2500 range group liny y 6 12prop bulk=16.67e9,shear=12.5e9 range group liny y 6 12 step 3000save step8.sav;第3步rest step8.savmodel null range group inry y 12 18model elas range group liny y 12 18ini density 2500 range group liny y 12 18prop bulk=16.67e9,shear=12.5e9 range group liny y 12 18 step 3000save step9.sav;第4步rest step9.savmodel null range group inry y 18 24model elas range group liny y 18 24ini density 2500 range group liny y 18 24prop bulk=16.67e9,shear=12.5e9 range group liny y 18 24 step 3000save step10.sav;第5步rest step10.savmodel null range group inry y 24 30model elas range group liny y 24 30ini density 2500 range group liny y 24 30prop bulk=16.67e9,shear=12.5e9 range group liny y 24 30 step 3000save step11.sav;第6步rest step11.savmodel null range group inry y 30 36model elas range group liny y 30 36ini density 2500 range group liny y 30 36prop bulk=16.67e9,shear=12.5e9 range group liny y 30 36 step 3000save step12.savnew。
flac3d基础相关命令
Flac3D基础知识1.Generate 命令产生网格,简写为GE。
2. zone 参数代表了三维网格体(单元体),简写为zo。
3. (1)size 参数指示单元体各边小单元体的个数;(2)dimension 参数指示单元体内部巷道各边边长,如果没给出就默认为两点间距的20%;(3)edge 参数指示网格体各边的尺寸Ge zone brick p0(a,b,c) edge x y z 边长为x y z 顶点为p0;(边长也可以用确定点坐标来利用点与点的间距来确定p0 p1 p2……)。
4.各种网格体名称及关键字:矩形网格(Brick),退化矩形网格(dbrick),楔形网格(wedge),金字塔网格(pyramid),四面体形网格(tetrahedron),圆柱体网格(cylinder),矩形体外环绕放射状网格(radbrick),平行六面体外环绕放射状网格(radtunnel),圆柱体外环绕放射状网格(radcylinder),柱形壳体网格(Cshell),交叉圆柱体网格(cylint),交叉平行六面体网格(tunint)。
5.绘制网格体语句:①Generate zone brick size a,b,c (其中的brick可以被其他的网格体替换)。
②Generate zone brick p0=(,,)&P1=(,,)&P2=(,,)& (边长由点点间距确定)P3=(,,)& →(&符号为继续行的符号)Size a b c →(各边小单元体个数)③如果在p1 p2 p3 前面加add 则各点坐标是相对于p0点的坐标。
④如果只给出p0 则由edge a & 给出边长。
(见第 3 条);利用ratio a,b,c 给出小单元体长度比例依次变化。
⑤内部有空单元体或者巷道的网格体,如果内部巷道需要填充为单元体,使用fill group groupname 语句。