首页/文章/ 详情

不同插值方式下的单元变量值分析

4月前浏览237
本文首先建立了一个6*6*6的立方体,并在求解自重应力场的过程中对181号单元体在四种不同插值方式下的竖向应力值进行监测,命令流如下:
    ;modeling and assigning groupsmodel newzone create brick size  6 6 6 group 'brick'zone group 'hist' range position-x 0 1  position-y 0 1  position-z 5 6zone face skin ;assigning cmodel and propertieszone cmodel assign elasticzone prop bulk 1e9 shear 0.5e9 dens 1800;setting boundary conditionszone face apply velocity-normal 0 range group 'West' or 'East'zone face apply velocity-normal 0 range group 'South' or 'North'zone face apply velocity-normal 0 range group 'Bottom';setting history listshistory interval 1zone history name = 'def' stress-zz zoneid 181 zone history name = 'con' stress-zz zoneid 181 method constantzone history name = 'ave' stress-zz zoneid 181 method averagezone history name = 'idw' stress-zz zoneid 181 method i-d-wzone history name = 'poly' stress-zz zoneid 181 method polynomial;solving initial equilibriummodel gravity 9.81model solve;setting plot rangezone hide range group 'brick';getting hist valueshist list series 'def' begin 260hist list series 'con' begin 260hist list series 'ave' begin 260hist list series 'idw' begin 260hist list series 'poly' begin 260

    图1 模型分组图

    181号单元在不同插值方式下的竖向应力云图如下:

    图2 181号单元竖向应力云图(Constant)

    图3 181号单元竖向应力云图(Volumetric Averaging)

    图4 181号单元竖向应力云图(Inv. Distance Weighting)

    图5 181号单元竖向应力云图(Polynomial Extrapolation)

    自重应力场求解完成后,通过编写fish函数提取了181号单元在四种不同插值方式下的竖向应力值,同时采用zone.stress.zz()函数提取了181号单元的竖向应力值,命令流如下:

      ;getting values of stress-zzfish def z_szz    z = zone.find(181)    pos = zone.pos(z)    zone.field.name = 'stress-zz'    zone.field.method.name = 'constant'    szz_con = zone.field.get(pos)    zone.field.method.name = 'average'    szz_ave = zone.field.get(pos)    zone.field.method.name = 'i-d-w'    szz_idw = zone.field.get(pos)    zone.field.method.name = 'polynomial'    szz_poly = zone.field.get(pos)    szz_default = zone.stress.zz(z)end@z_szzlist @szz_conlist @szz_avelist @szz_idwlist @szz_polylist @szz_default

      181号单元的竖向应力监测值、fish提取值以及0.5倍云图上下限之和见下表:

      表1 181号单元竖向应力结果表

      History

      Fish

      0.5倍云图上下限之和

      Default

      -8.829491e3

      -8.829490903701801e3

      Constant

      -8.829491e3

      -8.829490903701801e3

      -8.8295e3

      Volumetric Averaging

      -1.324576e4

      -1.324576372109776e4

      -1.324575e4

      Inv. Distance Weighting

      -1.893555e4

      -1.893554502058338e4

      -1.90175e4

      Polynomial Extrapolation

      -8.830432e3

      -8.830431780820745e3

      -8.82947265e3

      由表可知,对于单元变量,在使用history命令时,若不使用method指定插值方式,则软件默认使用constant进行插值计算;zone.stress(pnt)函数默认使用constant进行插值计算(作者对部分zone函数进行了验证,得到了相同的结论)。另外,对于某一特定单元,作者认为单元变量值可取该单元云图上下限之和的0.5倍作为变量值。

      ======总结======

      1、在FLAC3D6.0中,采用history监测单元变量时,应依据后处理习惯指定插值方式,即云图显示中的插值方式应与history的插值方式对应;

      2、本文给出了提取不同插值方式下的单元变量值的fish模版;

      3、对于某一特定单元,可将单元变量值取为该单元云图上下限之和的0.5倍。

      来源:FLAC3D小技巧
      UMFLAC3D
      著作权归作者所有,欢迎分享,未经许可,不得转载
      首次发布时间:2023-12-26
      最近编辑:4月前
      FLAC3D小技巧
      硕士 专注FLAC3D中的小技巧分享...
      获赞 22粉丝 112文章 40课程 0
      点赞
      收藏
      未登录
      还没有评论

      课程
      培训
      服务
      行家

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