找回密码
 注册
Simdroid-非首页
查看: 193|回复: 10

[工程实例] 一个掘进施工的代码,关于接触面求教

[复制链接]
发表于 2012-9-28 10:49:31 | 显示全部楼层 |阅读模式 来自 上海长宁区
本帖最后由 xxxinggg 于 2012-10-8 14:44 编辑

我现在做的这个模型,是一个小的管节推进,就是这个管节前有一个小的掘进挖土机,一边挖,然后后面的小管节一边推,小管节是钢筋砼材料。我在建模时,掘进挖土机就省略了,直接就建立了一个管节,然后通过model null来挖土。
然后,管节与土之间应该建立接触面,但是现在我有几个问题一直没弄清:
1,接触面究竟是应该建立在管节上还是建立在周围土体上?
2,开挖的时候,我每次是model null 一个0.5的小土块单元,然后管节ini y add 0.5 ,这样可以吗?
3,我最后的结果(见图3),管节上方和管节下方出现了很大的向上的位移,而不是沉降,这个让我很头疼,请问有没有什么建议?
附代码:
建立土体代码略去
下面是掘进施工的代码

new
rest ini.sav
plo con zdis ou on magf 1
;plo add int
;====初始化====
ini xdisp=0.0 ydisp=0.0 zdisp=0
ini xvel=0.0 yvel=0.0 zvel=0.0
sel node ini xdisp=0.0 ydisp=0.0 zdisp=0.0
sel node ini xvel=0.0 yvel=0.0 zvel=0.0
ini state=0  
;====以下便开始掘进施工,每次土体挖一小块,管节就用后面的千斤顶推进去,当然我是直接让他移动了,不是用推力让他向前
;====1-exca:通道22====
def gen_tube; 分别建立每一条管节
i=2
j=2
  p0x=1.53*(j-1)
  p0x_a=p0x+0.17
  p0x_b=p0x+1.36
  p1x=1.53*j
  p0z=1.53*(i-1)
  p0z_a=p0z+0.17
  p0z_b=p0z+1.36
  p1z=1.53*i
  tube_number='tube'+string(i)+string(j)
  n=10*i+j
  command
        gen zone brick p0 p0x   -15 p0z   p1 p1x   -15 p0z    p2 p0x   -5.000   p0z   p3 p0x    -15 p0z_a size 9 20 1 group tube_number
        gen zone brick p0 p0x   -15 p0z_b p1 p1x   -15 p0z_b  p2 p0x   -5.000   p0z_b p3 p0x    -15 p1z   size 9 20 1 group tube_number
        gen zone brick p0 p0x   -15 p0z_a p1 p0x_a -15 p0z_a  p2 p0x   -5.000   p0z_a p3 p0x    -15 p0z_b size 1 20 7 group tube_number
        gen zone brick p0 p0x_b -15 p0z_a p1 p1x   -15 p0z_a  p2 p0x_b -5.000   p0z_a p3 p0x_b  -15 p0z_b size 1 20 7 group tube_number
  gen separate tube_number
  attach face range x p0x p1x y -15 -5 z 0.16 0.18
  attach face range x p0x p1x y -15 -5 z 1.35 1.37
  interface n face range group tube_number
     interface n prop kn 2e7 ks 2e7 coh 15e4 fric 15 ten 15e4
  fix z range y -15 -0.1 z p0z
  endcommand
end
gen_tube; 管节建立完毕,初始约束为底面的z向约束
set grav 10

def exca_begin1  ;定义掘进开挖
    command
    model elas range group tube22  ;首先设置好管节的弹性参数
ini dens 7850 range group tube22
prop bu 1.743e11 sh 8.077e10 range group tube22
model null range x 1.53 3.06 y 0 0.5 z 1.53 3.06   ;第一步开挖,只有0.5m长
ini y add 5.5 range group tube22 ;把管节送进去
    attach face
gen separate tube22;如果不用这两步,第一次管节送进去与土接触时,上面的土就会弹开(为什么。。),见图3
solve ratio 1.0e-4
    endcommand
loop k(2,20)
    exca='exca_stage'+'22'+string(k)
kkk=k*0.5
kkk_=kkk-0.5
command
model null range exca
ini y add 0.5 range group tube22
pause
    attach face
