ABAQUS模型处理技巧 下载本文

内容发布更新时间 : 2024/12/24 4:11:12星期一 下面是文章的全部内容请认真阅读。

abaqus模型的处理技巧

唐彩明 http://blog.sina.com.cn/u/2242328033 2011-09-24 15:59:27

abaqus的多图层绘图

abaqus的cae默认一个视区仅仅绘出一个图形,譬如contor图,变形图,x-y曲线图等,其实在abaqus里面存在一个类似于origin里面的图层的概念,对于每个当前视区里面的图形都可以建立一个图层,并且可以将多个图层合并在一个图形里面,称之为Overlay Plot,譬如你可以在同一副图中,左边绘出contor图,右边绘出x-y图等等,并且在abaqus里面的操作也是很简单的。

1.首先进入可视化模块,当然要先打开你的模型数据文件(.odb) 2.第一步要先创建好你的图形,譬如变形图等等 3.进入view里面的overlay plot,点击creat,创建一个图层,现在在viewport layer里出现了你创建的图层了

4.注意你创建的图层,可以看到在visible 下面有个选择的标记,表示在视区里面你的图层是否可见,和autocad里面是一样,取消则不可见current表示是否是当前图层,有些操作只能对当前图层操作有效,同cad name是你建立图层的名称,其他的属性值和你的模型数据库及图形的类型有关,一般不能改动的。 5.重复2-4步就可以创建多个图层了

6.创建好之后就可以选择plot/apply,则在视区显示出所有的可见的图层 子结构的概述

1.什么是子结构

子结构也叫超单元的(两者还是有点区别的,文后会谈到),子结构并不是abaqus里面的新东东,而是有限元里面的一个概念,所谓子结构就是将一组单元组合为一个单元(称为超单元),注意是一个单元,这个单元和你用的其他任何一种类型的单元一样使用。 2.为什么要用子结构

使用子结构并不是为了好玩,凡是建过大型有限元模型的兄弟们都可能碰到过计算一个问题要花几个小时,一两天甚至由于单元太多无法求解的情况,子结构正是针对这类问题的一种解决方法,所以子结构肯定是对一个大型的有限元模型的,譬如在求解非线性问题的时候,因为对于一个非线性问题,系统往往经过多次迭代,每次这个系统的刚度矩阵都会被重新计算,而一般来说一个大型问题往往有很大一部分的变形是很小的,把这部分作为一个子结构,其刚度矩阵仅要计算一次,大大节约了计算时间。 3.哪些情况可以使用子结构 前面提到的非线性问题,包括了很小变形的或者线弹性部分可以使用子结构,特别是当模型中有很多相同的部分时,提到的最多的一个例子就是桌子的四条腿,四条腿作为子结构(因为基本时弹性变形)可以包括了很多的实体单元,可以大大提高效率再一个就是问题确实太大,只有采用子结构将问题分成很多块,计算出结果后再次采用子结构分块计算,一直到能对每块单独计算为止。

4.abaqus中子结构的特点及要注意的问题 子结构是一组单元的集合,但是在子结构中仅仅只有你指定的那些节点的自由度会保留下来而其他节点的自由度都被消除了,其他的节点均是通过线性插值的方式获得求解; 子结构是通过你指定的节点与其他的单元建立联系的;在abaqus的6.4版本中只有子结构这个概念没有超单元了,其区别就是子结构可以求得单元内部准确的解而超单元不行;当你定义子结构的时候不要包含太多的单元,因为单元的刚度矩阵集成的时候会花掉太多的时间,可以用更多的含有较少单元的子结构代替。

5.在abaqus中子结构的用法

一般包括如下部分,首先你要利用substructure generate和retained nodal dofs定义一个子结构,然后你可以定义子结构的内部荷载,边界条件一旦你已经定义了子结构以后你就可以象利用一般的单元一样使用子结构了,譬如输出请求等等。因为内容太多只能另外的文章再述了,大家也可以直接看看手册,要注意的是,abaquscae是不支持子结构的。 如何在不同的分析步改变材料的参数 我所了解的大概有三种不同的方法:

1.最强大的当然是采用umat的方式,不过需要有深厚的有限元基础,一般人不推荐使用

