ABAQUS在inp里添加弹簧单元全过程.docx
《ABAQUS在inp里添加弹簧单元全过程.docx》由会员分享,可在线阅读,更多相关《ABAQUS在inp里添加弹簧单元全过程.docx(4页珍藏版)》请在冰豆网上搜索。
![ABAQUS在inp里添加弹簧单元全过程.docx](https://file1.bdocx.com/fileroot1/2022-10/30/534ad91a-df7a-4b57-98f0-70e9e51ac7d7/534ad91a-df7a-4b57-98f0-70e9e51ac7d71.gif)
模拟钢筋混凝土粘结滑移,以我现在的水平来看,大概有三个思路,一个是用cohesive,一个是用Spring2弹簧单元,再有就是Umat了。
我先学习的是弹簧单元。
ABAQUS里有三种弹簧单元,Spring1,Spring2和SpringA。
其中,ABAQUS文档的解释如下:
Spring2有两个节点,每个节点只有一个自由度。
钢筋采用Wire建模,Truss单元,混凝土实体单元。
mesh之后会出节点,所以尽量mesh成相同的节点,用钢筋和混凝土重合的节点,在三个方向分别建立弹簧。
垂直于钢筋纵向的两个弹簧设置成刚度较大,弹性。
沿钢筋方向的弹簧,需要确定粘结滑移本构,定义力和滑移位移的关系。
对比一下:
Spring1是弹性的,只有一个节点,而SpringA的作用是沿两点连线的,每个点有三个自由度。
线形的弹簧单元可以在Interaction模块里,找到Special里面添加,非线性的就只能的通过修改inp文件了。
内容添加Assembly里,我的习惯是写在EndAssembly前一行。
对于添加内容,大概有两部分,一部分是对节点的定义,另一部分是对力-位移曲线的定义。
两者是分开的,通过elset识别。
elset是Elementset的意思,就是定义一个单元集合,名字根据在abaqus里添加线性弹簧单元所生成的inp来看,是集合名字后边跟"-spring"。
type=Spring2是固定格式,
这句后边是节点编号,如下图。
值得注意的是,Instance名是Part名后边跟编号形成的(如“-1”),如果Part的名字有空格,就需要加引号了。
如下图
最左边一列的数字是单元的编号,从1开始,顺着排下去就行。
中间和右边两列是单元的节点,Wire-1是Instance的名字。
查看单元编号和节点编号,在View--PartDisplayOptions里,在mesh一栏分别勾选Shownodelabels和Showelementlabels。
在mesh模块的视图里就可以显示了。
实体名称和对应的节点编号之间用“.”连接。
线性弹簧,一般给个大刚度就好,用于定义型钢和混凝土接触面发现法向的接触。
非线性弹簧,根据粘结滑移本构得来。
关于粘结滑移本构,公式很多,相差也非常大,这里因为规范给出的最好算,还是采取用规范的值。
对于型钢混凝土,建议看看杨勇的论文。
得到切向的应力之后,再根据网格的划分,确定了每个单元的钢筋的长度之后,可以得到F。
就是应力乘以面积。
*Spring,elset=X-Spring(非线性的Spring2,多一个Nonlinear,这个是很多教程都是这么说的,我测试后发现,去掉之后也没有关系)。
之后定义弹簧的方向,X轴方向为1,1;Y轴方向为2.2;Z轴方向为3,3。
两个数字中,第一个数字的含义是节点1沿着1轴(即X轴)运动,第二个数字的含义是节点2沿着1轴(即X轴)方向运动;F=kX,X就是两点在1轴方向运动的位移差。
如果前后数字不同,我理解的,就是向量的加减了。
这些定义好之后,inp就可以计算了。
我这边有一个完整的inp文件,类似于型钢混凝土的小练习,有需要看这个inp的,在回复中留下邮箱,我会发送到邮箱里。
大多数教程讲到这里就没有然后了。
后边的一些东西,我感觉还是挺关键的。
两点,一个是inp文件做好后,不要导入abaqus再计算,因为abaqus识别不了;二是直接在job里提交inp的方法。
打开abaqus,不用新建任何项目,直接到job模块,新建一个job,点集creat之后,Source选择InputFile,如下图:
如图所示,此时就可以计算了。
总结起来,用inp添加弹簧单元这个过程非常繁琐,工作量巨大,幸运的是,很多单元节点是有规律的,这样,这个过程以后可以靠程序来实现。