Flac3D 中文流体计算
Flac3d中文说明

岩土工程软件FLAC3D的基本知识介绍岩土工程结构的数值解是建立在满足基本方程(平衡方程、几何方程、本构方程)和边界条件下推导的。
由于基本方程和边界条件多以微分方程的形式出现,因此,将基本方程近假发改用差分方程(代数方程)表示,把求解微分方程的问题改换成求解代数方程的问题,这就是所谓的差分法。
差分法由来已久,但差分法需要求解高阶代数方程组,只有在计算机的出现,才使该法得以实施和发展。
一、FLAC3D简介FLAC3D(Fast Lagrangian Analysis of Continua)由美国Itasca公司开发的。
目前,FLAC 有二维和三维计算程序两个版本,二维计算程序V3.0以前的为DOS版本,V2.5版本仅仅能够使用计算机的基本内存(64K),所以,程序求解的最大结点数仅限于2000个以内。
1995年,FLAC2D已升级为V3.3的版本,其程序能够使用护展内存。
因此,大大发护展了计算规模。
FLAC3D是一个三维有限差分程序,目前已发展到V2.1版本。
FLAC3D的输入和一般的数值分析程序不同,它可以用交互的方式,从键盘输入各种命令,也可以写成命令(集)文件,类似于批处理,由文件来驱动。
因此,采用FLAC程序进行计算,必须了解各种命令关键词的功能,然后,按照计算顺序,将命令按先后,依次排列,形成可以完成一定计算任务的命令文件。
FLAC3D是二维的有限差分程序FLAC2D的护展,能够进行土质、岩石和其它材料的三维结构受力特性模拟和塑性流动分析。
调整三维网格中的多面体单元来拟合实际的结构。
单元材料可采用线性或非线性本构模型,在外力作用下,当材料发生屈服流动后,网格能够相应发变形和移动(大变形模式)。
FLAC3D采用的显式拉格朗日算法和混合-离散分区技术能够非常准确发模拟材料的塑性破坏和流动。
由于无须形成刚度矩阵,因此,基于较小内存空间就能够求解大范围的三维问题。
FLAC3D采用ANSI C++语言编写的。
Flac3D 中文流体计算

Flac3D 中文手册FLAC3D的计算模式中是否需要做孔压分析取决于是否采用config fluid命令。
1 无渗流模式(不使用config fluid)即使不使用命令config fluid,仍然可以在节点上施加孔压。
这种模式下,孔压将保持为常量。
如果采用塑性本构模型的话,材料的破坏将由有效应力状态来控制。
节点上的孔压分布可由initial pp命令或water table命令来设定。
如果采用water table命令,由程序自动计算水位线以下的静水孔压分布。
此时,必须施加流体密度(water density)和重力(set gravity)。
流体密度值和水位位置可以用命令print water显示。
如果水位线是由face关键字来定义的,则可用命令plot water命令显示水位。
这两种情况,单元的孔压都由节点孔压值平均求出,并在本构模型计算中用作有效应力。
这种计算模式下,体积力中不反映流体的出现:用户必须根据水位线以上或以下相应地指定干密度和湿密度。
使用命令print gp pp和priint zone pp可分别得到节点或单元孔压。
plot contour pp命令可绘出节点孔压云图。
2 渗流模式(使用config fluid)如果使用命令config fluid,则可进行瞬时渗流分析,孔压改变和潜水面的改变都可能出现。
在config fluid模式下,有效应力计算(静态孔压分布)和非排水计算均被执行。
除此之外,还可进行全耦合分析,这种情况下,孔压改变将使固体产生变形,同时体积应变反过来影响孔压的变化。
如果采用渗流模式,单元孔压仍由节点孔压平均求出。
但这种模式,用户只能指定干密度(不论是水位以上还是以下),因为FLAC3D 将流体的影响考虑到了体积力的计算中。
采用渗流模式时,渗流模型必须施加到单元上,使用命令modelfl_isotropic模拟各向同性渗流,model fl_anisotropic模拟各向异性渗流,model fl_null模拟非渗透物质。
FLAC3D V5.0技术参数

