FLAC 3D 做单轴压缩遇到的问题请教和交流
最近在学习FLAC3D,自己算了一下《FLAC 3D实用教程》(彭文斌版)的例子7-1、7-2和8-1,遇到一些问题,现提出来和大家一起交流一下,有些问题望高手们能给解释说明一下。① 做单轴压缩时应力应变曲线的做法问题。
例子7-1和7-2,直接采用的是用圆柱体中心单元和中心表面单元的竖向应力与底面中心点位移的比值,从结果看很明显两条曲线还是有较大的区别,且计算的结果图中应力单位都是10-6Pa,很明显不对。而我通过更改模型的网格划分发现,一旦更改尺寸用这种方法得出的结果会出现很大问题。例子8-2采用的是底面节点竖向力之和除以底面面积得到应力,底面中心节点竖向位移为位移,这个的效果比7-1和7-2的效果要好一些。
② 采用8-1计算时候本构关系选择中出现的问题。
将例子8-1中的model ss 改成弹性模型,得到的应力应变图如下,采用mohr模型时遇到一个问题。改变c值的大小对强度,也就是应力最高点的影响不大,改变体积模量和剪切模量时影响较大,按道理来说,体积模量和剪切模量只是弹性阶段的参数,真正影响强度的应该是摩擦角和c,有没有高手能够给解答一下。
后面两个图是弹性模量和体积模量相差一个数量级时的曲线图。
③ 例子8-1给出的塑性区应变大于0.2的单元体,意思是说岩石破裂的样子吗?那为什么取的是0.2?还有那个切应变率等值线图是什么意思?
下面附上例子8-1的程序,有改动,高手帮忙看看
new
gen zone cyl p0 0 0 0 p1 1 0 0 p2 0 4 0 p3 0 0 1 size 18 40 18
gen zone reflect norm 1,0,0
gen zone reflect norm 0,0,1
plo blo gro
model mohr
prop bulk 1.19e9 shear 1.1e10
prop coh 2.72e6 fric 44 ten 2e5
fix x y z range y -0.05 0.05
fix x y z range y 3.95 4.05
ini yvel 2.5e-5 range y -0.05 0.05
ini yvel -2.5e-5 range y 3.95 4.05
def ax_str
str = 0
pnt = gp_head
loop while pnt # null
if gp_ypos(pnt) < 0.05 then
str = str + gp_yfunbal(pnt)
endif
pnt = gp_next(pnt)
endloop
ax_str = str / pi ; cylinder radius = 1
end
hist n 1
hist gp ydisp 0,0,0
hist ax_str
plo his -2 vs 1
step 5000
我也遇到类似的问题,同样的参数,改变一下模型尺寸或者改变一下划分的网格粗密程度,结构都会改变,最后我发觉数值计算这个东西根本不可靠 其实彭文斌书中所给例子并不是严谨的单轴试验代码,代码中的加载速率就是错的,初始化ini加载就像是拿拍子拍了一下,而实际实验中应该用apply,是持续恒定速率或者梯度压强进行加载的,两者有本质区别,所以结果就完全不一样,而后岩样的固定形式也是应该细化一下,还有岩样中的轴力提取,应该是截面上轴向应力的和,与加载速率的对比就是应力应变曲线了。:lol:lol:lol:lol:lol:lol:lol
zhigang4 发表于 2016-2-24 09:32
其实彭文斌书中所给例子并不是严谨的单轴试验代码,代码中的加载速率就是错的,初始化ini加载就像是拿拍子 ...
能不能详述apply 与initial 的区别? 这个问题我也发现了,究竟是怎么解决的呢? 我觉得,改变c 等值,更多的是改变峰后的应力演变状态吧
而弹模、泊松比肯定与峰值强度相关的。 请问楼主大神,为什么采用摩尔库伦模型的时候模拟三轴压缩采用例8-2的提取方法还是有软化呢?谢谢楼主。 zhigang4 发表于 2016-2-24 09:32
其实彭文斌书中所给例子并不是严谨的单轴试验代码,代码中的加载速率就是错的,初始化ini加载就像是拿拍子 ...
大神有没类似的命令流分享下 不知道楼主解决没有,我也遇到了相同问题,我的理解是这个应力应变曲线是软件计算过程产生的,这个过程中,根本没有到达静力平衡状态,换句话说这个结果只是数值计算的过程量而已。
这种速度加载方式应该是正确的,flac内置的例子就是这个方法,fix只是使速度恒定不变,fix和ini合用就把指定区域内的速度设置为恒定值了,可以用hist去验证。
页:
[1]