无论是在前处理还是求解器层面梁单元 都比上一讲介绍的杆单元 复杂。
杆单元只需要定义材料、截面面积和扭转常数。
但梁单元必须定义材料、截面面积、扭转常数、截面惯性矩 、惯性积 、截面定位方向、节点偏置 、自由度释放 等参数。
在OptiStruct 中的梁又可以分为CBAR 各CBEAM 两种,CBAR是简单梁,CBEAM是复杂梁。
两者的主要区别如下 ⬇
1. CBAR单元只支持一个截面,即不能模拟变截面梁。
2. CBAR单元的剪切中心与中性轴重合,即截面形状必须是轴对称的,常见的比如L型标准截面梁和汽车的A柱B柱等非标准截面梁都是非对称的,必须采用CBEAM。
CBAR和CBEAM的卡片如下 ⬇
CBEAM还有一些可选的卡片项
用户可以分别为偏置和定位矢量选择坐标系
梁单元的单元坐标系如下图所示 ⬇
上图中:GA和GB是模型中的节点,根据偏置值得到最终计算使用的梁单元节点位置End A和End B。
梁单元的单元坐标系按照以下方法确定 ⬇
x轴方向为End A指向End B
xy平面由x轴以及用户输入矢量v确定,v矢量有多种输入方式(目的都是定义一个矢量方向)
z轴方向根据x,y轴方向使用右手定则(叉乘)确定
创建梁单元并赋予对应的属性后HyperMesh 可以实时显示单元的3D形状、方位、偏置等信息。一般而言,只要梁单元3D显示和实体几何完全一致,模型就建对了。简单点说—所见即所得。
打开3D显示前的梁单元可能是这样显示的 ⬇
打开工具栏上的下面这个图标后,梁单元瞬间就变成3D了。
梁单元创建的主要界面在1D > bars面板,但是也可以通过其它方法直接得到梁单元:
本例中的CBEAM(梁)单元截面完全在梁单元以外。原因是CBEAM单元默认在剪切中心创建,而HAT截面的剪切中心刚好位于几何以外。
在实际建模时需要设定合理的偏置(offset)值才能使截面3D显示和几何重合从而使计算准确,本文的视频中有操作演示。
梁单元和杆单元等1D单元一样,都可以通过节点、曲线、2D单元、3D单元等创建。
HyperMesh中有很多创建曲线的方法,例如要从曲面上直接长出一些法向曲线 ⬇
只需要在lines面板的Normal From Geometry按钮(子面板)直接创建
结果如下:
接下来我们用一个梯子的模型来演示。
原始模型只有几条几何曲线 ⬇
完成后的模型(局部)如下 ⬇
这里可以选择PABAL或者PBAR,区别是PABAL可以直接为尺寸优化提供优化的设计变量。
结果如下 ⬇
为了和shortbeam的节点融合,需要使用shortbeam中的节点进行下一步的梁单元创建。
先使用nodes面板在longbeam的线端点各创建一个点
然后在linemesh进行1D网格划分,
局部结果如下 ⬇
结果如下 ⬇
(也就是把原先共节点的2D单元变成不共节点,结果是在原先的每个节点处为每个单元都复制出了一个节点)
工具位于面板区Tools > edges
然后点击equivalence按钮进行节点合并
工具位于Tool > check elems,点击duplicates后会显示重复的1D单元。
注意到除了瓶口位置外的所有1D单元都有重复。
点击上述面板的save failed进行保存。
这里只需要再次点击elems后选中retrieve即可全部选中刚才保存的那些重复单元,然后点击右侧的delete entity按钮完成删除。
实际上以上操作也完全可以在3D单元上进行。
(请参考如下视频 ⬇)
另外,在航空工具里面提供了一个更加高级的工具可以沿着2D模型的不同方向直接生成带不同截面的梁单元。
里面有圆柱坐标系、2D单元、几何
设置如下 ⬇
得到的梁单元如下 ⬇
有部分截面的显示方向不一致,原因是这些梁单元的n1和n2的顺序反了,需要调整一下。
脚本内容如下 ⬇
tcl文件下载链接 https://pan.baidu.com/s/1gpPxbL9O8undJHw7EzV9hA
运行脚本后会要求选择需要调整方向的梁单元
运行结果如下 ⬇
梁单元网格也可以通过杆单元模型直接转换得到。比如上一讲中的C60杆单元模型。
结果如下 ⬇
创建梁的材料,截面和属性。
Direction node选中球心位置的一个节点
点击update后选中如下选项
结果如下:
✴ 一般而言梁单元的计算精度比同等尺度的体单元更高,可以使用比2D/3D单元更大的单元尺寸,但是如果需要梁单元也是可以细化的。
在上一讲已经介绍了RBE2与RBE3相互转换的方法,所以这里只需要考虑RBE2与梁单元之间的转换
不过这里没有什么软件界面可以介绍的,直接运行下面的脚本可以完成转换
tcl文件下载链接 https://pan.baidu.com/s/1wRlpUso6-SqymTxB3iBUgw
效果如下 ⬇
开始时是6个可爱的RBE2单元小球球
运行脚本后放大看都变成了梁单元