ITASCA系列软件之FLAC3D 技术参数2013年5月Itasca International IncItasca(武汉)咨询有限公司Itasca国际公司简介Itasca国际公司(Itasca International Inc.)是岩体工程领域的著名跨国机构,以解决岩体工程生产实践中的超常规问题为工作方向,并以此开展岩石力学基础理论研究和高端技术开发。
公司总部设在美国,在全世界5大洲的14个国家设立分公司。
Itasca国际公司由一批国际著名岩石力学专家组成,员工在美国、英国、瑞典等国家共占院士席位5席,为岩石力学学科和国际岩石力学学会的创始者之一。
员工历任国际岩石力学学会1期、副主席2期,获国际上岩石力学和岩体工程行业最高奖Muller奖1人次,Rocha奖多人次,奠定了其国际前沿地位。
Itasca专家对岩石力学学科的建立和发展、岩体工程实践活动做出了突出贡献,世界上目前被普遍使用的一些技术和方法,如岩石伺服压力机、水压致裂地应力测量、FLAC、FLAC3D、UDEC、3DEC、PFC等都代表了Itasca 的突出贡献。
特别地,所有这些技术开发、特别是数值计算软件的开发和完善,都直接出自Itasca专家解决实际工程问题的需要,这些技术手段同时又促进了研究工作的深入和发展,从而在Itasca形成了良好的相互驱动。
研发工作和工程实践的高度结合成为Itasca区别世界上任何技术机构的特色,是维持Itasca国际前沿地位的重要保障。
目录1软件功能 (1)2FLAC3D技术参数 (4)3FLAC3D v5.0操作特点 (7)4常用领域 (7)5FLAC3D原理简介 (7)1软件功能FLAC3D是由美国ITASCA集团公司研发推出的连续介质力学分析程序,是岩土工程领域专业的分析软件,编制原理为显式有限差分方法求解技术和混合离散技术。
FLAC3D(快速拉格朗日程序)系列软件代表了当前世界范围内数值分析领域的高端技术,为岩土工程领域内工程、设计、科研工作者提供了全新方案解决手段。
flac3d命令汉语版 2

FLAC程序使用手册FLAC 输入命令FLAC 的输入和一般的数值模拟的程序不一样, 它可以用交互的方式从键盘输入各个命令, 也可以写成命令文件, 类似于批处理, 由文件来驱动。
FLAC 命令大小写一样。
所有的命令可以附带若干个关键词和有关的数值。
在下面的命令解释中, 只有大写的字母起作用, 小写的字母写不写、写多少个都没有崐关系。
i,j,m 和 n 开始的变量要求整型数, 否则要求实型数。
•实型数的小数点可崐以忽略, 但是整型数不能带小数点。
数值间可以用空格隔开, 空格的数目不限,•也可以用下面的分隔符隔开: ( ), / =< > 表示可选的参数, 输入时括号不用输入;... 表示可以有任意个参数。
由 * 号开始到行末为注释, FLAC 在执行时不理会。
下面的 FLAC 命令按字母排列。
Apply 关键词 = 数值 <关键词 = 数值 ...> <范围>可以有下面的关键词:Pressure 压力XForce X-方向的力YForce Y-方向的力ATtach 该命令可以将一条线上的结点和另一条线上的结点互相接合在一起, 用以形成复杂的网格形状。
Call 文件名写成的命令文件可以用 Call 命令来调用, 命令文件的最后一行必须是RETURN, 以返回到交互方式。
命令文件中不能有 CALL 命令本身。
Config 关键词FLAC 用以解平面应变问题, •但经过配置命令也可以用于解平面应力问题或轴对称问题。
需要时应在形成网格之前发。
关键词有:P_STR 平面应力问题AX 轴对称问题CYC n该命令同 STEP, 为执行 n 个时步的循环运算。
Fix X <Mark> <范围>YX Y用此命令可以使 <范围> 内结点的 x- 或 y- 方向的速度保持不变。
<范围> 的格式可以是 I = i1,i2, J = j1,j2; i 和 j •何者先输入没有关系。
flac3d基坑降水流固耦合命令流

