FLAC3D学习(SIMWE论坛君之枫整理) 10 90.1 p5 111.4 10 45.1 size 5 1 9 group 4
;interface 1 face rang plane norm 45,0,64.4 origin 47 5 90
interface 1 face range plane norm 45,0,64.4 origin 47 5 90 dist=0.1 ini z add -0.1 range group 4
gen zone brick p0 111.4 0 0 p1 128 0 0 p2 111.4 10 0 p3 111.4 0 45 & size 2 1 5 group 2 通过计算得到的xdisp云图
pl int yel sket
31
FLAC3D学习(SIMWE论坛君之枫整理)
问:为什么第一种方法要加 dist 0.1? 加入节理以后,这个例子就不能计算fos 了? 回答:你的第2种,把group2和group4删掉,这样造成的新的模型group2和group4有重复节点,这样是不正确的。方法是在一个实体的外表面全部都设置了接触面,就是可以将两个体完全分开。而你的这个接触问题,在坡脚的位置很难处理。只用把斜坡上的部分删掉,然后导入就可以了。
人为的把group1和group2之间的交界面上多出了节点,下图是两个group的节点图,是分开显示的,可以看到两个共同面上界面标号不同,这样是不对的。计算结果也同样是错误的。
16.call fishcall.fis总是会出错呢?老是给出error opening file,该怎么操作? 错误是:文件名为 fishcall.fis.txt(因为在记事本里这个txt的后缀是默认的)。修改方法是:将 fishcall.fis.txt里面的内容全部复制到新的记事本里,再按保存,保存时候将
32
FLAC3D学习(SIMWE论坛君之枫整理)
保存类型改为所有文件(*,*),这时你便可在文件名栏内输入 fishcall.fis,类型也就正确了 17.问题:
fix z range z -0.1 0.1
fix x range x -0.1 0.1 any x 1.9 2.1 any fix y range y -0.1 0.1 any y 1.9 2.1 any 和
fix z range z -0.1 0.1 fix x range x -0.1 0.1 fix x range 1.9 2.1 fix y range y -0.1 0.1 fix y range y 1.9 2.1
问:两者有区别吗?我感觉是一样的
回答:建一个模型,然后实验一下,然后用plot gpfixt看一下。 18. 得到初始应力的方法:
方法1、可以先给一些材料参数很大的值,进行初始求解,在计算之前再将材料参数设为正常值,即可。如在手册中给的第一个示例中就是这样做的。下面是例子,These are only initial values that are used during the development of gravitational stresses within the body. In effect, we are forcing the body to behave elastically during the development of the initial in-situ stress state.* This prevents any plastic yield during the initial loading phase of the analysis. Gen zone brick size 6 8 8 Mode mohr
Prop bulk 1e8 shear 0.3e8 fric 35
Prop cohesion 1e10 tens 1e10 ;注意在此这个值给的很大。 Init dens 1000 Set gravity 0 0 -10 Fix x range x -0.1 0.1 Fix x range x 5.9 6.1 Fix y range y -0.1 0.1 Fix y range y 7.9 8.1 Fix z range z -0.1 0.1 set mech force=50 solve
;---------------------- mode null --------------------- Prop coh 1e3 tens 1e3 ;改为正常值(在此例中我们故意给小值) Mode null range x 2 ,4 y 2 , 6 z 5, 10 Set large
33
FLAC3D学习(SIMWE论坛君之枫整理)
Ini xdis 0 ydis 0 zdis 0 ;清零,不影响结果,为画图方便。 Setp 2000 return
方法2:得到初始应力的一个不错办法是设为弹性模型,然后赋予地勘信息,so以后就ok了,得到初始应力了,再把相应的位移清零,下面就可以正式进入所分析的内容了。如上例还可以先设为弹性 (MODEL elastic),之后在开挖之前再设为 Mohr-Coulomb model, 就行。 19.关于初始应力的问题
Example 3.21 Initial stress state with gravitational gradient for example, a 20 m 20 m 20 m box of
homogeneous material at a depth of 200 m underground, with fixed base and stress boundaries onthe other sides.
gen zone brick size 10,10,10 p1 20,0,0 p2 0,20,0 p3 0,0,20 model mohr
prop bulk 5e9 shear 3e9 fric 35 ini density 2500 set gravity 0,0,-10 fix x y z range z -0.1 0.1 ini szz = -5.0e6 grad 0,0,2.5e4 ini sxx = -2.5e6 grad 0,0,1.25e4 ini syy = -2.5e6 grad 0,0,1.25e4 apply szz = -4.5e6 range z 19.9 20.1 apply szz = -5.0e6 range z -0.1 0.1
apply sxx = -2.5e6 grad 0,0,1.25e4 range x -0.1 0.1 apply sxx = -2.5e6 grad 0,0,1.25e4 range x 19.9 20.1 apply syy = -2.5e6 grad 0,0,1.25e4 range y -0.1 0.1 apply syy = -2.5e6 grad 0,0,1.25e4 range y 19.9 20.1
它的意思是通过ini szz来赋予初始地应力,但是为何又有set gravity 0,0,-10?这样不是重复了吗?
ini是模型的内力,set grav是外力施加对模型的作用力,没有外力怎么有内力?一般而言,这样是为了计算比较快,因为这样设置以后,此时几乎已经平衡,了,计算步较少了,变形也就很少了嘛,当然最好再在以后计算时初始化位移为0,但初始化位移与否(在这种情况下),并不会明显影响计算结果的.当然还有另一种方法就是开始时设成弹性的(model elas)(或者还是mohr的但参数给的要大一些,目的是防止破坏),直接运行到平衡达来获取初始应力值,在真正计算时再改成mohr并将参数改为真实的数值,这种方法更适合于单元不太多,因为比较简单.但如果单元数目很多的话,那么此种方法速度会很慢的. 关于初始地应力及其算法,有两个疑问: 1)为何一定要让模型达到初始平衡再进行计算?
2.)那种改大参数,让模型在自重下平衡得到初始应力场的做法中,要将哪些参数改大呢?
34
FLAC3D学习(SIMWE论坛君之枫整理) bul she coh ?还是改其他哪几个? 回答:
1)这是模拟多数现场施工前的实际情况,并非总是如此,例如土钉墙施工,如果开挖后立即加土钉,就无须先平衡再加土钉再SOLVE.
2) 取决于具体模型,核心思想是用该模型在此阶段模拟弹性模型.对于MOHR-COULOMB模型, 这样做(将COHESION,TENSION设置很大的值)与SOLVE ELASTIC是等价的.但对于别的模型,SOLVE LASTIC并不适用,最好用改变参数的方法来加快计算速度和防止屈服.另外一点: 在FLAC/FLAC3D中, SET命令作用于整个网格(赋值全局变量),INI则初始化指定范围内网格点/域的偏移量.初始应力不仅仅是重力引起的。它还包括土压力,水浮力,上方建筑物的力,这些信息的勘测一般都不容易获得。通常可以把模型材料设为弹性,再把两个模量设到很大solve后再把模量和材料还原可得。具体可以看以前关于初始应力的帖子。不只是这样的,set grav不是直接将力仅仅加在底层上,而是作用在上面,如果没有初始应力的话,地层就会有相应的变形直到地层变形和产生的力与之平衡。所以应当通过initial来初始化应力,而这个力与density相匹配。我是做地铁开挖的如果没有初始化的话地层在开挖前就有了沉降。这与实际不符合。设置重力的原因不是为了平衡减少程序计算步骤,而是因为如果未初始化应力的话,在set grav的时候,模型会在自重应力下发生应力变形。所以,初始化应力的原因是防止模型在自重应力下发生变形(我们认为地层自重变形已经发生,当然欠固结等现象是另外一回事)。其实就是让模型发生变形,然后把位移清零也可以的。有种方法,不少人也在用,就是为了得到初始应力值,先将材料参数放大到很大,获得初始值以后再恢复到正常参数。
20. Tension-p shear-p tension-n shear-n表示的含义
在计算的循环里面,每个循环中,每个zone都依据failure criterion处于不同的状态,shear 和tension分别表示因受剪和受拉而处于塑性状态.n表示now,p表示previous,即分别表示在现在和以前的循环当中处于塑性状态. 21. 有一个例子:
gen zone cyl p0 0 0 0 p1 1 0 0 p2 0 2 0 p3 0 0 1 size 4 5 4 gen zone reflect norm 1,0,0 gen zone reflect norm 0,0,1 model mohr
prop bulk 1.19e10 shear 1.1e10 prop coh 2.72e5 fric 44 ten 2e5 fix x y z range y -.1 .1 fix x y z range y 1.9 2.1 ini yvel 1e-7 range y -.1 .1 ini yvel -1e-7 range y 1.9 2.1 hist gp ydisp 0,0,0 hist zone syy 0,1,0 hist zone syy 1,1,0
35