理正岩⼟6.5使⽤讲解_FLAC3D6.0--岩⼟⼯程数值模拟⼊门例
⼦(1)
这个帖⼦也会长期更新,欢迎⼤家追更,主要⽤来探讨FLAC学习和交流经验,当然我⾃⼰是个不断学习的⼩菜鸡,也欢迎⼤家指出我的错误,共同学习,更主要的是帮助想要⼊门的同学有⼀个这样的基础概念,然后在去深⼊。如果在知乎搜索到这个⽂章了,希望点个赞⽀持⼀下呀~
FLAC3D 6.0软件和5.0⽐增加了⼀些新东西,命令流写法也发出了⼀些变化,需要注意⼀下。
model new / 建⽴新模型
zone create brick size 3 3 3 /建⽴⽹格
;
zone cmodel assign elastic /设置本构模型为弹性本构模型
zone property bulk 3e8 shear 1e8 /设置本构模型所涉及的参数
zone initialize density 2000 / 设置初始密度为2000
zone gridpoint fix velocity-z range position-z -.1 .1 /固定Z=0平⾯速度
zone gridpoint fix velocity-x range position-x -.1 .1 /固定x=0平⾯速度
zone gridpoint fix velocity-x range position-x 2.9 3.1 /固定x=3平⾯速度
zone gridpoint fix velocity-y range position-y -.1 .1 /固定y=0平⾯速度
zone gridpoint fix velocity-y range position-y 2.9 3.1 /固定y=y平⾯速度
model gravity 0 0 -10 /设置重⼒加速度为10
model solve /求解
model save '1.f3sav' /保持结果⽂件 (软件学习交流群:931655477,⾃⼰创的,随便聊)
从⼀个⼊门⼩代码讲起,model new,创建⼀个新的模型⽂件,这个应该好理解。
zone create brick size 3 3 3,创建⼀个3*3*3=27的⼀个⽹格,就像下⾯的图⼀样:
brick就是块状的意思,可以简单理解成正⽅体长⽅体,size⼤⼩,值得是划分成多少个⽹格,你也可以改成size 6 8 10,这样就得到680个⽹格的模型,如下图所⽰:
对了,写这种命令⼀定要保证是英⽂输⼊法,使⽤中⽂标点符号会报错,尤其要注意。
zone cmodel assign elastic
zone cmodel assign elastic /设置本构模型为弹性本构模型,英语学得好的应该可以直接读懂⼤意,assign的英⽂意思是“分配、指定”,elastic指的是弹性本构模型。
选定好本构模型之后,就要给模型赋予参数了。我们学过不同的本构模型有不同的参数,具体值得就是弹性模型、剪切模量等等,在弹性本构模型常⽤的参数就是体积模量和切变模量。(这⽅⾯理解有问题的同学可以在复习⼀下岩⽯⼒学或者弹性⼒学,⽼师或者课本上有讲过)zone property bulk 3e8 shear 1e8 ”。以下是⼀些常⽤本构模型的⼀些包含的材料参数:
具体的代码就是这⼀句“zone property bulk 3e8 shear 1e8
这个最经典最常⽤,可以记⼀记
然后继续往下⾛,是这⼀句:
zone initialize density 2000 / 设置初始密度为2000,其实也很好理解,材料嘛,需要有密度这⼀个物理属性。
接下来就是这个:(边界条件)
zone gridpoint fix velocity-z range position-z -.1 .1 /固定Z=0平⾯速度
zone gridpoint fix velocity-x range position-x -.1 .1 /固定x=0平⾯速度
zone gridpoint fix velocity-x range position-x 2.9 3.1 /固定x=3平⾯速度
zone gridpoint fix velocity-y range position-y -.1 .1 /固定y=0平⾯速度
zone gridpoint fix velocity-y range position-y 2.9 3.1 /固定y=y平⾯速度
gridpoint 指的是⽹格点,fix是固定,velocity代表速度,加上横线就可以指定是x、y、z更加具体的⽅向。range指的是范围,后⾯是具体的内容,position指的就是位置。然后,后⾯的数值就有意思了,-.1 .1的意思是-0.1到0.1这个范围,其实指的就是z=0这个平⾯,这就巧了,为什么不直接写z 0,⽽是写-0.1 0.1?,说实话,我也不是很懂,但前辈们的经验告诉我,直接写z 0会使得数据有误差,边界条件不够稳定,导致出现更多的误差,所以按照惯例,还是⽤这种⽅式写吧。
我们知道,这个模型是三维坐标,(x,y,z),如果我们研究⼀个⾯的⼒,则需要把其他⾯固定,因为通常岩⼟体是⼀个整体,我们这样剖析出⼀⼩块出来,除了表⾯,其他五个⾯都是和其他岩层或者地层接触的,可以认为是固定不动的,如下图所⽰。所以,需要加⼊上述的边界条件,起到⼀个约束的作⽤。
模型的坐标系
接下来,施加重⼒加速度,很显然,地球的物体都是有重⼒的
model gravity 0 0 -10 /设置重⼒加速度为10
model gravity 0 0 -10
最后到了这两条代码:
model solve /求解
model save '1.f3sav' /保持结果⽂件
前⾯依次进⾏了⽹格建模、选择本构模型、赋值参数、设置边界条件、施加重⼒场,最后就是对这个简单的模型求解了,model solve。求解之后,保持⽂件名为“1.f3.sav”。
这就是整个模型的⼀个例⼦讲解,整体过程如下图所⽰:
FLAC3D 主要计算流程
这是第⼀个⼊门的⼩总结,希望对⼤家有帮助!