1 引言
产生rblock的方式有三种:第一种方法是使用rblock create命令;第二种方法是使用rblock template命令,就像在【创建基于几何数据的多边形块体(geom.poly.create)】描述的一样,使用这两种方法能够产生出半粘结块体,能够更好地表征近地面岩土体的不同几何形状,例如碎石土。第三种方法是使用rblock construct命令,可以产生出与3DEC类似的BBM【粘合块体模拟BBM---Bonded Block Modeling】。这个笔记简要讨论了这种方法。
2 rblock construct from-geometry命令
rblock construct命令用来用来创建一组刚性块体。在2D下,这些刚性块可以充填到一个多边形或多边形集 合;在3D下,可以充填到一个体积或体积集 合。在3D中这个过程可能会产生一些重叠(overlap)。此外,rounding也会引入初始重叠【接触重合度 Contact overlap tolerance的相关问题】。因此,一旦创建了刚性块,可能需要进行增量法向力的计算。rblock construct共有5个关键字:
rblock construct density
rblock construct from-balls
rblock construct from-geometry
rblock construct group
rblock construct rounding
其中from-geometry和from-balls是创建rblock最主要的关键字。下面仅讨论from-geometry,以后再讨论from-balls。
rblock construct from-geometry命令从一个geometry集 合中构建刚性块。如果没有提供集 合,那么将使用当前的集 合,可以使用geom.set.find函数进行查询。默认情况下集 合中的多边形将被分解成三角形或四边形单元,单元尺寸通过最小边长和最大边长设定,如下代码所示。如果需要设定划分区域,使用range关键字指定划分范围。在2D中,刚性块是由这些划分出来的单元组成的;在3D中,抽取出来的表面用来构建四面体或六面体刚性块。
rblock construct from-geometry 'box' ...
minimum-edge 0.1 maximum-edge 0.2
如果使用voronoi或Delaunay关键字,几何体集 合中的节点被用作Delaunay三角形的种子,刚性块由Voronoi或Delaunay单元构建。rblock construct from-geometry命令的关键字有:delaunay,hexahedral(3D),internal,minimum-edge,maximum-edge,patch-angle-tolerance,quadrilateral,tetrahedral(3D), voronoi。
下图第一个显示的是默认情况下产生的三角形块体,第二个图是使用quadrilateral产生的四边形块体。比较奇怪的是这个命令不能设置四边形的边长,如果设置的话,就显示错误信息"Unused extra parameter",猜想这可能是PFC7.0的新命令,稍后进行验证。但是可以quadrilateral可以使用minimum-edge和maximum-edge定义四边形的边长,第三个图显示了这样的效果;第四个图是使用了Delaunay关键字产生的结果,仅划分了2个块体。更加奇怪的是使用voronoi不显示块体图形,在2D和3D中均作了试验,不知道是什么原因。
internal是一个非常奇妙的关键字,它通过额外变量对背景网格设置网格单元的边长,从而产生出尺寸不同的块体。