首页/文章/ 详情

如何写input文件

7月前浏览353

一、输入文件的组成和结构: 

1.一个输入文件由模型数据和历史数据两部分组成.

模型数据的作用:定义一个有限元模型.包括单元,节点,单元性质,定义材料等等有关说明模型自身的数据.模型数据可被组织到零件中(零件可以被组装成一个有意义的模型).

历史数据的定义是模型发生了什么----事情的进展,模型响应的荷载,历史被分成一系列的时步层序.每一步就是一个响应(静态加载,动态响应等),时步的定义包括过程类型(比如静态应力分析,瞬时传热分析等)对于时间积分的控制参数或者非线性解过程,加载和输出要求.

At a minimum the model consists of the following information: geometry, element section properties, material data, loads and boundary conditions, an alysis type, and output requests.

image.png

2.ABAQUS输入文件的结构形式。

1) 必须有一个*HEADING开头。

2)接下来就是模型数据部分,定义节点,单元,材料,初始条件等。模型数据的层次为:部件,组装,模型。

           必须的模型数据:

(1)几何数据:模型的几何形状是用单元和节点来定义的,结构性单元的截面是必须定义的。比如梁单元。特殊的特征也可以用特殊的单元来定义,比如弹簧单元,阻尼器,点式群体等。

(2)材料的定义:材料必须定义比如使用的是钢啊,岩石,土啊等材料。

可选的模型数据:

(1)零件和组合 :一个模型可以用几个零件来定义有可以把几个零件组合成一个集来定义。

(2)初始条件  :比如初始应力,温度,或者速度等

(3)边界条件:

(4)运动约束

(5)相互作用

(6)振幅定义

(7)输出控制

(8)环境特性

(9)用户子程序

(10)分析附属部分

3)接下来就是历史数据:定义分析的类型,荷载,输出要求等。分析的目的就是预测模型对某些外部荷载或者某些初始条件的反映。一个ABAQUS分析是建立在STEP的概念上的,(在历史数据中描述)在分析中可以定义多个STEPS。每个STEP用*STEP开始,用*END STEP结束。*STEP是历史数据和模型数据的分界点,第一次出现*STEP的前面的是模型数据,后面的就是历史数据。

           必须的历史数据:

响应类型:必须立刻出现在*STEP选项后面。ABAQUS中有两种响应步,一种是总体分析响应步,可以是线形和非线形的,另一种是线形扰动步。

可选历史数据:

(1)荷载:通常定义某种加的荷载类型和大小。荷载可以被描述成时间的函数。

(2)边界条件输出控制

(3)辅助控制

(4)再生单元和曲面

二、书写input文件的语法和规则:

1.关键词行:

1)必须以*开始,后面接的是选项的名字,然后随之定义选项的内容.如:

* MATERIAL   NAME=STEEL

注释行是以**开始的.

2)如果有参数,则参数和关键词之间必须用“,”格开。

3)在参数之间必须用“,”格开。

4)关键词行中的空格可以忽略。

5)每行的长度不能超过256个字符

6)关键词和参数对大小写是不区分的。

7)参数值通常对大小写也是不区分的,但是唯一的例外是文件名区分大小写。

8)关键词和参数,以及大多数情况下的参数值是不需要全拼写出来的,只要他们之间可以相互区分就可以了。

9) 假如参数有响应的值,则付值号是“=”。

10) 关键词行可以延续,比如参数的名字很长,要在下一行继续这个关键词行的话就可以这样做,用“,”来连接。比如:

*ELASTIC, TYPE=ISOTROPIC,

DEPENDENCIES=1

11) 有些选项允许INPUT和FILE的参数作为一个输入文件名,这样的文件名必须包括一个完整的路径名或者是一个相对路径名。

2.数据行:(数据行如果和关键词相联系必须紧跟关键词行)

1) 一个数据行包括空格在内不能超过256个字符。

2) 所有的数据条目之间必须用“,”格开。

3) 一行中必须包括指定说明的数据条目的数字。

4) 每行结尾的空数据域可以省略。

5) 浮点数最多可以占用20个字符。

6) 整数可以是10个

7) 字符串可以是80个

8) 延续行可以被用到特定的情况。

3.标签:

什么是标签呢,比如集名,曲面名,钢筋名,他们是区分大小写的,长度可以有80个字符长。标签中的空格是可以省略的,除非用“”来标示。那就不能省略了。没有用“”来标示的标签必须用字母来开头。如果一个标签用“”来定义那么“”也是标签的一部分。标签的开始和结束不能用双重“_”

下面是一个使用了引号和没有使用引号的例子:

*ELEMENT, TYPE=SPRINGA, ELSET="One element"

1,1,2

*SPRING, ELSET="One element"

1.0E-5,

*NSET, ELSET="One element", NSET=NODESET

*BOUNDARY

nodeset,1,2

4.数据行重复:

数据行可以重复,也就是说每行数据可以有一行响应的变量也可以有几行。同样也可以有多行数据行,对应各自的变量行.如:

