使用该命令,可以在模型内部施加力、加速度、热源、井等。案例代码如下,命令运行结果见图1。
model new
zone create brick size 6 6 6 group 'Top'
zone split
zone group 'Bottom' range position-z 0 3
zone cmodel assign elastic
zone property bulk 1e9 shear 5e8
;在z=3处的所有网格点施加大小为1000N,方向为负z方向的力
zone gridpoint fix force-applied-z -1e3 range position-z 3.0
用这个命令流最常见的警告就是"No apply conditions created"(见图2),这句话翻译过来就是你想apply的东西没有apply上,意思就是该命令没起作用。
model new
zone create brick size 6 6 6 group 'Top'
zone split
zone group 'Bottom' range position-z 0 3
zone cmodel assign elastic
zone property bulk 1e9 shear 5e8
;在z=3处建立一个名为Load的面
zone face group 'load' internal range group 'Bottom' group 'Top'
;在load上施加大小为1000Pa,方向为负z的应力
zone face apply stress-zz -1e3 range group 'load'
model cycle 0
为了解决这一问题,我们采用说明书内置的一种方法——先对上部模型赋予null本构,然后使用zone face apply命令施加荷载,最后再对上部模型赋予非空本构即可,详见命令流,运行结果见图4。
model new
zone create brick size 6 6 6 group 'Top'
zone split
zone group 'Bottom' range position-z 0 3
zone cmodel assign elastic
zone property bulk 1e9 shear 5e8
zone face group 'load' internal range group 'Bottom' group 'Top'
zone cmodel assign null range group 'Top'
zone face apply stress-zz -1e3 range group 'load'
zone cmodel assign elastic range group 'Top'
zone property bulk 1e9 shear 5e8
model cycle 0
图4 zone face apply施加内部荷载运行结果
2. 面荷载换算规则
在load面上施加大小为1000Pa的z向应力,图4中的运行结果显示施加在网格点上的最大矢量值为250,这是为什么呢?这个250的单位应该是什么呢,是N还是Pa?要理清楚这两个问题,就需要明白面荷载的换算规则。
(1)对于该模型而言,其尺寸为6m×6m×6m,每一边共12个格子,那么每个格子的边长即为0.5m,则一个小格子的单表面积As=0.5*0.5=0.25m^2。
(2)在一个面上施加一个均布的应力,则表示在这个面上的每一寸都作用有这个均布应力,因此在面load上的每一个小格子上都作用有1000Pa的应力S。
(3)那么一个小格子上面的力F=S*As=1000*0.25=250N,一个小格子由四个网格点构成,因此每一个网格点所分配的力即为F’=F/4=62.5N。
(4)对于一个网格点,其最终分配到的力的大小与其被几个小格子共用有关,被n个小格子共用,则分配的力大小为n*F'。
我们查看角点的矢量值大小,见下图,由图可知,对于单个网格点,其分配的力为62.5N,与手算结果一致。而对于非角点部位的网格点,要么处于两个格子的交界处,要么处于四个格子的交界处,此时矢量的大小相应为62.5*2=125N与62.5*4=250N,见图6~图7。
3 小结