欢迎光临散文网 会员登陆 & 注册

Abaqus疑难杂症——Inp文件的正确食用方法

2021-10-22 22:38 作者:易木木响叮当  | 我要投稿

本期内容将详细讲解ABAQUS中INP文件的正确食用方法,涉及文件解读、语法讲解,有关INP文件自定义输出的内容将会在下篇内容中更新

以下内容转载木木的公众号:“易木木响叮当”,阅读完本期内容后感兴趣的话可以关注以下,最新内容会在公众号内第一时间更新。

INP文件是以.inp为后缀的文本文件,它包括了模型的全部数据信息,ABAQUS求解器分析的对象是INP文件,软件生成的.cae文件只是为了INP文件服务,在早期的有限元软件(MSC、PATRAN、FEMAP、ABAQUS等)版本中没有前处理器,用户只能通过编写INP文件来建模分析。

如果能够熟练掌握INP文件的语法以及用法,直接在文件中进行修改,或者在软件中修改关键词(Edit Keywords),要比在软件中修改的效率高很多,不仅如此还可以完成软件内所不支持的功能。如在INP文件内定义输出。

INP文件结构


每个完整的INP文件依次出现两部分数据:模型数据、历程数据。模型数据包括节点信息、单元信息、截面属性、材料特性、材料选项、其他模型信息;历程数据包括静力分析(分析步参数等)、载荷和边界条件、结果输出。*STEP是历程数据和模型数据的分界点,第一个*STEP之前的所有内容均属于模型数据,其后的所有内容则属于历程数据。注:书写INP文件时模型数据必须在历程数据之前。


格式问题:

  1. 数据项之间要用英文逗号分开,不能能用空格或中文逗号;

  2. 关键词行中的空格将会被忽略;

  3. 为方便起见,建议先在软件建模,然后在文本编辑器中手动修改INP文件,和修改.rpy文件原理相似;

  4. 如果行内有参数赋值的情况,就用英文逗号隔开;

  5. 分行的时候要在行尾加上逗号,如:

        *ELEMENT,TYPE=T2D2,ELSET=bottom

        转化为:

        *ELEMENT,TYPE=T2D2,

        ELSET=bottom

6.INP文件内的参数和关键词均不区分大小写;

7.INP文件中不应有空行,如留空行,应在行开头输入**,以表示为注释行;

8.对于浮点数,下列表示方法均有效(软件内也适用):

浮点数有效表示

使用文本编辑器打开INP文件,推荐EditPlus,有时模型比较复杂,相应的INP文件也较大,如果使用Windows自带的记事本打开,运行速度会较慢。

*Heading

INP文件总是以*Heading开头。

*Preprint, echo=NO, model=NO, history=NO, contact=NO

使用关键词可以设置在(.dat文件)中记录的内容,本实例按照ABAQUS默认设置

*PART

如果部件对应的是非独立实体(网格在部件上划分),则PART数据块中将包含节点、单元、集合和截面属性等数据;如果部件对应的是独立实体,则PART数据块只包括*PART和*END PART两行

*NODE

<节点编号>,<节点坐标1>,<节点坐标2>,<节点坐标3>

注:在inp文件中不同部件可以由相同的节点或单元编号。

*ELEMENT

*ELEMENT,TYPE=<单元类型>

<单元编号>,<节点1编号>,<节点2编号>,......

set集合表示

  1. 如果集合中的节点或者单元编号是连续的,则可以表示为:

        节点集合:*NSET,NSET=<节点集合名称>,GENERATE

        <起始节点编号>,<结束节点编号>,<节点编号增量>

        单元集合:*ELESET,ELSET=<单元集合名称>,GENERATE

        <起始单元编号>,<结束单元编号>,<单元编号增量>

2.如果集合中的节点或者单元编号是不连续的,则可以表示为(每个数据行中的节点或单元编号不得超过16个):

        节点集合:*NSET,NSET=<节点集合名称>

        <节点编号1>,<节点编号2>,...<节点编号16>

        ...

        单元集合:*ELESET,ELSET=<单元集合名称>

        <单元编号1>,<单元编号2>,...<单元编号16>

        ...

*SOLID SECTION

*SOLID SECTION,ELSET=<单元集合名称>,MATERIAL=<材料名称>

*ASSEMBLY

*ASSEMBLY,NAME=<装配件名称>

......

*END ASSEMBLY

*INSTANCE

        *INSTANCE,NAME=<实体名称>,PART=<部件名称>

        ......

        *END INSTANCE

定义在Assembly数据块中的集合

*NSET,NSET=<集合名称>,INTERNAL,INSTANCE=<实体名称>

......(节点编号或单元集合)

*SURFACE

*SURFACE,TYPE=<面的类型(ELEMENT)>,NAME=<面的名称>

<构成此面的集合1>,<名称1>

......

*MATERIAL

以线弹性材料为例:

*MATERIAL,NAME=<材料名称>

*ELASTIC

<弹性模量>,<泊松比>

*BOUNDARY

如果边界条件施加在初始分析步中,则相应的BOUNDARY数据块在*STEP之前;如果边界条件施加在后续分析步中,则相应的BOUNDARY数据块在*STEP之后。

*BOUNDARY

        <节点编号或节点集合>,<第一个自由度的编号>,<最后一个自由度的编号>,<位移值>

        如U1=UR2=UR3=0可表示为:

        *BOUNDARY

        <节点编号或节点集合>,1

        <节点编号或节点集合>,5,6

        其中1表示自由度1即(U1),5,6表示自由度5(UR2)到自由度6(UR3).

*STEP

*STEP,NAME=<分析步名称>

*STATIC

<初始增量步>,<分析步时间>,<最小增量步>,<最大增量步>

 

                                      

 

 


Abaqus疑难杂症——Inp文件的正确食用方法的评论 (共 条)

分享到微博请遵守国家法律