gen separate tube22 ;同样用了这样的办法,但是已经报错了,土体都被粘起来了,如图4,图5,所以这个就是我一直纠结的点,求指教。。。
solve ratio 1.0e-4
endcommand
endloop
command
free z range group tube22
solve ratio 1.0e-4 ;管节全部送入之后,再将其z向约束去除,计算一下实际应力
endcommand
end
exca_begin1
save tube22_kongwa.sav
set log off

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
发表于 2012-10-1 21:45:55 | 显示全部楼层 来自 河北秦皇岛
Simdroid开发平台
接触面应该是建立在土体上的,没错。你应该至少把计算分析的过程说一下。要不然也不知道你这结果到底是什么原因啊
回复 不支持

使用道具 举报

发表于 2012-10-8 22:41:17 | 显示全部楼层 来自 山东潍坊
这种方法我曾经考虑过,但是出现接触处变形过大或网格破坏的情况,由于时间紧就放弃了。我觉得这个可能就是因为界面两边的材料刚度相差太大,导致应力出现不平衡,所以软的一边会变形过大。
回复 不支持

使用道具 举报

 楼主| 发表于 2012-10-9 15:00:41 | 显示全部楼层 来自 上海长宁区
wqq8889 发表于 2012-10-8 22:41
这种方法我曾经考虑过,但是出现接触处变形过大或网格破坏的情况,由于时间紧就放弃了。我觉得这个可能就是 ...

那你后来是怎么处理的?
回复 不支持

使用道具 举报

发表于 2012-10-9 21:11:21 | 显示全部楼层 来自 山东潍坊
在里面一段一段生成,而不是从外面推进去
回复 不支持

使用道具 举报

发表于 2012-10-9 21:14:46 | 显示全部楼层 来自 山东潍坊
还有,你用model null 来开挖的话往里推是肯定不对的。因为model null 不删除网格,只是把网格参数赋很小的值使它计算时不起作用罢了,这样你推的时候网格会被挤压,可能你的结果跟这个也有关。要删除网格用delete命令。
回复 不支持

使用道具 举报

 楼主| 发表于 2012-10-12 16:17:28 | 显示全部楼层 来自 上海长宁区
wqq8889 发表于 2012-10-9 21:11
在里面一段一段生成,而不是从外面推进去

谢谢指教,我现在也是用这个办法了。
然后关于接触面,我后来发现,接触面两侧的材料,如果网格大小不一的话,那么是没办法让材料发生滑动的,甚至用gen separate去分也分不开。后来我把土体模型进一步网格缩小,缩小到和管节一模一样,管节在滑动过程中终于不会再拖动土体,但是这样建模,土体单元数太多,计算太慢了,所以只能放弃。
回复 不支持

使用道具 举报

发表于 2012-10-16 09:50:06 | 显示全部楼层 来自 武汉大学
请问楼主,你的接触面参数是如何取的呢
回复 不支持

使用道具 举报

 楼主| 发表于 2012-10-16 15:03:20 | 显示全部楼层 来自 上海长宁区
本帖最后由 xxxinggg 于 2012-10-16 15:06 编辑
fannie90 发表于 2012-10-16 09:50
请问楼主,你的接触面参数是如何取的呢


[img]接触面参数,根据手册,根据周边最硬的相邻区域等效刚度的10倍:ks=kn=10max[(K+4/3G)/Zmin]
然后接触面的粘聚力和摩擦角就取周边土的参数,乘以0.7的系数。
回复 不支持

使用道具 举报

发表于 2012-11-10 15:34:26 | 显示全部楼层 来自 武汉大学
xxxinggg 发表于 2012-10-16 15:03
接触面参数,根据手册,根据周边最硬的相邻区域等效刚度的10倍:ks=kn=10max[(K+4/3G)/Zmin]
然后接触面 ...

嗯,谢谢回复,这个我已经搞清楚了
回复 不支持

使用道具 举报

发表于 2012-11-22 11:10:28 | 显示全部楼层 来自 上海
我感觉要不要考虑应力释放的问题!!
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Simapps系列直播

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-9-24 12:20 , Processed in 0.039781 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表