1 引言
在连续介质模拟(FLAC,FLAC3D,RS3,Plaxis,GTS NX,MAP3D)和离散介质模拟(PFC2D, PFC3D)之间有一种耦合(hybird: a thing made by combining two different elements; a mixture)的模拟方法, 即一个程序既能进行连续性模拟也能进行不连续模拟,这种方法在岩石工程中典型的应用程序有ELFEN, Irazu, UDEC和3DEC。这个笔记简要回顾了耦合的目的和形式,着重讨论了3DEC中的有限元块体(Finite element blocks in 3DEC)。
2 耦合方法(Hybird)
耦合(Hybrid)这个术语在岩石工程中最早出现在1980年代Brady B.H.G 在明尼苏达大学完成的博士论文,Brady的博士论文开发了一个离散元和边界元耦合的程序(DEM+BEM),即在开挖边界附近的围岩用刚性离散元块体BLOCK(UDEC的原型代码)模拟, 在影响范围之外的围岩用直接边界元模拟,UDEC至今还保留着这种耦合的思想,即边界元命令block boundary-elements。80年代末期,东北大学采矿工程系使用这个程序进行了自然崩落采矿法的放矿研究;与此同时也进行了有限元和边界元耦合程序的开发(FEM+BEM),即在开挖边界附近的围岩使用有限元,在开挖边界的远域用边界元,这个耦合的程序用来优化深部开采矿房和矿柱(嗣后充填)的回采顺序。ELFEN和Irazu二者都使用了有限元和离散元的耦合方法(FEM+DEM)。
3 3DEC中feblock
上面讨论的耦合方法均为外部的耦合,UDEC和3DEC自身的耦合属于内部耦合(我不确信这样的描述是否准确)。初始的UDEC只能处理刚性块体,后来发展的UDEC和3DEC能够处理可变形的块体,尽管单个的块体是连续介质,但它们使用了节点混合离散化(NMD)算法【压缩试验模拟考虑的几个问题(本构模型和NMD算法)】计算节点(网格点)的应力和变形,而不是象有限元那样组装单元的刚度矩阵。不过,NMD算法只适合于三角形或四面体单元,不能有效地处理六面体单元,而六面体单元计算的塑性结果比四面体单元的塑性结果要精确,理论上讲,如果需要非常精确的塑性计算,应该使用六面体单元,因此使用feblock弹性有限元来模拟一些承受显著弯曲性能的结构,如混凝土拱坝和支护结构非常有效,由于feblock可以处理20个节点或28个节点的六面体单元,因此可以非常准确地计算出塑性变形。下面左图显示的是大坝加载前在在右基座切入一个断层的3DEC模型,右图显示的是加载后岩石和大坝的位移。
feblock可以处理20个节点或28个节点的六面体单元,为了在3DEC模型中使用feblock,必须首先使用config feblock命令进行配置,以便分配所需的额外存储。
model configure feblock
4 feblock命令和FISH函数
如同其它命令一样,feblock也可以同时使用命令行和FISH函数。feblock的命令处理上面提及的配置命令之外,还有以下3个命令:
feblock generate
feblock gravity
feblock list
feblock的FISH函数包括feblock函数和feblock.face函数:
(1) feblock函数
feblock.adjacent
feblock.block
feblock.gauss.pos
feblock.gauss.state
feblock.gauss.stress
feblock.gplist
feblock.group
feblock.group.remove
feblock.index
feblock.isgroup
feblock.material
feblock.next
feblock.pos
feblock.type
(2) feblock.face函数
feblock.face.group
feblock.face.group.remove
feblock.face.hostblock
feblock.face.index
feblock.face.isgroup
feblock.face.next
feblock.face.normal
feblock.face.number
feblock.face.pos
上述部分函数的应用例子参考《Structural Finite Elements》和《Finite Element Dam》,feblock目前在用户笔记中的词条共有29个。