2.采用场变量,不过功能相对简单

3.采用abaqus的import命令将前面分析的结果传递到新的分析之中 这里介绍下第二种方法 *什么是场变量

所谓场变量,我的理解就是一个环境变量,它建立了一个与材料参数之间的中介,虽然不能直接指定材料参数在不同的分析步具有不同的值,但是通过场变量,间接的达到了目的。 *怎样使用场变量

其实场变量用的较多的实在热力学和流体力学的分析种,这里介绍的仅仅是在固体力学中的用法

1.定义场变量

*你可以在initial中指定场变量的值,格式如下

initial conditions,type=field,variable=n(场变量的编号) Set-1(你定义的结点集),1.0(场变量的值)

场变量是通过编号来识别的,一次只能定义一个场变量 *你也可以直接在分析步中指定场变量的值,格式如下 *field, variable=\Set-1,1

当然也可以同时使用initial和field,当你指定的场变量改变时,默认材料的参数是在增量步间线性变化的。

2.建立材料参数和场变量之间的联系

如果你用cae,在prop模块里面的材料参数一般都有Number of field variables,场变量都是从1开始的,你也可以选择多个场变量。填入场变量的值和材料参数间的关系,譬如

杨是模量 泊松比 field1 200.E9, 0.3, 1. 180.E9, 0.3, 2.

如果你用的是命令格式,则在inp文件里面键入: *ELASTIC, DEPENDENCIES=\200.E9, 0.3, , 1. 180.E9, 0.3, , 2.

第四个参数表示场变量的值 3.注意

场变量在不同分析步中的值有你在不同的分析步中指定,如果没有指定,材料参数默认微是场变量1的值,例如 *STEP,name=step1

*STATIC......

*FIELD, VARIABLE=\NALL, 1. *END STEP

*STEP,name=step2 *STATIC......

*FIELD, VARIABLE=\NALL, 2. *END STEP

cae步支持场变量,所以你必须自己更改inp文件 4.技巧

如果材料的参数变化比较复杂,一般是利用副职曲线来定义场变量值的变化, *FIELD, VARIABLE=\,amplitude=??? 对幅值曲线步清楚的自己可以看手册 模型的重启动分析-restart

按理说restart不应该算是一个分析的技巧,而是一个常识,不过呢可能有很多朋友没有建过大型模型导致restart也用的较少,所以也介绍下。 1.什么是restart

你的job可能包含多个step,可是如果你的模型很大,可能会有这样一种情况,当你花了几天几夜,终于分析好的时候,你发现the first step的边界条件设置的有问题,这对于你真是晴天霹雳,于是你只好重新来过,可是第二天你发现你的电脑restart,这时的你可能只能问上帝了,how can i do?

*restart,就是将一个复杂的模型分析过程分成很多的阶段,甚至是一个increatment step一个阶段,你可以对每个阶段的结果进行检验,然后进入下一个阶段进行分析。 2.重启动需要那些文件

对于standard来说,.res,.mdl,.stt,.prt,.odb,这些文件是用于重启动的,explict是.abq,.stt,.prt,.odb.

3.如何在一个分析中设置重启动来生成以上文件。 这里只介绍下在standard的用法, 其实很简单?

inp文件里面加入*RESTART, WRITE, FREQUENCY=\就可以了\

cae默认加入了重启选项,不过可以在step->output->restart request里面设置输出的频率,也就是frequency。

*技巧:因为res文件包含了模型的几乎全部信息,所以非常大,你可以设置overlay参数使后面的数据覆盖吊前面的数据,不过restart的话你也只能从最后一个增量步开始 4.如何重启

你要指定一个重启点,inp文件里面加上*RESTART, READ, STEP=\INC=\就可以了cae中更简单\,首先在model->edit attribute里面选择restart,指定前面分析的job名和你想重启动的开始分析步和增量步就可以了,然后在job里面指定重新创建的工作类型,restart,that's all. 5.注意

重启动不能改变你的原始分析中的任何参数,也就是说,你的启动点的模型必须和原始分析中的模型完全一致的,所以不要企图采用restart的方法来改变边界条件,材料参数或者网格的密度等等。这些需要另外的技巧来实现。