flac3d基坑降水流固耦合命令流1. 渗流示例;------------------------------参数部分bulk modulus, K 390 MPa 体积模量(土质比较硬)shear modulus, G 280 MPa 剪切模量soil dry density, ρd 1200 kg/m3 土的密度water density, ρw 1000 kg/m3 水的密度wall density, ρwal 1500 kg/m3 档土墙的密度permeability, k 10?12 m2/Pa-s 渗透系数porosity, n 0.3 孔隙率fluid bulk modulus, Kf 2.0 GPa;-------------------------------------;-----以下是命令流;------------------------------------------------------; Excavation in a saturated soil;------------------------------------------------------config fluid ;; --- geometrical model --- 建立模型gen zone brick p1 18 0 0 p2 0 18 0 p3 0 0 18 size 18 18 18 rat 1 1 1group soil ;设置土组group excavate range x 0 4 y 0 4 z 0 5 ;设置开挖范围组group wal1 range x 4 5 y 0 5 z 0 7 ;group wal2 range x 0 4 y 4 5 z 0 7 ;group wall range group wal1 any group wal2 any ;档土墙1 和2 合并为一个档土墙组; --- fluid flow model ---model fl_iso ;各项同性流体prop perm 1e-12 poro 0.3 ;设置渗透系数和??比 or ??率ini fdensity 1e3 ; 初始化水密度ini fmod 2.0e9 ftens -1e-3 ; 初始化水的体积模量及??model fl_null range group excavate ; 开挖部分没有水流model fl_null range group wall ;档土墙不渗水ini pp 0 grad 0 0 1e4 ;初始化孔隙水压力fix pp range z -0.1 0.1 ;约束应该是整个模型的底部吧?fix pp range x -0.1 4.1 y -0.1 4.1 z 4.9 5.1 ;开挖部分也给约束住了,而其他的地方不管; --- mechanical model --- 力学模型model elas ; 弹塑性prop bul 3.9e6 shea 2.8e6 ;设置体积模量和剪切模量,这两个必须,有一次我只设置了体积模量,就错的一塌糊涂model null range group excavate ;力学模型的开挖ini density 1.2e3 ;初始化密度,应该是土的密度ini density 1.5e3 range group wall ;初始化墙(档土墙)的密度,fix x range x -.1 .1 ;施加约束,据说差分法约束0 的时候,必须取一个-0.1<0<0.1,范围fix x range x 11.9 12.1 ;施加约束,或者叫做边界条件fix y range y -.1 .1 ;施加约束fix y range y 11.9 12.1fix z range z 11.9 12.1; initial total stresses 出世总应力ini szz 0 grad 0 0 -1.5e4 ;z方向的应力大一些ini sxx 0 grad 0 0 -1.2e4 ;水平方向的,小一些ini syy 0 grad 0 0 -1.2e4 ;apply nstress 0 grad 0 0 -1.2e4 range x 0.0 4.0 y 3.9 4.1 z 0.0 5.0apply nstress 0 grad 0 0 -1.2e4 range x 3.9 4.1 y 0.0 4.0 z 0.0 5.0apply nstress -7.5e4 range x 0.0 4.0 y 0.0 4.0 z 4.9 5.1; --- setting --- 设置set gravity 0 0 10 ;设置重力加速度; --- initial state --- ;初始化状态solve force 1 ; check initial equilibrium 求解平衡; --- histories --- 记录set hist_rep 40 ;记录步为40hist fltime ;记录时间hist gp pp 0 0 6 ;记录某点的孔隙水压力hist gp xdis 4 0 0 ;水平位移hist gp xdis 4 0 2 ;记录水平位移hist gp xdis 4 2 0hist gp zdis 0 0 5 ;记录竖向位移hist gp zdis 2 0 5hist gp zdis 4 0 5hist gp zdis 2 2 5hist gp zdis 4 2 5hist gp zdis 4 4 5hist gp zdis 10 0 1hist gp zdis 10 0 2;; --- excavation --- 开挖set fluid off ;关闭水; apply pore pressure at walls 在墙上施加孔隙水压力apply nstress 0 grad 0 0 -1.e4 range x 0.0 4.0 y 3.9 4.1 z 0.0 5.0apply nstress 0 grad 0 0 -1.e4 range x 3.9 4.1 y 0.0 4.0 z 0.0 5.0apply nstress -5.e4 range x 0.0 4.0 y 0.0 4.0 z 4.9 5.1solve ;force 1 ;求解save exc1.sav ; 保存;; --- drainage ---apply remove nstress ;撤掉刚才的压力def relaxsetup ;定义一个释放函数的参数step0 = stependrelaxsetup ;调用def relax ;定义一个释放函数rstep = step - step0if rstep < ncyc thenrelax=1.0-(float(rstep)/float(ncyc))elserelax = 0.0endifend ;结束set ncyc = 1000 ;先赋值,随后调用apply nstress 0 grad 0 0 -1.e4 hist relax & range x 0.0 4.0 y 3.9 4.1 z 0.0 5.0apply nstress 0 grad 0 0 -1.e4 hist relax & range x 3.9 4.1 y 0.0 4.0 z 0.0 5.0apply nstress -5.e4 hist relax &range x 0.0 4.0 y 0.0 4.0 z 4.9 5.1cyc ncycsolve ;求解save exc2.sav ;保存;; --- percolation --- 渗透set fluid on ;设置水算法fix pp 0 range x -0.1 4.1 y -0.1 4.1 z 4.9 5.1 ;施加孔隙水压力cyc 9000 ;循环save exc3.sav ;保存plot create excav ;建立一个显示的视图一下内容都是显示内容plot set rot 200 0 195plot set cent 6 6 6plot set dist 39.18plot set magn 0.8plot set plane ori 0 0 0 normal 0 -1 0plot add cont pp out onplot add block group lgra range group wallplot add cont pp int 10000 max 110000 range x 0 4 y 0 4 z 5 7plot add flow planeplot showret。
流体与动态计算实例分析flac3d

