第一篇:abaqus自我总结
如何输入inp文件
inelastic heat fraction:非弹性功(一般是塑性功)转换为热量的比例,比例越大,产热越高,温升越高
rate dependent:本构率相关参数,表示材料的屈服流动应力不仅和等效塑性应变相关,而且还与应变率有关,一般是正相关
如何将二维图表的背景变成白色
我的怎么就改变了呢 说了双击
举例子说说我的理解吧:history output->盯住一个节点,这个节点在整个加载时间段内应力变化情况,用xy图表示就是一条TIME-STRESS曲线;field output->盯住一个时刻,所有节点在这个时刻时的应力值,直观表示是云图。当然在xyplot中你可以选择盯住一个节点按时间输出该节点的力(即ODB field output),不过最多只能在各个帧对应的时刻输出,xy图中点的数量较少。如果我错了的话请大家指正哈
view---overlayplot--然后每一个时刻创建一个新图层,然后plotoverlay
怎么样才能使圆柱体绕另一固定轴转动(不是圆柱体中心轴),类似于公转之类的?我尝试了很多办法,包括在边界条件上施加UR3 或VR3的值,貌似物体都是固定不动的,或者是沿着直线走的,根本就不是预想的那样(公转)只加UR3肯定是不行的。可以试试下面的方法:
1、取圆柱上一个节点(最好是端面圆心位置),定义其U1、U2位移,通过控制U1、U2使圆柱体到轴的距离不变,这样就有了在X-Y平面内的刚体位移,要沿圆弧运动就看你怎么控制U1、U2了。
2、要不要自转,随便定义UR3即可。
注意:圆周运动的轨迹实际是位移,不是自转。另外,提供一个简单方法。
在轴上定义一个rp,rp与圆柱端面圆心建立MPC或其他约束,约束rp的位移自由度,给rp加UR3位移,这样圆柱也能跟着rp绕rp所在的轴转动。
运动问题从几何角度考虑一下,很简单。
简化方法:我记得以前学数学的时候,圆周可以看成是无限多边形(现在很多软件其实也是这么实现的,比如CAD的圆就是多边形简化的)
既然这样,可以把绕轴公转 圆弧轨迹 简化成 多边形轨迹
也就是
描点了 设置多个分析步 多个U1 U2(U1 和 U2取圆周上的点)
方法二: ABAQUS 里面有connecter 其中有一种连接方式 是hinge 可以实现绕轴旋转 建立两个参考点 在两个参考点之间hinge连接
一个点做轴 一个点和圆柱coupling 在做轴的点上加UR3 即可实现公转
最近碰到一个计算时间比较长的Explicit模型,分析步4个,每个分析步计算时间都超过8小时,由于用笔记本计算,下班就得中断计算关机走人,这样就不得不考虑重启动的问题。
经过这几天的摸索,发现对于这种计算时间长的Explicit模型,要想是实现意外中断以后继续计算,最好的方法就是用recover。
方法其实很简单:
要想在中断以后实现无缝连接(接着上一个increment继续计算),必须在计算之前做一个Restart的设定,CAE:step模块,output->restart requests->intervals,默认为1,将这个数据改大一点,我改为100,与field output的inteval对应起来。有了这个前提,不管什么时候中断,只需把该job type改为recover,然后提交就会接着中断的部分继续算。再中断再提交就行了,不需要做任何改动,直至计算完成。Command命令:abaqus job=jobname recover int。
解释:
restart前提条件的设定,Explicit默认的会写出各种重启动需要的文件,只不过默认的interval=1,就是说只有在每个分析步的开始和结尾才有重启动点,这样不能实现哪中断哪重启。要实现无缝连接,理论上这个数据越大越好,只要不超过一个分析步increment总数。但是大了会增加数据写入量,也没必要。这个前提设定和restart一样。
好处:
只需要在第一次重启动的时候改job type为recover,提交就ok了,当然要记得删除lck文件。后面中断了就只需提交就行了,不需做任何改动,方便。而且odb,sta等文件都是在原文件的基础上续写,不存在合并odb文件的问题。用这个方法,甚至可以人为中断后再接着计算。
一点体会,供参考。
1、首先需要重启动的case计算时有设置重启动输出,即inp中以下类似代码关键有write: *Restart, write, number interval=8, time marks=YES
2、查看计算结果后缀为.sta的文件,观察最后restart number数值,如Restart Number 8 at 3.0600;
3、合并原计算结果文件,jobname为断电前使用的文件名(需先删除原文件后缀为.lck的文件)
abq6101 job=jobname convert=all int
4、设置重启动读入值,interval等于最后restart number减去1,例 *RESTART, READ, STEP=4, END STEP, INTERVAL=7
5、设置重启动inp文件,新建一个AMPLITUDE文件,时间设置为计算总时间,*Amplitude, name=Amp-3,TIME=total time
3.0, 0.,3.06,1.6、改变相应边界条件; 断电前使用
*Boundary, amplitude=Amp-2, type=VELOCITY 改为
*Boundary, amplitude=Amp-3, type=VELOCITY
7、分析计算,restartname为新建的重启动inp文件名称,jobname为断电前使用的文件名 abq6101 job=restartname oldjob=jobname cpus=12 int mp_mode=threads double
注意:
默认使用的AMPLITUDE中time=step time,跟AMPLITUDE相关的边界条件都需要改变;
对时间增量步理解
abaqus的step里有maximum number of increment、initial increment、minimum increment、maximum increment四个量许多网友不知怎样设置合理,合理设置是建立在深刻理解基础上的。
要理解这个问题,首先需要了解abaqus的计算过程和有限元计算收敛性问题,abaqus首先用initial值输入进行叠代计算,如果计算结果收敛,则继续以这个值代入计算下一步,如果不收敛,则自动减小时间步长(time increment)重新计算直到收敛然后计算下一步。
但是如果时间步长减小到最小值minimum时计算结果还是不收敛,则abaqus将停止计算,由此可知maximum值和minimum值分别是abaqus在收敛计算时时间步长的上下限,同时total time=求和(time increment*number),当时间步长很小时,需要计算的步数number相应增大(电脑计算花的时间也随之增大),因此number一般要设置较大值。minimum并不是越小越好,因为1)number即计算时间增大2)abaqus计算精度约在10^(-5),当时间步长小于这个值,计算结果已经没什么意义了。
有限元计算收敛性与(最小空间步长/时间步长)值有关,若minimum设为10^(-5),还是不收敛,可适当减小空间步长(即把网格画细点),当然还有一些其他办法,如果实在计算不了,也许是模型本身有点问题,或改为显示explicit计算
总而言之,maximun number要适当设置较大值,initial可适当改小(如-2,-3量级),minimum(-5量级)不要修改,maximum值影响不大,可不改
显示分析的求解时间与以下几个方面有关: 材料密度。加快求解有一种方法就是增大密度,密度增加100倍,时间降低为原来的十分之一。当然,这种情况下必须是密度这一属性对你要求的结果影响不大的前提下。最小的网格尺寸.这决定计算机每步求解的最大步长。网格尺寸越小,最大时间步长越大。即使只有一个网格尺寸很小,其他都很大,最大时间步长也提不高。所以,避免产生个别小的网格尺寸是十分必要的。网格数量。网格数量越大,每求解一步所需的时间越长。因此,可以适当优化网格,采用局部加密的方法,减少网格数量。4 模型复杂程度,主要是指模型是否有接触、大变形、多物理场耦合等。越复杂,时间越长。
以上,希望对你有用。
发现当转动模型时模型就会变成静态线框下的透明体,如何才能把他改成转动时不是透明的呢?
第二篇:总结Abaqus操作技巧总结(个人)
Abaqus操作技巧总结
打开abaqus,然后点击file——set work directory,然后选择指定文件夹,开始建模,建模完成后及时保存,在进行运算以前对已经完成的工作保存,然后点击job,修改inp文件的名称进行运算。切记切
记!!!
1、如何显示梁截面(如何显示三维梁模型)
显示梁截面:view->assembly display option->render beam profiles,自己调节系数。
2、建立几何模型草绘sketch的时候,发现画布尺寸太小了
1)这个在create part的时候就有approximate size,你可以定义合适的(比你的定性尺寸大一倍);
2)如果你已经在sketch了,可以在edit菜单--sketch option ——general--grid更改
3、如何更改草图精度
可以在edit菜单--sketch option ——dimensions--display——decimal更改
如果想调整草图网格的疏密,可以在edit菜单--sketch option ——general——grid spacing中可以修改。
4、想输出几何模型 part步,file,outport--part
5、想导入几何模型? part步,file,import--part
6、如何定义局部坐标系
Tool-Create Datum-CSYS--建立坐标系方式--选择直角坐标系or柱坐标系or球坐标
7、如何在局部坐标系定义载荷 laod--Edit load--CSYS-Edit(在BC中同理)选用你定义的局部坐标系
8、怎么知道模型单元数目(一共有多少个单元)
在mesh步,mesh verify可以查到单元类型,数目以及单元质量一目了然,可以在下面的命令行中查看单元数。
Query---element 也可以查询的。
9、想隐藏一些part以便更清楚的看见其他part,edge等 view-Assembly Display Options——instance,打勾
10、想打印或者保存图片
File——print——file——TIFF——OK
11、如何更改CAE界面默认颜色
view->Grahphic options->viewport Background->Solid->choose the wite colour!
然后在file->save options.12、如何施加静水压力hydrostatic
load--> Pressure, 把默认的uniform 改为hydrostatic。这个仅用于standard,显式分析不支持。
13、如何检查壳单元法向 Property module/Assign/normal
14、如何输出单元体积
set步---whole model----volume/Tickness/Corrdinate-----EVOL
15、如何显示最大、最小应力
在Visualization>Options>contour >Limits中选中Min/Max:Show Location,同样的方法可以知道具体指定值的位置。
16、如何在Visualization中显示边界条件
View——ODB display option——entity display——show boundary conditions
17、后处理有些字符(图例啊,版本号啊,坐标系啊)不想显示,viewport-viewport annotation option,选择打勾。同样可以修改这些字体大小、位置等等。
18、在模型上只显示云图,不显示网格
option菜单-common-basic——visible edges--free edges
19、顺便窜一下,在前处理mesh之后不想显示网格,只显示模型的话,更简单
工具栏有显示mesh、显示线框、显示实体连续的三个按钮。
20、你想调大变形放大系数(Deformation Scal Factor)让变形显示更明显一点?
option菜单-common-visible edges--Deformation Scale factor
21、job步提交运算后警告信息出现setwarning 或者nodewarning,(类似这样的语句:
....have been identified in element set ErrElemVolSmallNegZero
....identified in element set ErrElemDistorted
WarnNodeUnconstrained
WarnNodeMissMasterIntersect
WarnElemDistorted
这里的Warn打头的代表相应的警告信息,Err代表相应的错误信息)
我怎么知道这些set或者node到底在哪儿?
在job步job manager点result,tool---display group---在item 选node或者element,我有点儿不同意,应该在job步job manager点result,tool---job diagnostics中查看错误和警告。
右边就出现相应的警告几何部分,勾选“Highlight item inviewport”就能在模型中
高亮这些警告部分。
22、如何在XY data中绘制非以时间为横轴(如横轴为应变,纵轴为应变)的曲线& x)Z" Q2 A3 I)h
1).先将欲绘制的数据存入XY data manager
2).Create/ Operate on XY data
3).在Operators选择Combine(X,X)
4).为横轴的数据/Add to Expression,再选择作为纵轴的数据/Add to Expression, q N1 w: D ^!D-o% X
5).Save as或Plot即可.23、如何在visualization模块里得到图形中某一节点的位移时间图 Tools/XY Data Manager/Create/选ODB field output 后点击Continue)在Variables中点击U:Spatial displacment 选择你要的,再在Elements/Nodes中
点击pick from viewport 以及Add Selection,最后在模型中拾取节点,plot。想得到数据,就点save。
24、如何在后处理中进行有选择性的显示
在visualization modul中,选择tools---create display group ABAQUS的结果在后处理中能否按照part分别显示?
25、如何在后处理时显示等值线
common---contour type中选择line(等值线)、isosurface(等值面)、等等。
26、对称模型取了1/2或1/4模型,如何在后处理做镜像效果? 后处理view---ODB display option--mirror
27、如何创建一个viewcut切面 后处理--tool---view cut
28、采用摩尔库伦应该注意什么?
如果你在分析中,使用了mc本构,请注意如下:abaqus中集成的mc本构,使用的非相关流动性法则,屈服面和塑形势面不同,因此刚度矩阵不对称,需要用非对称求解器求解
29、abaqus量纲系统(SI)
Abaqus量纲系统(SI):m、N、Kg、s、Pa、J、Kg/m3。30、interaction面选择不上?
在此模块里面,一般先定义相应的surfaces,并分别赋予有意义的容易识别的名字,如slavesurface、master surface,并选择接触面的正确方向,如果方向选择错误的话,经常在job模块中会出现无法收敛的错误信息。
31、平衡地应力时出现An initial condition has been specified on element 0 but thiselement has not been defined?
是因为修改inp文件时,文件中有未删除的空行。
32、土体初始地应力平衡方法。
地应力平衡原理:平衡原理和屈服条件。目的:为了使数值模拟获得一个存在初始应力,而无初始应变的状态。平衡地应力方法:
1.Autobanlance 2.*Initial Conditions,type=stress,Geostatic;(关键字定义初始地应力,只适合土体表面水平的土体,该方法需给出不同材料区域的最高和最低点的自重应力及其相应坐标)
3.*Initial Conditions,type=stress,input=xxx.csv;(初始地应力提取法,此方法最为通用,可用于不同材料、不同地形,适应性强。)方法3的具体步骤: i.ii.iii.iv.v.在Abaqus中建立完整的模型,定义部件、截面属性、装配件、网格、边界条件等。单元类型使用的默认的线性缩减积分单元C3D8R。
在Step功能模块中创建分析步,将类型设为Geostatic。在Load功能模块中,为整个土体定义重力载荷(类型为Geostatic),并在Component3中输入-9.8。
在命令行输入:mdb.models['Model-1'].setValues(noPartsInputFile=ON);在Job模块中创建名为Job-NoInitialCondition的分析作业,提交分析。
将分析得到的应力场保存为一个文本文件。具体的方法为:打开分析得到的ODB文件Job-NoInitialCondition.odb,选择菜单Report---FieldOutput,选中Variable对话框中积分点上的各个应力分量(S11、S22、S33、S12、S13、S23);在Setup标签页,创建inp输出文件,并命名为XX.inp,不选Append to file和Column total 和column min/max。
用Excel修改输出的XX.Inp文件,删除inp文件中的所有叙述性文字和空格(例如若土体有N层,需找出N-1处文字性叙述的地方并删除),只保留数字结果,将数字间在顺序不变的前提下用逗号隔开,保存成csv以逗号隔开的文件形式XXX.csv。为模型定义初始应力场。因在Abaqus中无法直接定义初始应力,只能手工添加关键词,具体做法:选中菜单Model---Edit Keywords,在*Boundary语句之后,*Step语句之前添加语句*Initial Conditions,type=stress,input=XXX.csv 在Job功能模块中定义Job-WithInitialCondition作业,提交分析,即得到所需要的结果。vi.vii.viii.33、Part模块建立刚体时应该注意什么问题?
Part模块建立刚体时一定要指定参考点referencepoint,在后面分析过程中的位移、载荷的施加都在施加在此参考点上的。刚体只有平动和转动,不会有变形,因此参考点的选择即可以在建立的rigid part上,也可以建立在其他你觉得方便的位置。
34、在建模的时候,发现建模尺寸出现错误,怎么解决?
在模型树里mode-1——dam——feature,右键edit,对模型进行编辑。
35、如何显示渗流云图中的浸润面?
在Visualization>Options>contour >Limits中选中Min/Max:——specify值输入为零,孔压为零的面就是浸润面。
36、在abaqus中进行实体分割时(特别是在三维基坑土层分层时),采用 在abaqus中进行壳分割时(特别是在二维基坑土层分层时),采用tools——partition——Skech对草图进行分割,可以采用直线、偏移,中断点等操作进行。
37、The rigid part xx is missing a refernce point 刚体(or刚体约束)都必须通过stools--reference point给它定义一个参考点(RP),载荷都加在这个RP上。
38、Degree of freedom 8 and at least one of degrees of freedom 1 thru 6 must be active in the model for *soils.Check the procedure and element types used in this model.这个错误如何解决呀?(自由度8和至少一个自由度1至6必须是活跃在*土壤模型。检查这个模型中使用的程序和元素类型。)Degree of freedom 8 and at least one of degrees of freedom 1 thru 6 must be active in the model for *soils.Check the procedure and element types used in this model.把网格单元类型里的族改为CPE4P(孔隙流体/应力),再重新划分网格。如果以后出现自由度不活跃情况要检查是不是网格单元选择有问题。
39、abaqus里能不能把两条线合并起来啊?
可以 在mesh模块中有一项合并面或者线的工具 见附图
这个是在同一条直线上可以使用。
40、如果网格划分不合适怎么办?
可以修改修改网格划分形式,就是软件带的那三种。也可以将模型进行分割。
41、在进行渗流分析时,初始孔隙比在哪里加? 在edit keywords中第一个分析步STEP(*step)前插入: *initial conditions,type=ratio Dam-1.dam,1.0 将土体初始孔隙比设置为1.0,应该先建立集合,在assembly中查看集合名称。
42、如果只有inp文件,用abaqus打开时,怎么打开?
打开abaqus,进入job中,create job——source——input file,选择inp文件,进行运算。
43、在打开别人的inp文件,出现abaqus中出现User subroutine voidri is missing错误,怎么解决?
在inp文件中查找user,然后修改,删掉user,然后重新定义就可以了,————你是不是在定义porous material时不小心把 initial void ratio设置成自定义的了?
44、如何显示单元结点编号?显示面结点? 第一:在后处理中,Visualization——common——common plot options——labels,然后选择打钩。
第二:在mesh中,mesh——view——part display options——mesh,选择相应的label打钩。
45、如何后处理一排结点的性质曲线?
第一步:tools——path——create——create path,type类型里选择node list,然后点击continue,然后在node labels填写结点编号。
通过在视图中直接选取路径点时,可以根据个人喜好将所选的点增加在当前点列的前面或后面。
节点编号可以通过列举的方式进行输入,也可以通过表达式进行输入。一般节点的编号是有规律的,可以使用表达式:sn:en:delt(注意要用英文符号)来进行定义,其中sn指开始点,en指结束点,delt指每两个节点编号的差,有正负之分,是第n个节点编号减去第n-1个节点编号的值。对于没有规律的几个节点,直接写上即可,以“,”隔开,具体的案例说明可以参考Simwe上的相关讨论。通过输入节点编号进行路径定义时,必须点击Enter键,以更新视图中的路径。
46、在进行建立集合时,容易选错集合内容,应该注意什么?出错时检查什么?
在建立集合时要确保所选内容为准确的,如果出现错误,会提示没有定义,可以返回part中重新编辑集合,然后就OK。
47、CAD中怎样将图形移动到原点?
开启动态输入,输入0,0,不能完成。将动态输入关闭,然后移动,输入0,0就可以了。
48、怎样将CAD输入到abaqusCAE中?
第一步:将CAD另存为dxf格式,其中CAD中的图形必须在原点才可以。第二步:打开abaqus,file——import——sketch,然后选择dxf就可以了。注意:dxf中的图形必须是在0号图层中,而且不能是块,不能是多段线,只能是线段。
49、在进行实体分割时,有什么简便方法? 采用tools——datum——offset from plane,然后选择基准面,然后根据提示偏移一定的距离。然后partition cell:use datum plane,根据提示,选择实体,选择基准面,点击确定就可以。
50、桌面的上的东西放在桌面以外的区域了,怎么可以找回? 打开文件夹——选择桌面——就可以看到所有桌面上的东西了。
51、如果在分析中采用gravity类型的分布载荷施加重力,必须定义相应的密度,必须特别注意,这里的密度必须是干密度ρd。土的干密度一般为1.4-1.7g/cm3。
52、specific weight of wetting liquid(液体重度)输入框:在该输入框中设置液体重度。
53、除了正常的载荷、位移边界条件之外,在孔压/应力耦合分析中,还可以对自由度8,即孔压,进行相应的载荷和边界条件设置,如排水边界上可将孔压设为0。若不指定孔压边界条件,abaqus认为该边界是不透水的。
54、一般情况下,在建立完abaqusCAE模型后,要建立相应的集合和面集合,一般在后续的修改和inp文件编辑中要用到的。
55、在土木工程中,如何平衡初始地应力?
第一步:等一切建立好之后,如模型、界面属性、装配件、网格、边界条件。第二步:在step功能模块中创建分析步,将类型设为geostatic。第三步:在load功能模块中,为整个土体定义重力载荷(gravity)。第四步:除了重力载荷之外,在geostatic分析步中不要施加其他载荷。
56、在2d(二维)基坑开挖中,墙体和土体接触采用tie连接,第一步:建立结点node结合,即constraint——create——create constraint——type——Tie,然后根据提示【node region】建立主面和从面。
57、二维中线体一般要用beam类型,设置形状和厚度,如地下连续墙。
58、在进行地应力平衡时,应先进行一次分析获得初始状态,获得地应力方法: 在visuslization中,report——field output——variable——position——centroid,选择应力S11、S22、S33、S12作为输出变量,切换到setup,设定目标位置和名称,要确定data区域column totals和column min/max复选框处于未选中状态,点击OK就可以了。具体可以参考视频。这个文件必须和cae文件运行在同一个文件中才可以。本人放在d/temp中。
59、abaqus底部可以进行运算,可以当计算器使用。
60、在进行边界条件设置时,可以先选择为edge,然后在提示中选择by edge angle,然后进行选择就可以一次性选择一条边。非常方便。
61、可以通过tools中的option调节一些选项。
第三篇:ABAQUS单元小结
ABAQUS单元小结
1、单元表征
单元族:单元名字里开始的字母标志着这种单元属于哪一个单元族。C3D8I是实体单元; S4R是壳单元; CINPE4是无限元; 梁单元; 刚体单元; 膜单元;
特殊目的单元,例如弹簧,粘壶和质量; 桁架单元。
自由度dof(和单元族直接相关):每一节点处的平动和转动 1 1方向的平动 2 2方向的平动 3 3方向的平动 4 绕1轴的转动 5 绕2轴的转动 6 绕3轴的转动 开口截面梁单元的翘曲 8 声压或孔隙压力 9 电势 度(或物质扩散分析中归一化浓度)12+梁和壳厚度上其它点的温度 轴对称单元 r方向的平动 2 z方向的平动 6 r-z方向的转动
节点数:决定单元插值的阶数
数学描述:定义单元行为的数学理论
积分:应用数值方法在每一单元的体积上对不同的变量进行积分。大部分单元采用高斯积分方法计算单元内每一高斯点处的材料响应。单元末尾用字母“R”识别减缩积分单元,否则是全积分单元。
ABAQUS拥有广泛适用于结构应用的庞大单元库。单元类型的选择对模拟计算的精度和效率有重大的影响;
节点的有效自由度依赖于此节点所在的单元类型;
单元的名字完整地标明了单元族、单元的数学描述、节点数及积分类型; 所用的单元都必须指定单元性质选项。单元性质选项不仅用来提供定义单元几何形状的附加数据,而且用来识别相关的材料性质定义;
对于实体单元,ABAQUS参考整体笛卡尔坐标系来定义单元的输出变量,如应力和应变。可以用*ORIENTATION选项将整体坐标系改为局部坐标系;
对于三维壳单元,ABAQUS参考建立在壳表面上的一个坐标系来定义单元的输出变量。可以用*ORIENTATION选项更改这个参考坐标系。2.实体单元(C)实体单元可在其任何表面与其他单元连接起来。C3D:三维单元
CAX:无扭曲轴对称单元,模拟3600的环,用于分析受轴对称载荷作用,具有轴对称几何形状的结构;
CPE:平面应变单元,假定离面应变ε33为零,用力模拟厚结构; CPS:平面应力单元,假定离面应力σ33为零,用力模拟薄结构; 广义平面应变单元包括附加的推广:离面应变可以随着模型平面内的位置线性变化。这种数学描述特别适合于厚截面的热应力分析。
可以扭曲的轴对称单元:用来模拟初始时为轴对称的几何形状,且能沿对称轴发生扭曲。这些单元对于模拟圆柱形结构,例如轴对称橡胶套管的扭转很有用。
反对称单元的轴对称单元:用来模拟初始为轴对称几何形状的反对称变形。适合于模拟像承受剪切载荷作用的轴对称橡胶支座一类的问题。
如果不需要模拟非常大的应变或进行一个复杂的,改变接触条件的问题,则应采用二次减缩积分单元(CAX8R,CPE8R,CPS8R,C3D20R)
如果存在应力集中,则应在局部采用二次完全积分单元(CAX8,CPE8,CPS8,C3D20等)。
对含有非常大的网格扭曲模拟(大应变分析),采用细网格划分的线性减缩积分单元(CAX4R,CPE4R,CPS4R,C3D8R等)
对接触问题采用线性减缩积分单元或非协调元(CAX4I,CPE4I,CPS4I, C3D8I)的细网格划分。
如果在模型中采用非协调元应使网格扭曲减至最小。三维情况应尽可能采用块状单元(六面体)。当几何形状复杂时,完全采用块体单元构造网格会很困难,因此可能有必要采用稧形和四面体单元,但尽量少用,并远离需要精确求解的区域。
一些前处理程序包括网格划分方法,它们可用四面体单元构造任意形状的网格。只要采用二次四面体单元(C3D10),其结果对小位移问题应该是合理的。
小结:
在实体单元中所用的数学公式和积分阶数对分析的精度和花费有显著的影响;
使用完全积分单元,尤其是一阶(线性)单元,容易形成自锁现象,正常情况不用;
一阶减缩积分单元容易出现沙漏现象;充分的单元细化可减小这种问题; 在分析中如有弯曲位移,且采用一阶减缩积分单元时,应在厚度方向至少用4个单元;
沙漏现象在二阶减缩积分单元中较少见,一般问题应考虑应用这些单元; 非协调单元的精度依赖于单元扭曲的量值;
结果的数值精度依赖于所用的网格,应进行网格细化研究以确保该网格对问题提供了唯一的解答。但是应记住使用一个收敛网格不能保证计算结果与问题的实际行为相匹配:它还依赖于模型其他方面的近似化和理想化程度;
通常只在想要得到精确结果的区域细划网格; ABAQUS具有一些先进特点如子模型,它可以帮助对复杂模拟得到有用的结果。
3.壳单元(S)可以模拟有一维尺寸(厚度)远小于另外两维尺寸,且垂直于厚度方向的应力可以忽略的结构。
一般壳单元:S4R,S3R,SAX1,SAX2,SAX2T。对于薄壳和厚壳问题的应用均有效,且考虑了有限薄膜应变;
薄壳单元:STRI3,STRI35,STRI65,S4R5,S8R5,S9R5,SAXA。强化了基尔霍夫条件,即:垂直于壳中截面的平面保持垂直于中截面;
厚壳单元:S8R,S8RT。二阶四边形单元,在小应变和载荷使计算结果沿壳的跨度方向上平缓变化的情况下,比普通单元产生的结果更精确;
对于给定的应用,判断是属于薄壳还是厚壳问题,一般:如果单一材料制造的各向同性壳体的厚度和跨度之比在1/20-1/10之间,认为是厚壳问题;如果比值小于1/30,则认为是薄壳问题;若介于1/30-1/20之间,则不能明确划分。由于横向剪切柔度在复合材料层合壳结构中作用显著,故比值(厚跨比)将远小于“薄”壳理论中采用的比值。具有高柔韧中间层的复合材料(“三明治”复合材料)有很低的横向剪切刚度并且几乎总是被用来模拟“厚”壳;
横向剪切力和剪切应变存在于普通壳单元和厚壳单元中。对于三维单元,提供了可估计的横向剪切应力。计算这些应力时忽略了弯曲和扭转变形的耦合作用,并假定材料性质和弯曲力矩的空间梯度很小;
壳单元可以使用每个单元的局部材料方向,各项异型材料的数据,如纤维增强复合材料,以及单元输出变量,如应力和应变,都按局部材料方向而定义。在大位移分析中,壳单元上的局部材料轴随着材料各积分点上的平均运动而转动;
线性、有限薄膜应变、四边形壳单元(S4R)是较完备的而且适合于普通范围的应用;
线性、有限薄膜应变、三角形壳单元(S3R)可作为通用的壳单元来应用。由于在单元内部近似为应变场,精细的网格划分可用于求解弯曲变形和高应变梯度;
考虑到在复合材料层合壳模型中剪切柔度的影响,将采用“厚”壳单元(S4R,S3R,S8R)
四边形或三角形的二次壳单元,用于一般的小变形薄壳是很有效的。它们对剪力自锁和薄膜锁死是不敏感的;
在接触模拟中不用选用二阶三角形壳单元(STRI65),要采用9节点的四边形壳单元(S9R5);对于仅经历几何线性行为的非常大的模型,线性、薄壳单元(S4R5)一般将比通用壳单元花费更少;
小结:
壳单元的横截面特性可以由沿厚度方向的数值积分确定(*SHELL SECTION),或在分析开始时应用计算的横截面刚度(*SHELL GENERAL SECTION);
*SHELL GENERAL SECTION是非常有效的,但仅用于线性材料,*SHELL SECTION可用于线性和非线性材料;
数值积分在沿壳厚度方向的一系列积分点上进行。这些积分点就是单元变量可以被输出的位置。最外层的积分点位于壳单元的表面。
壳单元法线方向决定了单元的正和负表面,为了正确地定义接触和解释输出数据,必须知道其对应的是哪个面。壳法线还定义了施加在单元上正压力载荷的方向,并可以在ABAQUS/Post中画出;
壳单元利用材料方向局部化到每个单元。在大位移分析中,局部材料轴随单元而转动。*ORIENTATION被用来定义非默认的局部坐标系统。单元的变量,如应力和应变,在局部方向输出;
*TRANSFORM定义节点的局部坐标系,集中载荷和边界条件被应用在局部坐标系中。所用节点的输出,如位移,也默认为基于局部的坐标系;
矢量图可以使模拟结果可视化,特别是用来观察结构的运动和载荷路径。
4.梁单元(B)
模拟一维尺寸(长度)远大于另外二维尺寸的构件,且只有长度方向上的应力比较显著。
对于包含接触的任何模拟,应使用一阶、剪切变形的梁单元(B21,B31)如果结构刚度非常大或者非常柔软,在几何非线性模拟中应当使用杂交梁单元(B21H,B32H,等)
使用欧拉-伯努利(三次)梁单元(B23,B33)精度很高,可模拟承受分布载荷作用的梁,例如动态振动分析。如果横向剪切变形也很重要,要使用铁摩辛柯(二次型)梁单元(B22,B32)
模拟有开口薄壁横截面的结构,应当使用考虑了开口截面翘曲理论的梁单元(B31OS,B32OS)
小结:
梁单元的性质由截面(*BEAM SECTION或*BEAM GENERAL SECTION)的数值积分决定,或直接给出截面积、惯性矩和扭转常数(*BEAM GENERAL SECTION);
当使用*BEAM GENERAL SECTION选项时,模拟开始时进行一次数值积分,并且假定材料是弹性的;
ABAQUS包括大量的标准横截面形状。其它形状可以通过定义SECTION=ARBITRARY来模拟;
必须定义横截面取向,方法是通过给出第三个节点,或者在单元性质定义中定义一个矢量。截面取向在ABAQUS后处理中可以画出;
当梁作为壳的加强构件使用时,梁的横截面可能偏离节点;
线性和二次型包含剪切变形的影响,三次型梁不考虑剪切柔度。开口截面梁准确地模拟了扭转和薄壁开口截面翘曲(包括翘曲约束)的影响;
多点约束和约束方程可以用来连接模型中铰接、刚性连接等节点的自由度;
“弯矩”型图使得像梁这样的一维单元的结果很清楚地表示出来; ABAQUS后处理图的硬拷贝可以得到PostScript和HPGL的格式。
5.桁架单元(T)
只能承受拉伸和压缩载荷的杆,不能承受弯曲,模拟铰接框架结构,近似模拟线缆和弹簧。
6.刚体单元(R)
没有独立的自由度。7.非线性分析
小结:
结构问题中存在着三种非线性来源:材料、几何和边界(接触)。这些因素的任意组合都可以出现在ABAQUS的分析中;
几何非线性发生在位移量值影响结构响应的情况下。这包括大位移和转动效应、突然翻转和载荷硬化;
非线性问题是利用牛顿-拉弗森方法来进行迭代求解的。非线性问题比线性问题所需要的计算机资源要高许多倍;
非线性分析步被分为许多增量步。ABAQUS通过迭代,在新的载荷增量结束时近似地达到静力学平衡。ABAQUS在整个模拟计算中完全控制载荷的增量和收敛性;
状态文件允许在分析运行时监控分析过程的进展。信息文件包含了载荷增量和迭代过程的详细信息;
在每个增量步结束时可以保存计算结果,这样结构响应的演化就可以用ABAQUS/Post显示出来。计算结果也可以用x-y图的形式绘出。
8.材料
小结:
ABAQUS包含一个广泛的材料库,可模拟各种工程材料的性质。其中包括金属塑性和橡胶弹性模型;
金属塑性模型的应力-应变数据必须用真实应变定义; 金属塑性模型假定材料具有一旦屈服即不可压缩的性质。这将对应用于弹-塑性模拟的单元类型带来某些限制;
多项式和奥根应变能函数可应用于橡胶材料的弹性(超弹性)。两种模型均允许直接用实验数据来确定材料的系数。实验数据必须是名义应力和名义应变的值;
在超弹性材料模型中的稳定性警告,说明所要分析的应变范围不合适; 存在对称性时,可以只考虑部分模型从而减小模拟的尺寸。可通过施加适当的边界条件来反映结构其余部分的效应;
大畸变问题的网格设计比小位移问题更加困难。在分析的任何阶段,网格中的单元务必不能过于畸变;
ABAQUS/Post中的*DEFINE CURVE命令允许处理曲线上的数据以生成新的曲线。两条曲线或一条曲线与一个常数可以加、减、乘、除。曲线还可以求导、积分和合并。
9.动态问题
具有下列特征的问题适于采用线性瞬态动力学分析:
系统是线性的:线性材料行为,无接触条件,无非线性的几何效应; 响应只受较少的频率支配。当响应中各频率成分增加时,例如撞击和冲击情况,振型叠加方法的效果将大大降低;
载荷的主要频率在可得到的固有频率范围内,以确保对载荷的描述足够精确;
由于任何突然加载所产生的初始加速度能用特征模型精确描述; 对系统的阻尼不能过大。小结:
动态分析包括结构的惯性效应;
*FREQUENCY可以计算结构的固有频率和振型;
通过振型叠加,可以确定线性系统的动态响应。这一方法尽管有效,但是不能用于非线性问题;
线性动态过程可以计算瞬态载荷的瞬态响应、谐振动下的稳态响应、支座移动造成的响应峰值和随机载荷的响应;
为了准确表示结构的动态行为,必须选择足够多的振型。总的等效模型质量应占可动质量的90%以上;
用户可以给定直接模态阻尼、瑞利阻尼和复合模态阻尼。但是由于固有频率和振型的计算都是基于无阻尼的结构,所以此法只适用于低阻尼结构;
模态技术不适用于非线性的动态模拟。在这种情况下必须采用自己的时间积分方法(*DYNAMIC)
*AMPLITUDE选项可以描述随时间任意变化的载荷,以及给定的边界条件; 振型和瞬态结果可以在ABAQUS/Post中用动画显示。这对于理解动态响应和非线性静态分析十分有帮助。
10.多步骤分析
小结:
一个ABAQUS模拟过程可以包含任意数目的步骤;
一个分析步骤就是一段“时间”,在这段时间里ABAQUS计算模型对一套指定载荷和边界条件的响应。这一步骤中所用的特殊分析过程确定了这个响应的特征;
在一个一般分析步骤中,结构的响应可能是线性的,也可能是非线性的; 每一个一般步骤的开始状态是上一个一般步骤的结束状态。这样,在一个模拟中模型的响应随一系列一般步骤而演化;
线性扰动步骤计算结构对扰动载荷的线性响应。这个响应的基本状态是相对于最后一个一般步骤结束时模型的状态所定义的;
在一般步骤中任何载荷选项里的OP参数(例如*BOUNDARY,*CLOAD和*DLOAD中)控制着这些选项中所指定的数值是如何与前面步骤中定义的数值相互作用的;
只要存储了一个重新启动文件就可以进行重新启动分析。重新启动文件可以用来继续一个中断的分析或者给模拟添加附加的载荷过程。11.接触
小结:
接触分析需要一个谨慎的逻辑方法。如果必要,将分析分解成几步执行,并缓慢地施加荷载,以保证很好地建立接触条件;
一般地,对分析的每一步最好采用分离步骤进行,即使只是因为载荷而改变边界条件。您几乎肯定要比预期情况应用更多的步骤,但模型则收敛得更容易。如果想一步就将所有的载荷加上,接触分析是难以完成的;
在对结构施加工作载荷之前,要在所有部件之间取得稳定的接触条件。如果必要,采用临时的边界条件,在以后阶段再消除这些约束。只要所提供的约束不产生永久的变形,对最后的结果应该毫无影响;
不用对接触面上的节点施加边界条件,即在接触方向上限制节点。如果有摩擦,不要在任何自由度上约束这些节点:可能导致零主元信息;
对于接触模拟,总要试图使用一阶单元。
第四篇:ABAQUS学习技巧总结(转帖)
ABAQUS学习总结
1.ABAQUS中常用的单位制。-(有用到密度的时候要特别注意)单位制错误会造成分析结果错误,甚至不收敛。2.ABAQUS中的时间
对于静力分析,时间没有实际意义(静力分析是长期累积的结果)。对于动力分析,时间是有意义的,跟作用的时间相关。3.更改工作路径
4.对于ABAQUS/Standard分析,增大内存磁盘空间会大大缩短计算时间;对于ABAQUS/Explicit分析,生成的临时数据大部分是存储在内存中的关键数据,不写入磁盘,加快分析速度的主要方法是提高CPU的速度。
临时文件一般存储在磁盘比较大的盘符下
提高虚拟内存
5.壳单元被赋予厚度后,如何查看是否正确。梁单元被赋予截面属性后,如休查看是否正确。可以在VIEW的DISPLAY OPTION里面查看。
6.参考点
对于离散刚体和解析刚体部件,参考点必须在PART模块里面定义。而对于刚体约束,显示休约束,耦合约束可以在PART ,ASSEMBLY,INTERRACTION,LOAD等定义参考点.PART模块里面只能定义一个参考点,而其它的模块里面可以定义很多个参考点。7.刚体部件(离散刚体和解析刚体),刚体约束,显示体约束 离散刚体:可以是任意的形状,无需定义材料属性,要定义参考点,要划分网格。
解析刚体:只能是简单形状,无需定义材料属性,要定义参考点,不需要划分网格。
刚体约束的部件:要定义材料属性,要定义参考点,要划分网格。显示体约束的部件:要定义材料属性,要定义参考点,不需要要划分网格(ABAQUS/CAE会自动为其要划分网格)。
刚体与变形体比较:刚体最大的优点是计算效率高,因为它在分析作业过程中不参与所在基于单元的计算,此外,在接触分析,如果主面是刚体的话,分析更容易收敛。
刚体约束和显示体约束与刚体部件的比较:刚体约束和显示体约束的优点是去除约束后,就可以立即变为变形体。
刚体约束与显示体约束的比较:刚体约束的部件会参与计算,而显示约束的部件不会参与计算,只是用于显示作用。8.一般分析步与线性摄动分析步
一般分析步:每个分析步的开始状态都是前一个分析步结束时刻的模型状态;如果不做修改的话,前一个分析步所施加的载荷,边界条件,约束都会延续到当前的分析步中;所定义的载荷,边界条件以及得到的分析结果都是总量。
线性摄动分析步:线性摄动分析步结束时的模型状态不会延续到下一个分析步中,例如,分析步1,4为一般分析步,分析步2,3为线性摄动分析步,则分析步2,3,4的开始状态都是分析步1结束时的模型状态;线性摄动分析步中所定义的载荷,边界条件,约束不会延续到下一个分析步当中,它只适用当前分析步;所定义的载荷,边界条件以及得到的分析结果都是相对于上个分析步的增量。
(线性摄动分析步中所施加的载荷要足够小,目的是使得模的型的响应不会过多地偏离切线模量所预测的响应值)。
9.对于难收敛的非线性的问题,可以把初始增量步设为适当小的值,例如,分析步时间乘以0.01或0.1,如果初始增量步设置得太小,会大大增加增量步数,延长计算时间;如果初始增量步设置得太大,分析会很难收敛。
10.非线性问题可以分为以下三种类型:
(1).材料非线性 即材料的应力应变关系为非线性。
(2).几何非线性 即位移的大小对结构的响应发生的影响,包括大位移,大转动,初始应力,几何刚性化和突然翻转等。
(3)边界条件非线性 即边界条件在分析过程中发生变化,接触分析是典型的边界非线性。
11.单元类型
一.非协调模式单元(I)和修正单元(M)
非协调是相对于Quad(四边形)和Hex(六面体)。
修正单元是相对于Tri(三角形)和Tet(四面体)。
非协调单元的计算精度很接近二次单元,而计算代价远远低于二次单元,但是如果单元形状较差的话,计算精度会降低。
定义了接触和弹塑性材料区域后,不要使用二次完全积分和二次减缩积分单元:如果能够划分六面体就非协调模式单元,如果不能就用四面体二次修正单元。
非协调单元不能用于ABAQUS/Explicit分析中。
12.变形缩放系数
有时候自动的变形缩放系数会比较大,造成结果变形很严重(感观上的),这时就要自己设置变形缩放系数。
13.查看最大和最小值(应力,应变,位移等等)
14.在可视化模块里可以按具体的节点编号或单元编号等等查询。
15.不收敛的处理方法
一.接触不收敛常用的处理方法:
出现不收敛时首先想到的是模型有没有问题,可以从以下几个方面着手:
<1>.检查接触关系、边界条件、载荷和约束。<2>.消除刚体位移。
(1).Automatic stabilization
(2).Unsymmetric solver
(3).General solution controls(成倍地增加5-10)
(4).Contact controls(数值采用默认就可以)
(5).Contact property
(6)use surface to surface finite sliding(7)apply a small friction(0.02)
15.按照步数来查看结果
16.对称算法与非对称算法
用对称算法不收敛,用非对称算法可以很好地收敛。17.初始增量步的大小对计算应力值与计算所需的时间影响
18.被赋予弹性和弹塑性材料的机构受到外力作用时,在外力比较小的时候,机构所受到的应力小于材料的屈服应力对于两种情况是一样的,但当外力比较大时,机构所受到的应力大于材料的屈服应力,这时弹性材料所对应的应力比较大。19.极限应力,许用应力和安全系数
由实验和工程实践可知,当构件的应力达到了材料的屈服点或抗拉强度时,将产生较大的塑性变形或者断裂,为使构件能正常工作,设定一种极限应力,对于塑性材料来说,它的极限应力为屈服强度,对于脆性材料来说,它的极限应力为抗拉强度。
考虑到载荷估计的准确程度,应力计算方法的精确程度,材料的均匀程度,以及构件的重要性等因素,为了保证构件的安全可靠地工作,应使它的工作应力小于材料的极限应力,使构件留有适当的强度储备。一般把极限应力 除以大于1的安全系数n.。
正确地选取安全系数,关系到构件的安全与经济这一对矛盾的问题。过大的安全系数会浪费材料,太小的安全系数则又可能使构件不能安全的工作。各种不同工作条件下构件安全系数n.的选取,可从有关工程手册中查到。对于塑性材料,取n.=1.3到2.0 对于脆性材料,取n.=2.0到3.5。20.从面与主面
(1).从面应该是网格划分得更密的面。
(2).如果从面与主面的网格相接近时,从面应该定义在较软的材料上。
21.关于ABAQUS的任务管理
1。ABAQUS6.4新增了任务管理的命令,可以暂停、恢复、和终止一个正在背景运行的任务,方法如下(在命令行输入并运行):
任务暂停:
abaqus suspend job=job-name
任务恢复:
abaqus resume job=job-name
任务终止:
abaqus terminate job=job-name
其中任务暂停(suspend)的时候,windows任务管理栏中仍会保留standard/explicit的计算线程,只是不再使用CPU资源,当任务恢复(resume)的时候继续工作。
任务终止则就像CAE中提交的任务的KILL功能类似,直接cut掉正在运行的任务,不可恢复。其实也就和在windows任务管理栏中强行终止差不多,但属于合法操作。
2。就是利用windos的任务管理栏了,使用它的processes管理功能时,不仅仅可以强行关掉一个正在运行的任务,还可以通过改变它的优先级别来改变其对CPU的占用程度。共有Realtime,High,AboveNormal,Normal,BelowNormal,Low 五个可选等级,windows默认的等级是Normal,此时所有的任务都在随机抢占CPU资源,一般ABAQUS在运行时想要运行别的程序就比较困难了,特别是一些大程序。在觉得机器使用时有明显的延迟时,就可以把ABAQUS任务的优先级别设的低一些,就可以腾出CPU资源给别的级别高的任务了,不用机器的时候再把ABAQUS任务的级别调上去,这样就可以娱乐、工作两不误了。
21.利用queue的功能由本地机器向远程unix机器提交abaqus作业的方法 [精华]
利用queue的功能由本地机器向远程unix机器提交abaqus作业的方法
假设:
1.远程unix机器的安装目录为/abaqus,2.远程计算机IP地址为192.168.0.166,主机名为ibmlinux
3.本地计算机IP地址为192.168.0.18,主机名为training
下面的讨论涉及的内容相应改变
Step 1 分别设置本地计算机和远程计算机之间的主机名和IP地址对应。
1.修改本地hosts文件,windows上一般位于c:windowssystem32driversetc下,unix上位于/etc下,加入远程计算机主机名和IP地址对应行,如:
192.168.0.166 ibmlinux
2.修改远程hosts文件,位于/etc下,加入本地计算机主机名和IP地址对应行,如:
192.168.0.18 training
Step 2 设置本地计算机对远程计算机运行rsh和rcp命令正确。
1.两台计算机登陆名和密码一致。举例而言,若远程计算机登陆名和密码为root/root,则设置本地计算机也用同样的用户名和密码登陆。
2.修改远程计算机.rhosts文件,该文件位于对应用户名登陆后的主目录下,如/home/root,加入本地计算机的IP地址使得本地计算机可以访问到远程计算机。
3.在本地计算机的提示符下键入
rsh ibmlinux ls
测试rsh是否能够正常使用,如果可以列出远程计算机主目录下文件,代表rsh和rcp工作正常。
Step 3 设置远程计算机该用户的默认登陆程序为csh,修改passwd文件,位于/etc下,如:
root:Ty91eFGzybEE2:0:3::/:/usr/bin/csh
Step 4 修改远程计算机的abaqus环境文件abaqus_v6.env
在环境文件最后加入
queue_name =[“nice_queue”]
after_prefix = “-b”
queue_prefix = “-q”
nice_queue = “/bin/sh-c 'nice./%S 1>%L 2>&1 &'” 保存 在提示符下面键入
abaqus fetch job=beam.inp
abaqus job=beam queue=nice_queue
如果可以顺利获得beam.odb,则表示远程计算机queue设置正确。
Step 5 修改本地计算机的abaqus环境文件abaqus_v6.env
在环境文件最后加入
def onCaeStartup():
def makeQueues(*args):
import os, driverUtils
driverName = './abaqus'
scratchDir = '/abaqus/Commands'
session.Queue(name='nice',queueName='nice_queue',hostName='ibmlinux',driver=driverName,localPlatform = NT,fileCopy=ON,directory=scratchDir)
addImportCallback('job', makeQueues)保存
Step 6 在本地计算机上启动abaqus/cae,创建或打开一个模型,在Job模块创建一个新任务,选择Run Mode为Queue,选择nice,OK,提交运算,观察是否任务被自动提交到了远程计算机的/abaqus/Commands下运行并自动返回odb文件到本地计算机。如有错误,会在启动cae的提示符窗口中出现,检查错误并找到相应解决办法。
第五篇:清华牛人的ABAQUS总结
准确的说,应该是谈谈我对发在这里的帖子质量的看法。因为专业的原因,我对有限元及其软件是有很深感情的。又因为一直对清华深有好感,可惜因为一些原因最终没有来清华深造,所以比较关注清华的BBS。写这篇文章要耗费我差不多一个完整的下午,但是我愿意。我知道学有限元其实不是一件容易的事情,我把我的想法说出来,希望对初学者有所裨益。坦率的说,我认为这里有限元板块的质量是不高的。之所以如此,是因为在这 里很多人问的问题是太简单而且对自己不负责任的。这不是版主的错,是因为我们许多人还没有养成良好的专业素养和严谨的精神。请不要轻易的否认我的这个评价,好吗?至少,现在请不要。就是对我的话不屑一顾,也应该是在看完我的话之后吧。我用我的思维方式来说话,并不是每一个人都会习惯,请见谅!我还要声明的是,我本人的水平一般般,自己也对自己有很多的不满,所以在这里说的很可能很幼稚或者有错误。请大家指教!我们应该有一个良好的讨论气氛。有限元对许多工科的人而言,其必要性和重要性不言而喻。
问题在于,应该怎样的学习它呢?学习它,至少不用它到处害人也害己的话,我觉得至少要在下面四个方面有些基本知识:
1、有限元基本理论及其求解基本步骤(数学基础);
2、有限元专业英语(英语基础);
3、你自己所属专业的东东(专业基础);
4、几何造型及拓扑学知识(建模基础)。
这个排序是由重到轻的。接下来,我首先说一说上面四个方面的意义和作用;之后谈一下为什么我认为在这里问的相当一部分问题是太简单而且对自己不负责任的。
1、做专业就要有做专业的样子。咱们理工科的学生,没有辛苦的付出是不可能 有真正收获的。收获和付出在这里成正比。常常有人觉得有限元的软件很难,不好学,不好用,很多东西搞不懂,一提就头痛。其实这里面相当的一部分是有限元基本理论可以解决的问题,而不是软件的设计思想不好。现在的商用有限元软件,比如我用过的abaqus,ansys,adina以及algor,应该说它们的界面已经很友好了,包括帮助文档等等都不错。很大程度上使用者的问题是使用者自己对有限元基本理论漠不关心造成的。比如,许多人不清楚ansys里面几何信息如keypoint、line、area等到底和有限元模型是什么关系,其实他们和有限元模型没有任何必然的联系。它们只是软件为了方便建立有限元模型而提供的中间手段。又如二维的实体单元(2-D solid element)和三位空间的壳单元(shell element)有什么区别?从根本上说,两者的自由度不同。这样的概念在几乎任何一本有限元书籍中一开始不多久就会提到。只要你有弹性力学的基本知识,看这些应该不会很难的。但是,当遇到问题的时候,你考虑过是自己的有限元基本知识不够吗?
2、有限元理论完全可以看中文的书籍了。但是,学习有限元软件仅仅有中文是不够的。当前我们使用的大型有限元软件几乎都是欧美的产品。他们几乎无一例外都用英语。为了解决这个语言上的问题,国内已经出了不少有限元软件方面的中文使用参考书,其中尤以讲述ansys的书最多最滥,害人不浅!虽然每一本这样的书上都赫然写着作者的名字,但是只要你稍微耐着性子坚持看一段ansys的英文联机帮助,你就会明白,那些中文的ansys使用参考书其实就是把帮助文档的某些部分翻译过来ok。这样的作者其实还有一个名字——“贼”。因为这样的书以及这样的人的存在,所以如果你长期坚持看那样的中文书,你就被害了。原因很简单,那些书所能提供的内容,你在软件英文帮助里面很快其实就可以学到。如果有问题,英文帮助文档解决不了,那么我敢打赌,你看的那些国内“名家”的“著作”也绝对会亵渎你的眼球;很多人不习惯看英语的帮助,反而习惯看中文的那些书,原因大致是对自己的英语信心不足,还有一开始对中文的依赖造成的。久了你就会发现,不接触那些英语,你想继续前进是不可能的。当然,有两点要说明,一是,在刚刚开始的时候你可以看看中文的使用参考书,但是越早使用英语越对你有利,二是,一开始你觉得看英语帮助很难,问题往往不是语言本身的问题,而是你对有限元基本理论的陌生造成的。这个时候看中文的使用参考你还是不懂的,应该看有限元的书。
3、有限元可以解决很多问题。简单的说,凡是关于连续介质的问题,它差不多都是可以解决的。所以,电磁场问题、力学场问题(包括固体力学、流体力学)、温度场问题以及耦合问题等等,在进行计算机数值分析模拟的时候,有限元往往会成为首选。因此,不同专业的人在使用有限元的时候,当然要理解自己的专业了。不过,这个许多人不会出大毛病,就不废话了。(呵呵,别人的专业其实我也废话”不了,偶不懂嘛^_^)。还是要提醒一点,将自己专业问题抽象成有限元模型,还是要小心严谨为好!
4、最好还要知道一点几何造型以及拓扑学知识。这么说吧,在用ansys建模的时候,如果你是在三维空间里先建立几何模型,然后以它为基础建立有限元网格,那么你可能会因为在有的地方很难剖出六面体的网格而头痛,以至你不得不用“free mesh”来生成你自己看了都觉恶心的网格。那么,什么样的几何模型可以剖出良好的网格呢?要把事情做的像样,仅仅知道几何形体的形状不要太畸形这一点是不够的。你知道“拓扑结构不变性”以及“拓扑结构不变量”不?要是知道了,你的建模思路就会比较理性、清晰。而这些知识,你可以参考拓扑学的相关书籍。苏步清老先生在几十年前写过一本很薄的书,讲拓扑学最基本的知识,写的很生动、通俗。要不,哥们(或者美女傻冒)您老人家也看看? 下面说一下为什么我认为在这个板块问的相当一部分问题是太简单而且对自己不负责任的。有暴力倾向并且不怕大侠我报复的,而且想对号入座的家伙,可以去找砖头了,呵呵。我不是反对使用网络,我反对的是使用网络不负责任的对待自己。比如说,有人问了这样的问题:
请问:下面这个警告什么意思?
*** WARNING *** CP= 16348.630 TIME= 19:44:35
Small equation solver pivot term= 3.698915243E-04 encountered at UY DOFof node 108112.Check for an insufficiently constrained model.我知道这是怎么回事。因为这段英语说的清清楚楚:Check for an insufficiently constrained model!——检查你的模型,因为这个模型的约束
不够。并且这段英语还指出是108112号节点y方向的自由度约束不够。这段警告信息言简意赅,你让我如何再来添油加醋的回答“下面这个警告什么意思”?如果你不知道自己的约束到底错在哪里,而希望在网上有人准确的回答,那么应该是不可能的。因为引起这个警告信息的原因很多。接触问题、约束方程的问题、位移约束 的问题等等都可以引发这个警告。在网上没有人知道你的模型是分析什么问题的模型,所以面对这个警告,除了把它翻译成汉语之外,又能给你多少帮助呢?网上确实有高手,但是网上没有算命先生,更没有能掐会算的神仙。我的意思是说,不是不能问问题。而是应该学会问问题。不要脱口就问,要想一想,你问的问题就算有人懂,那么他能以什么样的方式回答到什么样的水平,尤其是在距离你可能千里之遥的网络上。这是在说应该会问问题。我知道很多问问题的人是因为身边没有合适的人可以请教,或者事情很急,就想到了理论速度为每秒30万公里的网路。可是,古人的一句话却经常被人遗忘:“欲速则不达”。当你急得冒汗的时候,请想一想,为什么就是你急呢?为什么你现在才急呢?你越是试图用网络在几秒钟的时间里解决专业问题,越是说明你是浮躁的,没有严谨的专业治学精神。如果你不是专门搞计算机的,而你的机子中毒了,那么你当然可以在网上求助。如果你是学数学的,而还没有mm关注过你,你也可以在网上求教。但是如果你是解决有限元专业问题而试图在网上三下五除二的搞定,错的人是你。因为那是不可能实现的。别人可以告诉你高斯点的位移和单元位移是不同的,但是别人无法在网上使你明白位移有限元法的前因后果。别人可以一句话说你的温度场问题有必要和 "力学问题进行有限元耦合分析,但是很难有人在网上可以使你明白你的有限元模型抽象的是否合适。别人可以告诉你采用abaqus进行本构关系的二次开发应该注意哪些问题,但是当你一开始工作的时候,你还是会一头雾水。简单些说,别人可以给你指个方向,但是别人无法帮你走过本该属于你去走的路。如果你提出问题只是想得到他人方向性的指点,从而避免南辕北辙的危险,那 么你是聪明的;但是如果你在细节上出现问题就尝试依靠别人帮助你,那只能说明 你还没有学会走路。这个时候的你看似聪明,实际上却失去了在困难中得到磨练和感悟的机会,朋友,这样的话你在日后的道路上可以走多远? 如果你急得连静静的啃啃书本的时间都没有了,恨不得直接有人带你飞跃专业上的万水千山,那说明你本来就没有认真的准备过。不要期望在专业知识和水平上有暴发户。无论你长得多么漂亮,也必须付出理性和长期的努力才可能成为专业上的“模特”。