FLAC3D:[1]壳单元

2025-10-18 19:32:10

1、先看一下这个命令行。

new

def set_vals

ptA = 25.0 * sin( 40.0*degrad )

ptB = 25.0 * cos( 40.0*degrad )

end

set_vals

gen zone cylinder p0=( 0.0, 0.0, 0.0 ) &     

p1=( ptA, 0.0, ptB ) &

p2=( 0.0, 25.0, 0.0 ) &

p3=( 0.0, 0.0, 25.0 ) &

p4=( ptA, 25.0, ptB ) &

p5=( 0.0, 25.0, 25.0 ) &

size=(1, 2, 2)

sel shell id=5 range cylinder end1=(0.0, 0.0,0.0) &

end2=(0.0,25.0,0.0) radius=24.5 not

delete ; delete all zones

plot add sel geom black black cid on scale=0.03

sel node init zpos add -25.0

把它保存为txt文件,让后通过File--Call,找到相应的文件。

然后输入 plo sel geom

进行结构单元的显示,效果如图。

FLAC3D:[1]壳单元

2、def set_vals

ptA = 25.0 * sin( 40.0*degrad )

ptB = 25.0 * cos( 40.0*degrad )

end

set_vals

如果你还没有学习Fish语言话,上面的几行语句就不用管了。只需明白

这里令ptA=16.07

           ptB=20.98

就可以了。

3、gen zone cylinder p0=( 0.0, 0.0, 0.0 ) &     

p1=( ptA, 0.0, ptB ) &

p2=( 0.0, 25.0, 0.0 ) &

p3=( 0.0, 0.0, 25.0 ) &

p4=( ptA, 25.0, ptB ) &

p5=( 0.0, 25.0, 25.0 ) &

size=(1, 2, 2)

这些语句生成圆柱体(cylinder)的一部分。

关于cylinder的创建方法,参见下图。

FLAC3D:[1]壳单元

4、sel shell id=5 range cylinder end1=(0.0, 0.0,0.0) &

end2=(0.0,25.0,0.0) radius=24.5 not

 这一句是本节的关键。

注意,

sel shell 命令就是生成壳单元的命令。(这个作用类似于生成单元体时,gen zone命令

如果需要限定壳(shell)的范围,用range命令就可。

限定的范围是以点(0,0,0)和(0,25,0)为两端界面中心,半径为24.5的圆柱体 之外的部分。

not的作用就是把范围限定在圆柱体之外的部分。

由于圆柱体的半径为25,故以24.5以外的部分进行限定是合适的。

即,把壳限定在了外表面。壳单元依附于单元体(zone)的表面上

生成的壳体如下图所示。

我们发现,只有在外表面才有壳结构单元。

5、如果我们把range这个限定范围的语句去掉,会发生什么情况呢?

结果见下图。

我们发现,沿着所有单元体的外表面都生成了生成了壳单元。

FLAC3D:[1]壳单元

6、那么除了提供的 radius=24.5 可以生成外表面的壳单元外,其他的值是否可以呢?

下面是radius=18的结果。

我们看到,生成的壳单元完全一致。

FLAC3D:[1]壳单元

7、plot add sel geom black black cid on scale=0.03

plot add sel geom 是显示生成的壳单元

black black 可以将壳单元的颜色设置成黑色

cid on 打开壳单元各个部分的编号标示

scale=0.03 将显示比例设置成0.03

8、下一节我们将介绍如何在隧道断面上生成壳单元。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