*ELASTIC, TYPE=ISOTROPIC

 200.E3, 0.3, 20.

 150.E3, 0.35, 400.

 80.E3, 0.42, 700.

定义了一个零件的材料性质,均质,线弹性,在不同应力下的扬式模量和泊松比.

三、从外存储器中引入模型或者历史数据

The *INCLUDE option can be used to specify an external file that contains a portion of the ABAQUS input file. This file can include model and history definition data, comment lines, and other *INCLUDE references. When the option is encountered, ABAQUS will immediately process the input data within the file specified by the INPUT parameter. When the end-of-file is reached, ABAQUS will return to processing the original file.

A maximum of five levels of nested *INCLUDE references can be used. The option supports UNIX environment variables.

Usage:  *INCLUDE, INPUT=file_name

四、举例:

下面介绍两个简单的例子:

例一:悬臂梁.

输入文件的开始就是文件头,以HEADING 开始,随后是模型的名字,如下所示:

*HEADING

 CANTILEVER BEAM

然后是网格定义:

现在就是模型数据的开始了.一般选择从网格的定义开始,网格包括(单元和节点)假如我们的悬臂梁有五个单元,六个节点,下面我们首先详细说明节点:

*NODE, NSET=ENDS

 1, 0.

 6, 100.

*NGEN

 1, 6

节点组集,NSET其值(名字)为ENDS.下面的就是这样理解的,第一个节点是从0开始的,第六个节点是在100结束的.同样我们来定义单元:

*ELEMENT, TYPE=B21(单元类型)

 1, 1, 2 (单元类型的参数)

*ELGEN, ELSET=BEAM (产生单元集,及其名称)

 1, 5 (一个单元集,包括5个单元)

现在定义单元的性质:

*BEAM SECTION, SECTION=RECTANGULAR, ELSET=BEAM, MATERIAL=STEEL

 1., 2.

梁截面,截面的形状是矩形,单元集的名称是梁单元,材料是钢。截面的尺寸是1*2。

下面定义材料的性质:

*MATERIAL, NAME=STEEL

*ELASTIC

 30.E6,

材料是钢,弹性,弹性模量是30E6。

下面定义边界:

*BOUNDARY

 6, ENCASTRE

边界是在6节点,通过ENCASTRE来描述。

边界也可以用下面的形式来定义:

*BOUNDARY

 6, 1, 6

ABAQUS对结构单元的中的节点的自由度使用常规的编号方式。1,2,3 代表的是位移分量;4,5,6代表的是旋转分量。

以上是模型数据的定义,下面开始历史数据的定义:(加载的次序,事件的发生,还有我们想看到的变量的响应)

时步(步骤)的定义。

*STEP, PERTURBATION(步骤的开始,扰动是其名称)

*STATIC(静态分析)

*CLOAD(集中荷载)

 1, 2, -20000.(在节点1,y[2代表的是y方向,假如是1则代表的是x方向,3代表的是z方向]方向施加荷载,荷载的大小是-20000。也就是向下施加荷载。)

*END STEP(步骤的结束)

下面来解释输出要求:

*EL PRINT, POSITION=AVERAGED AT NODES, (节点的平均值)SUMMARY=YES在表的下部求和)

 S11, (积分点的应力分量在X方向)E11(在积分点的应变分量在X方向)

 SF,(在积分点的截面力)

*NODE FILE, NSET=ENDS

 U,(节点的空间位移) CF,(节点的点荷载)RF节点的反作用力)

*OUTPUT, FIELD, VARIABLE=PRESELECT

*ELEMENT OUTPUT

 SF,

*OUTPUT, HISTORY

*NODE OUTPUT, NSET=ENDS

 U, CF, RF

image.png


更多内容见附件


免责声明:

本页面/内容部分素材来源于互联网公 开 信 息,旨在传递更多信息,不代表本平台立场。

版权归原作者或机构所有,如涉及侵权,请通过平台联系我们,我们将在核实后第一时间处理。

本平台对转载内容的真实性、准确性不作任何保证,用户需自行判断并承担使用风险。

附件

免费B13-如何写input文件.pdf
Abaqus
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2026-03-18
最近编辑:7月前
仿真支持爱好者
在仿真的路上越走越远
获赞 333粉丝 27文章 318课程 0
点赞
收藏
作者推荐

Abaquspython入门体会(simwe-flin55)

