尽管FLAC3D逐渐流行起来,但是在实践的岩土工程咨询中,FLAC2D仍然是主要的分析工具。一方面大多数实践的岩土工程问题可以近似简化为平面应变模型,另一方面FLAC2D的价格相对便宜,而且FLAC3D的模拟需要更高的模拟技巧,如果不经过一定的专业训练很难建立一个真实的三维模型。FLAC3D的Extrusion工具能够把一个二维模型通过拉伸变成一个三维模型。新的FLAC2D GUI中仍然保留着Extrusion,用法与FLAC3D相同,也可以Extrusion, 然后在FLAC3D中导入模型。本文描述FLAC2D中Extrusion的使用方法。FLAC3D的使用参考《FLAC3D三维模型的建立---Extrusion工具》。
2 Extrusion Pane
Extrusion Pane的作用是用鼠标选择或操作完成建立模型的命令。这个菜单与FLAC3D相比,没有了"Building Blocks"和“Geometry", 因为这两个功能是为产生三维模型准备的。
背景图形输入与FLAC3D的操作方法相同,如下图所示,包括png图形文件,Autocad的dxf文件,FLAC2D的geom文件以及Solidworks的stl文件。对于一般工程计算来说,输入dxf文件是最好的选择,因为dxf文件包含了真实的坐标位置。一些第三方的岩土工程软件也提供了dxf文件的输出,比如Rocscience的SLIDE就可以输出dxf文件,经测试非常好用。用Point-edge Tool工具勾勒出模型的几何形状后便可以把背景图形删除。
在大多数情况下我们可以直接创建模型的几何形状。下面讨论如何创建一个几何形状及其操作时的注意事项。
3 创建二维模型
(1) 首先产生一个新的Set,命名为ucs。
extrude set select "geom"
(2) 产生几何形状。实践中发现使用Point-edge Tool直接画的方法不好,因为画完之后 需要对每个点的坐标进行修改,直接增加点然后生成线的方法更好一些。从结果上来讲,点的生成和线的生成顺序没有差别,可以增加两个点,产生一条线,然后再产生点,再产生线。不过,这样做在生成代码时太乱,不容易检查错误以及点和线的ID。因此,一个好的方法是先产生出所有的点,然后再亮相。下面描述了这个过程。
(3) 产生点。在Extrusion内右击鼠标,选择Add a point, 然后输入该点的坐标。在输入各个点的过程中,可以随时右击鼠标,选择Reset view看点的分布状况。FLAC3D可以使用同样的方法。
extrude point create (-1,0) tolerance-merge 0
extrude point create (1,0) tolerance-merge 0
extrude point create (1,4) tolerance-merge 0.0091963949
extrude point create (-1,4) tolerance-merge 0.0091963949
(4) 产生线。 输入完点后,选择Point-edge Tool,顺序把点连成线。
extrude edge create by-points 1 2 type simple
extrude edge create by-points 2 3 type simple
extrude edge create by-points 3 4 type simple
extrude edge create by-points 4 1 type simple
(5) 划分单元。当点连成线时,默认的每边单元划分为4个,无论边的长度有多长,FLAC每条边最大的单元数为10000个,显然,这个数目对于所有实际的问题都已经足够;还有一种方法是设置每个单元的长度,如果设定的单元长度导致单元数目超过10000,那么单元数目设置为10000,事实上这种情况在实际问题中也不会出现。
extrude edge size-default 4
为了改变默认的单元数目,左手按Ctrl键,右手用鼠标点击要选择的边,这样可以同时选择多条边,然后在窗口右边的Extrusion属性栏内改变数字。
extrude edge size 2 range id-list 4 2
extrude edge size 4 range id-list 3 1
我开始没有找到这个捷径,一条边一条边地修改,后来才探索出这个方法。
(6) 设置组名。选择要设置组名的边,然后在上图所示的"Group"栏内填写组名即可。
extrude edge group "Top" slot "Construction" range id-list 3
extrude edge group "Bottom" slot "Construction" range id-list 1
(7) 产生单元。点击“Automatically create blocks in the set”工具图标,即可产生出网格。
extrude block create automatic
(8) Blocking Tool工具。Blocking Tool可以设置许多参数,用于产生各种各样的网格,包括非结构化的网格。 这个工具的设置参数与FLAC3D相同。
(9) Autozone工具。 通过Autozone...工具细化网格。在画二维图形时,尽量按照几何相似的原则划分成多个区域,使得产生的网格不出现奇异形状。
4 结束语
模块化是使用任何语言编程时应该注意的问题。我们尽量把模型几何形状的建立与计算过程实行分离。当完成几何形状的建立后,我们可以把产生的代码保存在一个数据文件t中,在"state Record"内右击鼠标,保存成一个文件geometry.dat. 然后在主程序内调用。
program call 'geometry'