将单元zone转化为四面体tetrahedron---block zone list poly (BBM)

1 引言

list命令一般用于屏幕显示块体或单元的属性值,如果不附加写入文件的命令,那么这些显示的数据仅保存在内存中,不能直接保存到文件里面。但有两个例外,一个是 block list poly <s>命令,这个命令产生出一个包含block create polyhedron face命令的文件,这个文件可以直接作为一个数据文件来调用。这个命令的主要用途是提取一个模型的可见块内容,可以用来减少在建造过程中删除了许多块后模型所占的内存量。如果不指定文件名,那么系统会命名该文件为spoly.txt。有效位数等于12位或全局模型精度,以较大者为准。如果要增加精度到12位以上,使用model precision命令来设置。


另一个与之类似的命令是block zone list poly <s>,这个命令产生一个包含一系列block create tetrahedron命令的文件,其作用是将每个单元(zone)转化成变成一个四面体块(block)。原有的块组、区域、材料号和本构号将应用于新的四面体块。如果没有指定文件名,那么系统会命名为 "poly.dat"。有效位数等于12或全局模型精度,以较大者为准。如果要增加精度到12位以上,使用model precision命令设置。


使用block zone list poly的主要用途是在FLAC3D或3DEC中产生粘结块体模型[bonded block model (BBM)], BBM的生成由两个步骤组成,第一步产生离散的块体,第二步插入随机的DFN或者输入的节理组。下面分别演示这两种途径。


2 poly+DFN=BBM

在这个例子中,首先产生一个brick, 然后划分单元,block zone list poly命令将每个单元转化为block,写入poly.dat文件。

block create brick -3 3 -3 3 -5 5block zone generate edgelength 0.5block zone list poly

新产生一个DFN,然后导入上面生成的poly.dat, 产生出BBM.

model domain extent -6 6 -6 6 -10 10fracture template create 'dfn1' size power-law 3 size-limit 0.5 10fracture generate template 'dfn1' dfn 'realization_1' fracture-count 200program call 'poly'block cut dfn name 'realization_1' jointset-id 99block zone gen edgelength 0.25

将单元zone转化为四面体tetrahedron---block zone list poly (BBM)的图1


3 poly+joint-set=BBM

在这个例子中,首先产生一个tunnel,然后考虑到圆心巷道的对称,取其1/4部分划分单元,block zone list poly命令将每个单元转化为block,写入poly.dat文件。

block create tunnel length -1 1 blocks-radial 8 blocks-tangential 2 ...  boundary 8 radius-ratio 1.1block delete range position-x -100 0block delete range position-z -100 0block zone generate center 0 0 0 edgelength-center 0.1 distance 9 ...  edgelength-distance 0.5block zone list poly

导入上面生成的poly.dat, 这个导入过程需要占用输入一组节理,产生出BBM。

program call 'poly'block cut joint-set dip 30 dip-direction 90 spacing 0.5 number 20 ...  jointset-id 999block zone generate center 0 0 0 edgelength-center 0.1 distance 9 ...  edgelength-distance 0.5

将单元zone转化为四面体tetrahedron---block zone list poly (BBM)的图2

默认 最新
当前暂无评论,小编等你评论哦!
点赞 评论 收藏 1
关注