Abaqus/python入门体会(初稿)#===========================================================自己的论文要用到有限元进行数值模拟分析,以前都用ansys计算,可ansys中岩土的本构模型只有D—P模型,无法准确的反映土的硬化/软化性质,模拟计算出的结果因此也和实际差别很大。Abaqus有着丰富的材料模型,超强的非线性分析能力,岩土的模型也很多,因此オ转学Abaqus〇Abaqus的cae建模功能还是很好的,但科研课题一般都要进行参数分析,釆用cae的建模方法有些不切实际,学了没几天就放弃cae开始学习inp,也是学了一阵子才知道inp不能建立实体模型,只能直接建节点和单元。复杂的模型inp也无法建立,但釆用Python建模就可以解决这个问题。由于Abaqus的学习资料不多,过了好些日子才知道Abaqus也可以采用Python语言进行建模计算,只是比Ansys的Apdl语言复杂得多,并且除了手册上的Script资料之外,没有较为系统的教程,刚一接触真是让人头痛。通过查看Simwe论坛上关于Python的帖子,和论坛朋友的帮助,自己在慢慢积累,现在对Python有了一点点了解,算是入了个门。接触Abaqus也没多久,对python更是一知半解,绝大多数地方根本都不清楚,抽空写一点认识体会主要是给像自己一样刚学习AbqusPython的朋友,能少走一些弯路,节约一些时间。同时希望大家批评指正、共同讨论、补充。学习Abaqus/Python基础:Abaqus的cae建模有比较全面的认识;了解一些Python语法知识(大家都不会有太多时间单独学习Python语言本身,只需要有概念了解即可,不懂的地方可以随时查询Pythonscript手册)Abaqus/Python学会使用不太难,可要精通应用还是要付出一定的劳动。大家所分析的课题专业不同,方向也千差万别,所用到的Abaqus的功能也就有很大的差别,能对自己的工作领域熟练应用就算成功。Abaqus毕竟只是软件,如何考虑专业知识成功建模才是最困难的。#1.Python与Abaqus2.Abaqus/Python结构3.模型参数分析技巧4.几个命令的体会5.ー个Abaqus/Python例子#1.Python与Abaqus1.1Python简介Python是面向对象的语言。面向对象的语言自己的理解为:语言本身已经定义了许多固定模块,如数学函数、对显示模式的控制、一些对话框的编写等等程序模块,只需要按照程序的指定格式填空即可完成既定任务,格式相对比较固定,因此语言格式看起来非常繁琐,但方便实用能够大量节约程序员的时间。面向对象语言的使用方式可以比喻为:一棵树分为树干、树枝、细枝和树叶等部分,你要是想得到ー个确定位置的树叶(且具大小等属性)只有一个路径可以走即树干ー树枝ー细枝ー树叶,换成面向对象的格式为树干.树枝.细枝.树叶(树叶片数或大小等属性)。以下是abaqus中Python的一般格式,这些格式都是固定的,我们只需要改变其中的参数即可:mdb.models['Model-1'].ConstrainedSketch(name='_profile',sheetSize=0.3)s=mdb.models['Model-1'].ConstrainedSketch(name='_profile',sheetSize=0.3)s.sketchOptions.setValues(decimalPlaces=3,viewStyle=AXISYM)s.setPrimaryObject(option=STANDALONE)s.ConstructionLine(point1=(0.0,-100.0),point2=(0.0,100.0))Python有着较强的逻辑控制语句如if、for、while等,可以通过循环或条件等语句把复杂且重复的操作变得简单易于操作,也是用参数化编程较cae的最大优势。1.2如何学abaqusPython命令Abaqus是采用Python语言编制而成,在cae中所有的操作都可以通过Python脚本命令完成(注:好像Python并不能完全取代inp文件,ー些材料属性的参数好像要用inp才能赋值)。☆学会用pythonreader程序Abaquscae可以自动生成python文件,存放在工作目录的abaqus.rpy文件中,每ー步cae操作都会产生相应的python命令。可以通过simwe网友ck436ck436编写的pythonreader程序实时读取产生的命令,反复揣摩、领会每个命令,很快就会有所提高,对python的命令有所领悟。与cae建模相同,Python建模也分为:part、property>assembly>step、ineraction、load、mesh、job等模块,具体每个模块中的建模命令可参考Pythonreader读取的命令学习,我们只需去记忆常用的Python命令。以下是pythonreader程序下载地址。http://forum.simwe.com/viewthread.php?tid=808007&highlight=Pythonhttp://groups.google.com/group/ck436goooglemail/files☆通过修改M8四&rpy建立自己的脚本文件是一条捷径1.3Abaqus/Python学习资料关于Python的学习资料非常多,如Swaroop,C.H.著沈洁元译的«简明Python教程»就是很好的参考资料。王纯业的«Python学习笔记»也不错,simwe论坛可以下载到恥另外就是Abaqus手册:AbaqusScriptingUser'sManualAbaqusScriptingReferenceManualGettingStartedwithAbaqus:InteractiveEditionAbaqus手册真是冗长,只能是根据自己的课题有选择的査阅。2.Abaqus/Python结构Abaqus的objectmodel分为session、mdb和odb二个objects,session为视图模块、mdb为模型数据模块、odb为数据输入输出模块。每个object下面乂有很多命令分支,宜到执彳亍到所需要的具体命令。以下各图选自AbaqusScriptingUser'sManual,更多书面的的解释可以参考abaqus手册。每个object都像ー棵树,要执彳亍某个命令就需要按照python的面向对象的格式进亍。更多内容见附件免责声明本页面/内容部分素材来源于互联网公开信息,旨在传递更多信息,不代表本平台立场。版权归原作者或机构所有,如涉及侵权,请通过平台联系我们,我们将在核实后第一时间处理。本平台对转载内容的真实性、准确性不作任何保证,用户需自行判断并承担使用风险。

有附件
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