流体与动态计算实例分析flac3dnewconf dyn fluid;设置动态与流体算法set dyn off fluid off;关闭动态与流体算法;generate foundation and embankment grids and attach interfaces*;生成基础和堤坝网格并粘贴接触面' |gen zone bri p0 0,0,0 p1 40,0,0 p2 0,10,0 p3 0,0,10 size 20 5 5;基础gen zone bri p0 22,0,10 p1 40,0,10 p2 22,10,10 p3 22,0,20 size 9,5,5;堤坝;在z=10,x=15~22,y=0~10上生成接触面1interface 1 face range x 15.0 22.0 y 0.0 10.0 z 9.9 10.1;在x=22,z=10~21,y=0~10上生成接触面2interface 2 face range x 21.9 22.1 y 0.0 10.0 z 10.0 21.06;设置最大的边界长度为1.0interface 1 maxedge 1.0interface 2 maxedge 1.02; generate block wall 生成挡水墙gen zone bri p0 15,0.5,11 p1 21,0.5,11 p2 15,9.5,11 p3 15,0.5,20.9 siz 3 5 5;name groups and move block on to soil;命名群组并移动挡水墙到土壤上group block range x=16,22 y=0,10 z=10,20group 'soil embankment' range x=22,40 y=0,10 z=10,20group 'dense soil foundation' range x=0,40 y=0,10 z=0,10 ;挡墙沿x方向增加一个单位ini x add 1.0 range group block;挡墙沿z方向增加一个单位ini z add -1.0 range group block; assign models to groups;给群组设定计算模型model mohr range group block not;除挡墙外的群组为摩尔库仑模型,model elas range group block;挡墙为弹性;assign mechanical properties设置力学参数prop shear=1e8 bulk=2e8 cohes=1e10 range group 'soil embankment'prop shear=5e8 bulk=1e9 cohes=1e10 range group 'dense soil foundation'prop shear=9.15e9 bulk=10e9 range group blockini dens=2100 range group block;初始化质量密度ini dens=1800 range group block notinterface 1 prop coh=0 fric 60. dil 0. kn=1e8 ks=1e8 ten 0.;接触面参数interface 2 prop coh=0 fric 60. dil 0. kn=1e8 ks=1e8 ten 0.model fl_iso;各项同性流体模型,计算流体必须的; mechanical boundary and initial conditions物理边界和初始条件fix z range z=-.1 .1;固定z=0的面fix x range x=-.1 .1fix x range x=39.9 40.1;固定x=40的面fix y range y=-.1 .1fix y range y=9.9 10.1;初始应力,垂直应力为水平的2倍,在z方向有梯度变化ini szz -3.6e5 grad 0 0 1.8e4ini sxx -1.8e5 grad 0 0 0.9e4ini syy -1.8e5 grad 0 0 0.9e4set grav 0 0 -10;设置重力加速度;记录监测数据hist unbal;不平衡力hist gp zdisp 16,5,20;点(16,5,20)的z方向位移hist gp zdisp 30,5,20;求解solvesave block1.sav;保存pau;assign realistic strength properties设置现实的强度参数prop cohes=0 tens 0 fric 35 range group 'soil embankment' prop cohes=0 tens 0 fric 40 range group 'dense soil foundation'solvesave block1.sav;流体分析rest block1.sav;调用保存的文件;specify fluid properties设定流体参数prop perm=1e-8 poros=0.3ini fdens=1000;初始化流体密度ini fmod=2e3;流体的体积模量set fluid pcut on;设置流体进程,负压时自动变为0; assign water table设置水位water density 1000.;水的密度water table face 0 0 20 0 10 20 40 10 20 40 0 20 ;水平面由四个节点创建; block wall is impermeable挡墙不透水fix pp 0 range group block;挡墙区域内孔隙水压力为0;施加水压力apply nstress -1e5 range x=0,16 y=0,10 z=9.9,10.1;加在土坝上的apply nstress -2e5 grad 0,0,1e4 range x=15.9,16.1 y=0,10 z=10,20;挡墙上的z向梯度变化.;启动流体算法set fluid onsolvesave block2.sav;动态分析rest block2.savset dyn on;启动动态算法set large;大变形set dyn multi on;设置动态多步计算,有什么区别呢;turns multi-stepping on or off. Multi-stepping speeds up calculations in dynamic models which have a large;zone size or modulus contrast. Sub-stepping only works when dynamic mode is in operation (SET dyn on),;and is effective only when the grid is nonuniform or there is a contrast in material properties.;初始化速度,位移和状态ini xvel 0 yvel 0 zvel 0ini xdisp 0 ydisp 0 zdisp 0ini state 0;设置土中水的模量; set fluid modulus for water in soilsini fmod 250e6 range group block not;施加动态边界条件; apply dynamic boundary conditionsdef wavewave = ampl * sin (2.0*pi*freq*dytime)end;释放边界z=0free x y range z -.1 .1;施加动态条件apply xvel 1.0 hist wave ran z -.1 .1apply yvel 1.0 hist wave ran z -.1 .1apply ffset freq 10.0 ampl 0.5 ;设置频率和放大系数; dynamic histories 动态历史记录set dyn time 0hist resethist dytimehist gp xvel 20,10,0hist zone pp 19,5,5 ;记录点孔隙压力hist zone pp 30,5,5hist zone pp 30,5,15hist zone pp 19,5,9hist gp xdis 16,5,20set dyn damp local .125 ;设置动态本地衰减为.125 solve age 5.0 ;求解的动态计算时间save block3.sav ret。
FLAC3D渗流说明书(中文版)

