Problem Solving with FLAC3D(0)
Problem Solving with FLAC3D(本项目在examples里的UsersGuide->ProblemSolving->GridGeneration->GridGeneration.f3prj)
本节提供在静态力学分析问题解决中使用FLAC3D的指导
1创建项目(Approach and Project Setup)
地质工程过程的建模涉及特殊的注意事项,并且其设计理念不同于采用人造材料进行设计时遵循的设计理念。必须使用相对较少的特定地点数据来进行岩石和土壤中或岩石和土壤上的结构和开挖的分析和设计,并且要意识到变形性和强度特性可能会发生很大的变化。
在岩石或土壤现场无法获得完整的现场数据。
例如,关于应力,特性和不连续性的信息。
由于设计预测所需的输入数据是有限的,因此应主要使用地质力学数值模型来了解影响系统行为的主要机制。一旦了解了系统的行为,就适合为设计过程开发简单的计算。
这种方法是针对岩土工程的,其中总是缺乏良好的数据。但是在其他应用程序中,如果有足够的数据以及对材料行为的理解,就有可能在设计中直接使用FLAC3D。当程序提供了适当的数据时,在FLAC3D分析中生成的结果将是准确的。
(说明某些应用场景的初始信息的重要性决定模拟结果的准确性)
如果有足够的高质量数据可用,FLAC3D可以给出良好的预测。由于大多数FLAC3D应用程序都将用于几乎没有可用数据的情况,因此下一个主题提供了一种推荐的方法,将数值模型当作实验室测试来对待。该模型永远不应被认为是一个“宽松的盒子”,它在一端接受数据输入而在另一端产生行为预测。必须仔细准备数字“样品”,并测试几个样品,以了解问题所在。
推荐的地质力学数值分析步骤
步骤1定义模型分析的目标。
模型中包含的详细程度通常取决于分析的目的。
例如,如果目标是在建议用来解释系统行为的两个冲突机制之间做出决定,则可以构建一个粗略模型,前提是该模型允许机制发生。
仅仅因为复杂性存在于现实中就很容易将其包含在模型中。
但是,如果复杂特征可能对模型的响应影响很小,或者与模型的目的无关,则应将其省略。从全局视图开始,并根据需要添加优化。
步骤2创建物理系统的概念图。
重要的是要对问题有一个概念上的了解,以便对施加条件下的预期行为提供初步估计。准备概念图时应该问几个问题。
例如:是否预期系统会变得不稳定?
主要的机械响应是线性的还是非线性的?
与问题区域内物体的大小相比,预期运动是大还是小?
是否存在定义明确的可能会影响行为的不连续性,或者材料本质上是否表现为连续体?
地下水相互作用有影响吗?
系统受物理结构限制还是其边界扩展到无穷大?
系统的物理结构中是否存在几何对称性?
这些考虑因素将决定数值模型的总体特征,例如模型几何的设计,材料模型的类型,边界条件和分析的初始平衡状态。他们将确定是否需要三维模型,或者可以使用二维模型来利用物理系统中的几何条件。
步骤3构造并运行简单的理想化模型。
当理想化用于数值分析的物理系统时,在构建详细模型之前,先构建并运行简单的测试模型更为有效。应该在项目的最早阶段创建简单模型,以生成数据和理解。结果可以提供对系统概念图的进一步洞察力;运行简单模型后,可能需要重复执行第2步。简单的模型可以揭示出可以在分析上投入大量精力之前可以弥补的缺点。
例如,所选的材料模型是否足以代表预期的行为?
边界条件是否影响模型响应?
简单模型的结果还可以通过识别哪些参数对分析影响最大,从而帮助指导数据收集计划。
步骤4组装特定于问题的数据。
模型分析所需的数据类型包括以下内容:几何图形的详细信息(例如,地下洞口的轮廓,表面地形,大坝轮廓,岩石/土壤结构);
地质结构的位置(例如断层,层理平面,节理组);
材料行为(例如弹性/塑性,破坏后行为);
初始条件(例如应力的原位状态,孔隙压力,饱和度);
和外部载荷(例如爆炸载荷,加压洞穴)。
由于通常存在与特定条件(尤其是应力状态,可变形性和强度特性)相关的较大不确定性,因此必须选择合理范围的参数进行调查。简单模型运行的结果(在第3步中)通常可以证明对确定此范围有帮助,并有助于为实验室和现场实验的设计提供见识,以收集所需的数据。
步骤5准备一系列详细的模型运行。
最常见的是,数值分析将涉及一系列计算机模拟,其中包括所研究的不同机制,并涵盖了从组装数据库中得出的参数范围。准备一组用于计算的模型运行时,应考虑以下几个方面:
进行每个模型计算需要多少时间?如果模型运行时过多,可能很难获得足够的信息来得出有用的结论。应该考虑在多台计算机上执行参数变化以缩短总计算时间。
模型的状态应保存在几个中间阶段,这样就不必为每个参数变化重复整个运行。例如,如果分析涉及多个加载/卸载阶段,则用户应该能够返回到任何阶段,更改参数并从该阶段继续进行分析。
应该考虑保存文件所需的磁盘空间量。
模型中是否有足够的监视位置,以提供对模型结果的清晰解释并与物理数据进行比较?定位模型中的几个点很有帮助,在计算过程中可以在该点上监视参数变化(例如位移,速度或应力)的记录。同样,应始终监视模型中的最大不平衡力,以在分析的每个阶段检查平衡或破坏状态。
步骤6执行模型计算。
最好先进行一个或两个模型运行,然后将其分成不同的部分,然后再进行一系列完整的运行。应该在每个阶段检查运行,以确保响应是预期的。一旦确定模型运行正确,就可以将多个数据文件链接在一起以运行完整的计算序列。在一系列运行期间的任何时间,应该可以中断计算,查看结果,然后继续或适当地修改模型。
步骤7提供结果以供解释
解决问题的最后阶段是呈现结果,以便对分析进行清晰的解释。最好通过直接在计算机屏幕上以图形方式显示结果或作为输出到硬拷贝绘图设备的结果来最好地实现。图形输出应采用可以直接与现场测量和观察结果进行比较的格式。绘图应从分析中清楚地识别出感兴趣的区域,例如计算出的应力集中的位置,或模型中稳定运动与不稳定运动的区域。模型中任何变量的数值也应易于获得,以便建模者进行更详细的解释。
遵循以下七个步骤,以有效解决地理工程问题。以下各节描述了FLAC3D的应用程序,以满足这种建模方法中每个步骤的特定方面。
2生成网格(Grid Generation )
(Primitive-Based Grids基于基本体的网格)
FLAC3D具有三种主要的内置网格创建方法:基本体,拉伸和构件块。不可以通过交互拉伸来改变图元,可以通过命令行生成和修改区域。此外,FLAC3D可以从导入的文件创建区域。第三方工具(基于体积的CAD程序,例如Rhino)也可以与Itasca的高级自动网格划分器Griddle结合使用,以创建区域,适用于FLAC3D内置工具不足或劳动密集型的最复杂网格。
如果问题具有非常简单,规则的几何形状,或者碰巧符合区域创建命令可用的形状之一,则原始方法是最快,最简单的方法。
如果问题的几何形状可以在二维图中描述,或者在第三维中只有很小的变化,则应首先考虑“extrusion”挤压。请注意,可以将2D起始几何图形导出到Building Block进行3D修改。
如果问题更复杂但仍由相对规则的形状组成,则应考虑使用“Building Blocks构建基块”。对于涉及隧道,结构或地基的土木工程问题,这是相当普遍的。通过广泛的手动调整或通过战略性使用悬垂工具,可以使用此工具来容纳不规则形状,但这仅建议用于常规模型中的有限区域。
如果问题非常不规则和/或涉及复杂的不规则相交表面,则需要确定区域面与描述模型的表面的精确构型对结果是否重要。通常,对于不规则的矿体或其他物质边界,这对于模型的整体物理响应并不重要。在这种情况下,通常使用八叉树方法(也许在第一次使用Building Blocks创建最感兴趣的区域之后)。这种类型的模型在采矿业中并不罕见。
如果问题非常不规则,并且网格的精确一致性很重要,则应考虑使用Itasca的Griddle或其他第三方网格划分工具
通过任何构造方式,网格生成都需要在计算效率,模型几何的真实性和结果准确性之间进行权衡。(六面体多用、区域数、网格精度、区域大小渐变与否)
网格图元概述使用FLAC3D中的图元生成网格涉及将特定连通性的网格形状拼凑在一起,以形成具有所需几何形状的完整模型。可以使用几种类型的图元,并且可以将它们连接并遵循以创建复杂的三维几何形状。每种基本类型的区域生成都是通过zone create命令执行的。可以使用zone gridpoint create命令定义单个参考点,以将网格点放置在特定位置,然后在zone create命令中引用它们。 zone gridpoint merge命令可用于确保正确连接单独的图元。沿区域图元的匹配面的所有网格点必须在要合并的两个图元的指定公差范围内。或者,可以使用zone attach命令来连接不同区域大小的基本网格。如果需要,可以使用FISH调整最终网格,使其与模型区域的表面一致。
(注意在使用call命令时,要保证Date Files框中存在call的文件,在是否Plot命令时,要保证主框中有Plot的文件,可以参看GridGeneration.f3prj项目例子)
zone reflect dip 90 dip-direction 270 origin (0,0,0)
对称平面是与x = 0平面重合的垂直平面(由“ dip”,“ dip-direction”和“ origin”关键字定位)。
注意,倾斜角(dip)和倾斜方向(dip-direction)假定x对应于“东”,y对应于“北”,z对应于“上”。
也可以使用FISH来平滑网格
(Extrusion-Based Grids)
使用步骤Panes->Extrude->Construction->Extrusion->Buillding Blocks Pane
(Building Blocks-Based Grids)
Panes->Building Blocks->Add Blocks tool->Generate Zones->zoneit(in the Building Blocks pane)
在构建基于构建块的网格时,其他工具和操作可实现更高的复杂性,其中一些包括以下内容:
通过导入CAD数据(DXF,STL等),可以构造(按原样进行跟踪)适合现有3D几何图形的构建块集。
CAD数据是支持点捕捉的对象,这有助于整形块以适合导入的几何。
边缘可能会裂开;拆分将在现有块之间自动传播。
边缘可以弯曲,以增加控制点以适合任何形状。
可以根据需要隐藏/显示块。
可以复制和粘贴块。
未连接的块可以通过匹配相似的面孔而彼此对齐。
可以复制包括层的一组选定块,并为其分配不同的厚度。
对象的属性可以交互设置/更改,也可以通过“控制面板”精确指定。
三角形面上的区域的方向可以是“循环的”。
相似的对象可以组合在一起;从这些对象派生的区域将在生成时保留该组分配。
可以使用多种控制形式进行分区(请参阅下面的下一个主题)。
提供了一个预先构建的现有形状和几何图形库。
(Grids from Outside FLAC3D)
zone import or File->Grid or Open into Project
or use Griddle (work with CAD or Rhino)
(Grids from Rhino/Griddle)
暂时不做描述
(Grid Generation: Additional Facilities)
网格密化(Densifying Grids)我们可以生成一个简单的网格,然后使用zone densify命令对网格进行密化。以这种方式创建的新区域和面将复制组分配和原始变量所拥有的额外变量值,但会丢失所有材料模型,应力和其他状态信息。(Model Pane->select a set of zones->Densify)
zone densify segments 2;(每网格分割两块)
若通过指定最大尺寸长度来致密化网格
zone densify local maximum-length (0.5,0.5,0.4) range position-z 2 4(表示在x,y方向划分两格,z方向3格,取0.4>0.333,多取较整数)
如果沿不同区域的面有不同数量的网格点,请始终在区域密集化命令之后使用区域附加by-face命令。(zone attach by-face
)
若使用几何信息致密化网格,则需要使用set命令以取出划分区域,也需要使用by-face命令链接不同精度网格
(Geometry-Based Densification: Octree Meshing)基于几何的致密化:八进制网格划分
zone densify segments 2 gradient-limit maximum-length 0.05 repeat range geometry-distance 'intcylinder' gap 0.0 extent
(segments关键字指示每个级别的致密化将在每个方向上将区域细分为2,从而为每个原始图像生成八个新区域。
gradient-limit它确保从一个区域到下一个区域的最大区域大小差异是一个致密化级别。
maximum-length关键字与以下描述的重复说明相结合,表示如果区域的边长大于0.05,则将标记这些区域以进行致密化。
repeat关键字指示将在区域上进行一次致密化,然后,如果任何区域被致密,则将选择新的区域列表进行致密化。重复此操作,直到没有区域要致密为止,要么是因为它们不在该范围内,要么是因为它们已经小于指定的最大长度。
range geometry-distance选择了gap到intcylinder的区域。由于在这种情况下gap(间隙)为零,因此它将选择实际上与曲面相交的区域。
extent关键字指示与表面的距离应通过区域的笛卡尔范围来判断,而不仅仅是区域质心。如果不使用该值,则将需要一个非零的gap,以使区域有可能落在该范围内。)
要创建符合地形表面的网格,必须指定几何图形集。创建几何图形集的最简单方法是通过geometry import命令。
其他命令可用于操纵边,多边形和节点,以及对整体几何集进行其他操作。
一些图片
























