首页/文章/ 详情

3DEC-FLAC3D模型中的动态波传播 (Dynamic Wave Propagation)

2月前浏览1828
1. 引言

了解动态波传播(Dynamic Wave Propagation)尤其是地震波的传播过程是岩土地震工程的一个重要任务,对于深部矿井的诱发地震控制、岩爆预测以及尾矿坝的稳定性分析具有非常重要的意义。下面的示例演示了 3DEC-FLAC3D 在一个简单的一维动态波传播问题上的耦合方案

2. 动态模块回顾

在创建模型之前,首先回顾3DEC和FLAC3D的动态模块。解决动态波传播问题需要使用动态模块(model config dynamic),当进行耦合分析时,可以打开或关闭动态功能(model dynamic active=on/off)。

FISH函数:
dynamic.active
dynamic.cycle

dynamic.safety.factor

dynamic.solve(STR)

dynamic.step

dynamic.time.total

dynamic.timestep

dynamic.timestep.given

dynamic.timestep.max

block.gp.mass.dynamic(BGP_PNT)

gp.dynamic.mul(GP_PNT)

gp.dynamic.timestep(GP_PNT)

zone.dynamic.mul(ZONE_PNT) [旧的格式gp_dynmul]

zone.dynamic.time.total(ZONE_PNT) [旧格式dytime]

zone.dynamic.timestep [旧格式dydt]

struct.node.dynamic.timestep(STRUCT_NODE_PNT)

Python函数:

itasca.zone.dynamic_time_total

itasca.zone.dynamic_timestep

itasca.zone.set_dynamic_time_total

itasca.zone.set_dynamic_timestep

3. 模型建立

创建一个 1x1x25米的FLAC3D模型,并在其上添加了一个 1x1x25米的3DEC块。材料性质均为弹性介质(zone cmodel assign elastic),然后对3DEC模型和FLAC3D模型分别定义耦合面,接着建立耦合,操作步骤与FLAC3D和3DEC之间的耦合】的描述完全相同。动态模拟的关键步骤是定义波型,在真实的分析中,可以导入地震波。

    zone face apply vel-x 1 fish wave range pos-z 0

    5. 讨论

    对边坡或大坝(包括尾矿坝)等地表结构的地震响应进行数值模拟时需要输入地震信号,地震输入通常由通过基底材料向上传播的平面波表示,而模型两侧的边界条件必须考虑在没有结构的情况下存在的自由场运动。大多数情况下,使用横向边界就可以,当然前提是边界应放置在足够远的距离上,以减少波的反射并实现自由场条件,如下图所示。在基底水平边界AC上施加地震剪切波,在垂直方向上沿AB和CD使用固定边界。边界的距离取决于土层的阻尼特性,当材料阻尼较高时,可以使用相对较小的距离;但是当材料阻尼较低时,边界距离会严重影响计算结果,小的边界距离会导致模型不切实际。

    另一种方法是强制执行自由场运动,使边界保留其非反射特性,适当吸收来自结构的向外波,这种方法最初用于连续有限体积程序NESSI。FLAC3D使用了这种算法,对主网格与自由场网格私信并行计算。值得说明的是,Itasca软件的自由场边界是向外扩展分离的,而Plaxis的自由场边界是向内扩展连续的。

    6. 代码

    本文使用的代码来自于最新发布的Itasca V9.00.166【Itasca软件 V9.00.166 新功能和改进】,主要目的是测试软件的新功能,例子本身没有什么实际意义。

      zone create brick size 1 1 25zone cmodel assign elasticzone prop density 1000 bulk 2e9 shear 1e9zone face apply vel-y 0zone face apply vel-z 0block create brick 0 1 0 1 25 50block zone gen edge 0.5block zone cmodel assign elasticblock zone prop density 1000 bulk 2e9 shear 1e9block gridpoint apply vel-y 0 range pos-z 25 50block gridpoint apply vel-z 0 range pos-z 25 50zone face group 'f3d_faces' range pos-z 25block gridpoint group '3dec_gps' range pos-z 25zone-block create zone-face-group 'f3d_faces' block-gp-group '3dec_gps'fish define wave  global freq  if mech.time > 1.0/freq    wave = 0.0  else    wave = 0.5 * (1.0-math.cos(2.0*math.pi*freq*mech.time))  endifend[freq = 40.0]zone face apply vel-x 1 fish wave range pos-z 0zone his name 'source' vel-x pos 0 0 0zone his name 'f3d' vel-x pos 0 0 20block his name '3dec' vel-x pos 0 0 30model his name 'time' dynamic time-totalmodel large-strain offmodel solve time 0.06

      来源:计算岩土力学
      ACTpython岩土FLAC3D3DEC材料控制PLAXIS
      著作权归作者所有,欢迎分享,未经许可,不得转载
      首次发布时间:2024-02-25
      最近编辑:2月前
      计算岩土力学
      传播岩土工程教育理念、工程分析...
      获赞 119粉丝 870文章 1721课程 0
      点赞
      收藏
      未登录
      还没有评论

      课程
      培训
      服务
      行家

      VIP会员 学习 福利任务 兑换礼品
      下载APP
      联系我们
      帮助与反馈