FLAC3D流固耦合(手册翻译)1.1简介FLAC3D通过具有渗流性的实体(比如土)来模拟流体的流动。
流动模型的建立可以独立于力学计算而自动完成,或者说可以与力学模型同时建立,这样就可以考虑流体与土体之间的相互作用。
流固耦合的一种类型是“固结”,即:空隙水压力逐渐消散而导致土体的沉降。
这个过程包括两种力学反映:一,空隙水压的改变导致有效应力的变化,这将影响到土体的力学反映(如:有效应力的减小可能导致塑性区的产生);二,力学实体中某一区域的流动会随着空隙水压的改变而改变。
该程序可以计算完全饱和情况下的流动,也可以模拟具有自由水面的流动。
模拟具有自由水面的流动时,自由水面以上的部分空隙水压等于0,气相将不参与计算。
对于不考虑毛细水压力颗粒较粗的材料可以采用这种模拟方法。
流体计算就有以下特点:1 根据各项同性和各项异性的渗流计算,相应采用两种流体运动定律。
流动中的null材料用来模拟流动范围内的非渗流材料。
2 不同区域可以拥有不同的流动模型(isotropic, anisotropic or null)和模型参数。
3 可以事先指定流体的压力、流量、非渗流区边界条件。
4 流体源可以以电源,也可以以体源的形式插入到材料中,这些源对应于流体的流入或流出,可以随着时间而变化。
5 对于完全饱和流动,可以采用显式和隐式两种算法,但对于非饱和流动则只能采用显示计算。
6 任何力学和温度计算模型都可以与流体模型一起使用,在耦合计算中,可以考虑饱和体的压缩性和热膨胀性。
7.流体与力学计算的耦合通过提供比奥系数来实现。
和不排水温度系数β8.与温度的耦合计算可以通过提供线性热膨胀系数αt(undrained thermal coefficient,可能翻译的不对)来实现。
9.热-流体计算以线性理论为基础,假定材料参数为常数,不考虑对流。
流体与实体的温度保持局部平衡。
非线性行为可以采用FISH语言改变孔隙压力、材料特性来实现。
FLAC3D网络高手总结教程(含部分3DEC)

目录1.FLAC3D的固流耦合计算模式 ------------------------------------------------------------------------------------ 1 2.FLAC3D固流耦合学习小结 --------------------------------------------------------------------------------------- 5 3.关于流固耦合的问题 ----------------------------------------------------------------------------------------------- 6 4.也谈采用FLAC3D对地下采矿的模拟 ------------------------------------------------------------------------- 8 5.FLAC3D本构模型开发 ---------------------------------------------------------------------------------------------- 8 6.FLAC3D自定义本构模型----------------------------------------------------------------------------------------- 11 7.数值计算中初始应力场的模拟-------------------------------------------------------------------------------- 13 8.FLAC3D应变分析--------------------------------------------------------------------------------------------------- 13 9.FLAC3D的调参 ------------------------------------------------------------------------------------------------------ 14 10.开采沉陷垂直剖面等值线的生成--------------------------------------------------------------------------- 15 11.FLAC3D的应变硬化软化模型 -------------------------------------------------------------------------------- 16 12.FLAC3D的塑性流动格式 --------------------------------------------------------------------------------------- 17 13.FLAC3D的动画制作---------------------------------------------------------------------------------------------- 17 14.地下连续墙基坑开挖支护 ------------------------------------------------------------------------------------- 18 15.一个汇的小例子 -------------------------------------------------------------------------------------------------- 21 16.用3DEC生成岩体随机节理网络 ---------------------------------------------------------------------------- 23 17.固结小算例 --------------------------------------------------------------------------------------------------------- 24 FLAC3D的固流耦合计算模式英文原文-------------------------------------------------------------------------- 261.FLAC3D的固流耦合计算模式/blog/static/323428402007102243049387/FLAC3D的计算模式中是否需要做孔压分析取决于是否采用config fluid命令。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Flac3D 中文手册FLAC3D的计算模式中是否需要做孔压分析取决于是否采用config fluid命令。
1 无渗流模式(不使用config fluid)即使不使用命令config fluid,仍然可以在节点上施加孔压。
这种模式下,孔压将保持为常量。
如果采用塑性本构模型的话,材料的破坏将由有效应力状态来控制。
节点上的孔压分布可由initial pp命令或water table命令来设定。
如果采用water table命令,由程序自动计算水位线以下的静水孔压分布。
此时,必须施加流体密度(water density)和重力(set gravity)。
流体密度值和水位位置可以用命令print water显示。
如果水位线是由face关键字来定义的,则可用命令plot water命令显示水位。
这两种情况,单元的孔压都由节点孔压值平均求出,并在本构模型计算中用作有效应力。
这种计算模式下,体积力中不反映流体的出现:用户必须根据水位线以上或以下相应地指定干密度和湿密度。
使用命令print gp pp和priint zone pp可分别得到节点或单元孔压。
plot contour pp命令可绘出节点孔压云图。
2 渗流模式(使用config fluid)如果使用命令config fluid,则可进行瞬时渗流分析,孔压改变和潜水面的改变都可能出现。
在config fluid模式下,有效应力计算(静态孔压分布)和非排水计算均被执行。
除此之外,还可进行全耦合分析,这种情况下,孔压改变将使固体产生变形,同时体积应变反过来影响孔压的变化。
如果采用渗流模式,单元孔压仍由节点孔压平均求出。
但这种模式,用户只能指定干密度(不论是水位以上还是以下),因为FLAC3D 将流体的影响考虑到了体积力的计算中。
采用渗流模式时,渗流模型必须施加到单元上,使用命令modelfl_isotropic模拟各向同性渗流,model fl_anisotropic模拟各向异性渗流,model fl_null模拟非渗透物质。
注意,力学模型为空的单元并不代表渗流模型为空。
流体性质(参数)可施加到单元或节点上。
各向同性渗透率、孔隙率、比奥系数和非排水热系数等单元流体性质由命令property施加。
对于各向同性渗流,渗透率通过perm关键字赋予。
对各向异性渗流,渗透率的3个主值采用关键字k1,k2,k3赋予,主方向由关键字fdip,fdd,frot确定。
渗透率的主方向服从右手系统。
fdip和fdd分别为k1和k2确定的平面的倾向和倾角。
frot为k1轴和倾角矢量的旋转角。
如果不特别指定,比奥系数默认为1,孔隙率默认为0.5。
节点的渗流性质由命令initial指定。
这些性质包括流体重度、流体体积模量、比奥模量、流体抗拉强度和饱和度。
每种性质在空间上都可以变化。
流体重度也可以用water命令给出。
在渗流模式里,有必要知道可压缩性被定义在以下两种参数中:(1)比奥系数和比奥模量;(2)流体体积模量和孔隙率。
第一种参数表征的是固体颗粒的可压缩性(对不可压缩颗粒,比奥系数设为1)。
对第二种参数,固体颗粒被认为是不可压缩的。
单元属性可由命令print zone property显示,节点属性由print gp命令显示。
流体重度,如果随着水位位置被确定,则可由print water命令显示。
渗流性质可由命令plot bcontour property显示。
对于各向异性渗流,渗透率的各球形分量可通过使用单元的属性关键字kxx,kyy,kzz,kxy,kxz,kyz来显示(注意,这些球形分量不可被直接初始化)。
初始节点孔压分布的施加对于渗流模式和非渗流模式都是一样的(如,要么用initial pp命令或用water table命令)。
在指定节点可用命令fix pp或free pp对孔压固定或释放。
流体涌入或渗漏或可由命令apply施加。
渗流计算由命令set fluid和solve控制。
如,set fluid on或off命令开启或关闭渗流计算模式。
具体使用开启或关闭模式取决于渗流分析的耦合程度。
渗流分析结果以下面这些命令给出。
命令print gp pp和print zone pp 分别给出节点和单元孔压。
节点和单元孔压历史可由命令histroy gp pp和命令history zone pp进行监测。
对于瞬时计算,孔压与时间的关系可由命令history fltime监测。
命令plot contour pp绘出节点孔压云图。
命令plot contour saturation绘出饱和度云图。
命令plot fluid 绘出流量矢量图。
渗流模式的所有信息由命令print fluid命令给出。
FISH还提供了一些渗流变量。
其中一个与节点有关的变量gp_flow,只能通过FISH函数使用。
该变量描述了通过节点的净流入或流出量。
因为可以提供一个系统总的流入或流出量,这些流量的统计在孔压固定的边界是很有用的。
渗流边界条件,初始条件FLAC3D默认为不透水边界,即认为所有节点上的孔压随着从邻近单元流入或流出的量发生自由变化。
可以使用命令fix pp将节点上的孔压设为“自由”,也可使用free pp使节点上的孔压“固定”。
如果孔压固定,流体可以在外边界上流入或流出节点。
下面总结这两种边界条件的影响:1,孔压自由这是默认的不透水边界条件。
节点与外界之间不发生流量交换。
系统根据当前饱和度值和流体是否形成涡凹现象来计算压力和饱和度变化。
2,孔压固定这是一种流体通过外界流入或流出的边界条件。
如果设定孔压为0,饱和度才可能变化。
否则,饱和度被设为1(FLAC3D假设孔压只在完全饱和材料中存在)。
孔压不能被固定在低于拉力极限的值,如果出现这种情况,FLAC3D会将其设定到拉力极限值。
如前所述,边界条件不是任意的。
FLAC3D在进行计算前会“检查”并“修正”这些条件。
可使用fix pp命令将孔压固定在某个值,也可在外边界或内边界上使用命令apply pp。
如果边界条件被用于一个非表面节点,则必须加关键字interior。
apply命令具有可以用“历史”命令进行监测的优点。
渗流边界条件可以通过apply命令用在单个或部分节点、单元面或单元上。
命令apply pwell为边界节点指定了一个流入或流出井。
如果加上interior关键字,则该条件用于内部节点。
命令apply discharge 和apply leakage为边界单元的表面分别指定了涌出和渗漏边界条件。
命令apply vwell为指定区域内的单元提供一个流速。
这些边界条件除了apply leakage外,均可使用history监测命令。
具有固定孔压节点就好像是流入源或流出源。
没有直接的命令显示这些节点的流入或流出量。
但可通过FISH变量gp_flow来记录。
孔压的初始分布,孔隙率,饱和度和流体属性可通过命令initial或property施加。
如果还加了重力,则孔压初始分布应与重力梯度,水的重度和节点饱和度和孔隙率相容。
如果这些初始分布不相容,则计算开始时所有单元中将出现流体流动。
因此,应在模拟开始时设一定的计算步来检验初始条件是否相容。
如果模型中含有接触面,有效应力将沿着这些接触面进行初始化(即:在节点应力初始化时,认为接触面应力包含孔压)。
water lable命令将包含沿着接触面的孔压,这是因为定义在单元节点上的孔压也在接触面节点上。
如果接触面的上下两面连在一起,在没有阻力时,将发生穿越接触面的流体流动。
但程序不对沿着接触面的流体流动(裂隙流)进行计算。
单渗流与渗流耦合问题FLAC3D既能进行单渗流分析,也能进行固流耦合分析。
耦合分析可由FLAC3D内置力学模型完成。
但要注意,渗流模型中的空单元并不是力学空单元。
必须用命令model fl_null给单元赋予流体空属性。
对于耦合过程,FLAC3D提供了几种计算模式。
其中之一是假设孔压一旦被赋予便不再改变。
该方法并不要求任何额外空间存储计算过程。
除此之外涉及到渗流的计算模式都要求使用命令config fluid。
命令model fl_iso使所有单元中都能发生渗流。
不同的耦合计算模式在下面讨论。
一般情况下,在能跟所模拟问题的物理过程相似的情况下,应使用尽可能简单的模式。
计算模式的选择根据以下几个方面确定。
时间比例对所需模拟的渗流或耦合问题用FLAC3D估计与涉及的不同进程相关的时间比例是非常有用的。
对有关研究问题的时间度量和扩散性的认识有助于估计最大网格宽度、最小区域尺寸、时步大小和计算可行性。
如果不同进程的时间比例相差太大,则很可能采用一种简单的(非耦合)方法。
时间比例可用特征时间给出。
以下这些由量纲分析得出的定义,都是基于解析的连续源理论表达式。
它们可用于得出FLAC3D分析的大致时间比例。
力学过程特征时间、流体扩散过程特征时间流体扩散率FLAC3D中使用了取决于控制过程的储水系数的几种形式:流体存储系数、地下潜水相存储系数、弹性存储系数以上定义,有几点特性值得注意:(1)因为FLAC3D中显式的时步对应于最小区域中信息从一个节点传到下一节点所需要的时间,时步的大小可用计算特征时间公式中特征长度的最小区域来估计。
重要的是注意FLAC3D中在用流体扩散率(即使是在耦合模拟中)计算显式流体时步。
因此,时步的大小可用特征长度的最小区域尺寸来估计。
(2)在饱和流体问题中,简化的体积模量不但导致时步的增加,同样导致到达稳定状态时间的增加,所以总步数增加,该总步数可用模型和最小区域的特征长度来估计。
(3)在部分饱和流体流动问题中,可通过调整流体体积模量加速收敛以趋于稳定状态,但要注意不可将体积模量减小太多以至产生数值不稳定。
数值稳定条件能由流体储量在一个特征长度区域的高度上必须保持低于地下潜水储量的要求推导而出。
(4)为避免扩散问题中的边界效应,模型的特征长度必须大于某个尺度。
同样,最小模拟时间由某个关系式控制。
(5)在耦合流体问题中,实际扩散率由流体刚度与岩土介质的刚度比来控制。
完全耦合模拟方法的选择用FLAC3D进行完全耦合的准静态固流耦合分析通常要耗费大量时间,且有时候并不必要。
很多情况下,可使用不同程度的非耦合方法简化分析并加快计算速度。
下面的例子给出了对应于流固耦合的不同水平的FLAC3D模拟方法。
选择计算方法时有3个主要的因素需要考虑:(1)模拟时间比例和扩散过程的特征时间;(2)耦合过程中强制扰动特性;(3)流固刚度比。
时间比例首先通过从扰动的开始阶段计算时间来考虑时间比例因素。
定义分析所需要的时间(模拟时间),对应于耦合扩散过程的特征时间。
短期行为(不排水)如果对应于耦合扩散特征时间,分析所需时间非常短,在模拟结果中流体流动的影响几乎可以忽略不计,则可采用不排水模拟(config fluied,set fluid off)。