清华大学Abaqus论坛精华贴(simwe)
清华大学Abaqus论坛精华贴(simwe)

【在 luxz (panda) 的大作中提到: 】: 哪位有什么好办法?: 感觉abaqus自己的前处理用得很不爽: patran可以么?我感觉abaqus/cae不错的呀,实体建模颇有pro/e的风格感觉patran也好不到哪去,太麻烦,也许patran功能更强一些(要不然也对不起它那硕大的身躯呀), 但对于不是很庞大的模型,根本体现不出来什么优势: air1大侠,本人给你作广告,为何不可?: 请问:弹塑性矩阵【D]与ddsdde有何联系,: 你用过板壳单元吗?stress=D*stran?d(stress)=ddsdde*d(stran)--那应该就是一样的,因为全量理论,Sij=DijklEkl(满足张量求和约定)即Stress=D*Strain;而在增量理论中,△S=D*△E(在有限变形中,△其实应该为应力的客观率)--似乎不对吧大变形下此D非彼D你看过黄克智的固体本构关系这本书么如果你从全量理论和增量理论的角度上讲那似乎第一个Digkl就不对你有第一个式子么如果有,求导不久完了?: 那应该就是一样的,因为全量理论,: Sij=DijklEkl(满足张量求和约定): 即Stress=D*Strain;: 而在增量理论中,: △S=D*△E(在有限变形中,△其实应该为应力的客观率)是啊,大变形下的[D]与普通意义下的[D]在构型上是不一样的,毕竟[D]大是变形历史的函数,而[D]小则不是,我推导一种新的本构关系,△Sij=Dijkl△Ekl (其中△为Jaumann率)假设材料一开始就屈服(即屈服面为0)想用壳单元,: 似乎不对吧: 大变形下此D非彼D: 你看过黄克智的固体本构关系这本书么: 如果你从全量理论和增量理论的角度上讲: 那似乎第一个Digkl就不对: 你有第一个式子么: 如果有,求导不久完了?: 是啊,大变形下的[D]与普通意义下的[D]在构型上是不一样的,: 毕竟[D]大是变形历史的函数,而[D]小则不是,: 我推导一种新的本构关系,: △Sij=Dijkl△Ekl (其中△为Jaumann率): 假设材料一开始就屈服(即屈服面为0): 想用壳单元,唉,别提了,问题就出在,在abaqus中,明明写着可以考虑剪切效应,可我打印出剪切力个数是,nshr=1,即只有S12,那我的S13,S23就不知怎么计算,(DDSDDE(5,5)无法计算,因为ntens=3,最多只能计算DDSDDE(3,3))你编umat编进去不久行了他让用NDI,NSHR,NTENS表示变量,你就用这些表示变量这样他就可以任意的计算了呀,而不在意实际计算的变量数: 唉,别提了,问题就出在,在abaqus中,明明写着可以考虑剪切效应,: 可我打印出剪切力个数是,nshr=1,即只有S12,: 那我的S13,S23就不知怎么计算,: (DDSDDE(5,5)无法计算,因为ntens=3,最多只能计算DDSDDE(3,3))因为我的UMAT从abaqus传来的变量(当我选用壳单元时)ntens=3, ndi=2,nshr=1,这样的话,STRESS为3个,STRESS(3),不可能计算STRESS(4),STRESS(5),同理,STRAIN,DDSDDE也存在同样的情况在中厚度板壳元中(MINDLIN)中,DDSDDE为5×5你的FOR文件收到,可惜研究的对象相差太大,看不懂!不过你在文件中定义的变量有的根本就没有用到,还有有的地方似乎是毫无用处的代码,比如:SMISES一段我觉得你不应该太急,第一步应该保证代码的正确性。
abaqus(网站上找的内容)

ABAQUS是一种有限元素法软件,用于机械、土木、电子等行业的结构和场分析。
ABAQUS早年属于美国HKS 公司的产品,于2000年代中期卖给了达索公司,该软件又被称为达索SIMULIA。
ABAQUS非常适合用作科学研究。
ABAQUS的名称来自abacus,英文为计算器、算盘之意。
ABAQUS早年的logo就是一把中国人常用的算盘,后来logo有所变化,但是仍然可以看到算盘珠的影子。
基本介绍真实世界的仿真是非线性的,SIMULIA将成为模拟真实世界仿真分析工具,它支持最前沿的仿真技术和最广泛的仿真领域.SIMULIA为真实世界的模拟提供了开放的,多物理场分析平台。
SIMULIA将同CATIA ,DELMIA一起,帮助用户在PLM中,实现设计,仿真和生产的协同工作。
它将分析仿真在产品开发周期的地位提升到新的高度。
ABAQUS 包括一个丰富的、可模拟任意几何形状的单元库。
并拥有各种类型的材料模型库,可以模拟典型工程材料的性能,其中包括金属、橡胶、高分子材料、复合材料、钢筋混凝土、可压缩超弹性泡沫材料以及土壤和岩石等地质材料。
作为通用的模拟工具,ABAQUS 除了能解决大量结构(应力/ 位移)问题,还可以模拟其他工程领域的许多问题,例如热传导、质量扩散、热电耦合分析、振动与声学分析、岩土力学分析(流体渗透/ 应力耦合分析)及压电介质分析。
ABAQUS 为用户提供了广泛的功能,且使用起来又非常简单。
大量的复杂问题可以通过选项块的不同组合很容易的模拟出来。
例如,对于复杂多构件问题的模拟是通过把定义每一构件的几何尺寸的选项块与相应的材料性质选项块结合起来。
在大部分模拟中,甚至高度非线性问题,用户只需提供一些工程数据,像结构的几何形状、材料性质、边界条件及载荷工况。
在一个非线性分析中,ABAQUS 能自动选择相应载荷增量和收敛限度。
他不仅能够选择合适参数,而且能连续调节参数以保证在分析过程中有效地得到精确解。
给simwe论坛新手的一些建议和经验

四大要务第一要务:学习如何发帖研读《ABAQUS版发帖必读》和《ABAQUS版版面小提示【新手必看】》,学会如何发帖。
“入乡随俗”是世间和谐的铁律。
所以你初来aba版第一件事应该是看这两贴。
有人用“紧急求助”“救命”为题,让人很是生气:别人光看题目也不知道你是什么问题,就算解决了也不能为后人搜索到。
所以,题目一定要显示问题之所在。
另外,论坛规则,不得讨论盗版问题,也请大家遵守。
第二要务:下载顶置的《ABAQUS常见问题汇总-2.0版》这是aba-aba斑竹根据常见问题而精心总结的,也是论坛里面各位高手集体智慧的结晶。
就我的经验,新手所提的大部分问题都能在其中找到解决方案,这样的话,节约了版面,也使问题解决的速度加快,利版利民!我以前也发过一些2.0里面有板书的帖子,后来仔细读了2.0,对它佩服的五体投地,真实我们新手的指明灯啊!有时,有些简单问题高手不高兴搭理,就是因为这类问题被问过太多次,比如如何给实体单元加弯矩啊(实体单元没有转动自由度得先建reference point,然后耦合);如何施加随时间变化的载荷(amplitude)2.0中有板书。
第三要务:版内搜索和第二步一样,很多问题早已经得到解决,所以遇到问题(称之为你的“盲点”)可以先版内搜索,一样是加快问题解决速度。
而且,这样你还会发现一个“副产品”:由于同样是这个问题,别人提起的方式和角度不一样,各位高手解答的方式和角度也是各异(虽然异曲同工),你都浏览一次,能使你对这个盲点有全方位的认识!盲点快速变成两点。
比如你的帮助文件不能搜索了该怎么办?(我总结过一次)。
出现“应变速度大于波速”怎么办?----版上已经有Robert大侠的总结了,新手多半是第一条(单位问题)。
第四要务:学会看帮助文件Documentation其实帮助文件时最好的辅导教材,可惜是English版,很多人望而生畏(包括我),在论坛下载了好多中文的书籍和例子学习,后来经论坛里面的各位版主提醒就硬着头皮去看Documentation。
abaqus6_11常见问题及解决办法

1.abaqus如何调整图例的大小,就是云图左上角那个图框,字太小了 看不清!!直接设置图例的字体大小就可以: 工具栏viewport>viewport annotation options>legend(选项卡)>text(选项)>set font(按钮)>size,修改size选项中的数字,就可以修改图例大小了。
2.cohesive element ABAQUS在6.11使用cohesive element,定义cohesive材料属性的时候主要步骤:1.定义一个材料的名字,比如cohesive,不要去定义任何属性(弹性,弹塑性等等)。
2.打开工具栏model--edit keywords,在inp中手动添加材料的各种属性。
PS: 定义section的时候选cohesive,element control选sweep,element type选cohesive,这些是使用cohesive element的基本步骤。
zero thickness的cohesive section设定abaqus所谓的zero-thickness,其实就是定义cohesive section的initial thickness=1.0。
你可以在定义section的时候定义(specify),也可以用系统默认的thickness(也是1.0),这样有关cohesive element 的计算当中,就有displacement(位移)=strain(应变)*thickness ( 1.0 )=strain的数值。
我们知道从1914年Ingless和1921年Griffith提出断裂力学开始,一直到60年代都停留在线弹性断裂力学(LEFM)的层次。
后来由於发现在裂纹尖端进入塑性区后用LEFM仍然无法解决stress singularity的问题。
1960年由Barenblatt 和Dugdale率先提出了nonlinear/plastic fracture mechnics的概念,在裂纹前端引入了plastic zone,这也就是我们现在用的 cohesive fracture mechnics的前身。
abaqus自己遇到问题汇总

Too many attempts made for this incrementThrere may be many factors that you should check. Some of them you might want to check predominantly are,1_Material properties and equivalency of units 2_ Mesh size and type 3_Boundary conditions 4_constraints such as rigid body motion 5_Step size and no of increments Also look in Abaqus documentation for Common problems in convergence of solution.自己的问题是由于模型没有出现几何非线性,不需要将Nlgeom设置为ON,我自己的做法大大增加了分析收敛难度。
下面这个问题我在SIMWE论坛里,看到,然后在百思论坛也看到, 发帖人是07年12月求助,到08年1月中旬都没人帮他解决啊.本人看到,于是粘贴下来.今天谈谈我的看法.问题:关于HETVAL子程序flux定义,通过自己编写的程序(fortran)盘算了每个单元的生热率,盼望将该盘算成果调入abaqus子程序中,并将该值赋给HETVAL子程序中的flux1变量,作为传热分析中每个单元的内热源,请教研发网的朋友怎么样给每个单元分辨赋给内热源呢?帮助文档的例子中好像是对某个材料赋给内热源的(*heat generation, HETVAL),要给每个单元的生热分辨赋值该怎么做呢?查下载说通过UEXTERNALDB子程序可以将外部成果调进来,查赞助文档没有找到有关可以把外部成果调进来的例子,不知哪位有这方面的经验或者例子, 马上要交论文了,可是温度场还没算出来,请大家帮帮忙!!!!!多谢了!论坛回答:(1)要给每个单元的生热分辨赋值就对每个单元定义material,在abq中,*heat generation被视为材料的特点,故*heat generation不同,就得定义多种材料.我的回答: simwe仿真论坛的回答固然没有错,但是谁会去为为一个单元定义一个集合,再去给只有一个单元的集合赋予材料属性呢??论坛上高手众多,我不知为什么就没人去回答这个问题,是他太简单了吗?未必吧.就算简单,但是在别人看来,却是困难,我们应该尊重别人的困难,虽然可能在你看来不是什么了不起的事.我在这里有个笨方法,一定可以成功的.第一,生热率的云图可以用UVARM输出.怎么将每个单元的生热率赋给指定的单元呢?请看:SUBROUTINE UVARM(UVAR,DIRECT,T,TIME,DTIME,CMNAME,ORNAME,1 NUVARM,NOEL,NPT,LAYER,KSPT,KSTEP,KINC,NDI,NSHR,COORD,2 JMAC,JMATYP,MATLAYO,LACCFLA)NOEL为单元编号,即模型中单元的标签号,你可以这样if(NOEL==269) thenuvar(1)=160else if......elseuvar(1)=80end if这样就可以指定生热率给指定的单元.我这只是个简单的示范,其实可以while循环最佳啊生热率具体数值其实也可在这里生成,具体的程序还没有.熟悉FORTRAN的人都可以做出来.要用到输入输出代码.第二,还有一个是温度分析.hetval.其FLUX定义,也可借鉴上面的方法.SUBROUTINE HETVAL(CMNAME,TEMP,TIME,DTIME,STATEV,FLUX,1 PREDEF,DPRED)HETVAL是没有NOEL这个参数的.但是要注意查看他的文档.can be used in conjunction with user subroutine USDFLD if it is desired to redefine any field variables before they are passed in; and它是可以和USDFLD连用的,如果变量在传入HETVAL之前,需要用USDFLD进行重定义.而USDFLD函数定义如下:SUBROUTINE USDFLD(FIELD,STATEV,PNEWDT,DIRECT,T,CELENT,1 TIME,DTIME,CMNAME,ORNAME,NFIELD,NSTATV,NOEL,NPT,LAYER,2 KSPT,KSTEP,KINC,NDI,NSHR,COORD,JMAC,JMATYP,MATLAYO,LACCFLA)这里有NOEL.而且它还可以调用辅助函数GETVRM.功能强大.第三,生热率的应力应变从文件中直接输出.在CAE中用report也可,在inp中用命令EL PRINT输出到DAT文件中也可以.经过一些处理(线性插值,傅里叶变换等),然后用FORTRAN程序去读取.在这里有个技巧就是单元数据有多个数据项,一个单元号,六个应力值,六个应变值,最好用TYPE和MODULE将其封装起来(结构体中最好把其应力应变的关系函数的值也定义一个量).调用起来才不乱.这是我最近查阅ABAQUS文档,学习FORTRAN,再加上论坛上晃荡,和思考所得的一些东西.敬请受用.希望对大家能有所助.关于子程序UVARM,HETVAL,USDFLD以及辅助函数GETVRM具体细节和应用,等过段时间, 有时间我用具体例子,再细细说来.敬请期待.Hetval 子程序丢失的问题:由于自己材料设置有误多设置了一个HEAT GENERATIONTime increment required is less than the minimum specified??????????出现这个错误可能是多方面原因造成的,你可以采用排除法逐个因素去找1.可以把初始增量步最小增量步调小,最大增量步的数目调大。
hypermesh与abaqus接口问题

新手在使用hypermesh与abaqus接口问题的过程中,或多或少都会出现一些问题,本贴搜罗了大部分论坛以前关于此方面的问题,再加上笔者在学习过程中的一些心得体会,希望能给很多朋友带来帮助,更希望SIMWE论坛能越来越好。
笔者认为要能够处理好两个软件的接口问题,必须对两个软件都有一定的了解。
论坛上很多问题都是由于初学者对软件某个局部操作出现问题,导致导出模型出错,这些操作上的问题笔者觉得可以通过看一些高手的做的模型例子或视频来不断提高。
本篇可能不涉及太多这方面的问题。
为了使读者能够最快捷的学习,笔者从原来论坛的问题中只搜索一些精华和常见的问题,版权归SIMWE广大斑竹和热心提问、回答者。
本篇没有采用连接网页方式,这样不利于下载,笔者辛苦一点,将其归于WORD文档,方便大家下载,离线学习。
(接口问题相较于其他版块,问题相对较小,所以也便于此种方法)有限元分析的步骤:一般来说,步骤是:前处理(3D软件至HM):几何建模——模型处理——网格划分——材料属性单元类型边界约束;求解器:ABA;后处理:HM OR ABA。
(本文仅对HM,ABA讨论,其实软件很多的)在HM中加载ABA模板:HM中提供了跟很多软件的接口模块,与软件之间实现互通,由于各软件之间在划分网格,约束、加载过程都有些差异,所以各模块都有些差别,正确选择模板是成功实现软件对接的第一步。
在HM中处理好网格模型后可以使用中性文件导入ABAQUS,常用的是INP格式。
常见问题:如果没有采用ABA user profile,很多对应的单元类型,材料属性可能不能与ABA对应起来,导入至ABA会出现很多错误或警告。
几何模型处理、网格划分:几何模型处理、网格划分相关问题,请读者到相应的版块去看,如果导入ABA,出现网格划分失败的问题,最好检查一下HM中的网格模型,划分好网格才是计算中关键的一步。
定义单元类型,材料属性:不是所有的类型HM和ABA都能同时识别的,例如ABA只支持SPRING1而不支持SPRING2。
ABAQUS常见问题汇总 - 1.0版

ABAQUS常见问题汇总 - 1.0版作者:aba_aba2006.06.14在SIMWE论坛注册5个月以来,在ABAQUS版回帖860篇,知无不言,言无不尽。
在此整理一下,以方便大家查找。
下面绝大多数是我的回帖,有少部分是其他网友的回答,都注明了作者。
下面只摘录了帖子中的一些主要内容,有些地方可能上下文不太连贯,完整的讨论请大家根据相应链接去论坛上察看。
如果这些内容对你有帮助,希望你也能常上论坛来回答一下别人的问题。
众人拾柴,火焰才高。
目录点击小节标题,可以跳到相应的内容(有些WORD版本可能需要按住ctrl键)1. 论坛提问要诀 (4)2. 故障诊断基本方法 (4)3. 约束刚体位移 / NUMERICAL SINGULARITY (4)4.过约束(Overconstraint) (7)5.其他常见error和warning信息 (7)6.ABAQUS无法运行(安装、License、环境变量) (10)7.弹塑性分析 (14)7.1 塑性问题不收敛的常见现象 (14)7.2 接触问题和塑性材料不要用二阶单元 (14)7.3 不要在塑性材料上施加点载荷 (15)7.4 塑性材料参数 (15)7.5 屈服准则 (18)7.6 后处理 / 判断材料是否屈服 (20)8. 接触分析 (22)8.1 接触分析不收敛的常见现象和解决方法 (22)8.2 接触面上的网格密度 (22)8.3 接触面的法线方向 (23)8.4 过盈接触 (23)8.5 管土/桩土接触 (25)8.7 凹坑成型的接触问题 (34)8.8 刚体穿透 (37)8.9 接触力 (37)8.10 Explicit中的接触问题 (38)8.11 改变接触状态 (40)8.12 其他与接触有关的Error和Warning信息 (41)9. 各个量的单位 (42)9.1 各个量的单位要相互一致 (42)9.2 时间/增量步的含义 (44)10.导入 / 修改 / 求解inp文件 (45)10.1 把inp文件导入ABAQUS/CAE (45)10.2 运行inp文件 (46)10.3 修改inp文件 (47)11.用户子程序和FORTRAN (49)12.创建/修改part (50)13.在Assembly中定位 (51)14.划分网格 (52)15.选择单元类型 (54)16.截面属性和材料 (56)16.1 定义截面属性 (56)16.2 用OFFSET参数偏置shell的中性面 (57)16.3 材料属性 (57)17.载荷 / 速度场 (58)17.1 集中力 (58)17.2 线载荷 (59)17.3 面载荷 (60)17.4 Body Force / Gravity (60)17.5 随时间变化的载荷 / Amplitude (61)17.6 在实体单元上施加弯矩 / 旋转速度 (62)18.边界条件 (67)19.定义Set / 选取模型的局部 (67)20.弹簧 (68)21.约束(coupling, tie) (68)22.后处理 (69)22.1 显示局部坐标系上的结果 (69)22.2 绘制曲线(X–Y data) (69)22.3 field output / history output (70)22.4 显示结果 (71)22.5 输出shell积分点上的应力和应变 (73)23.多步骤分析 (74)23.1 重启动分析(Restart) (74)23.3 用*import 把计算结果传递到下一个过程中 (74)24.岩土分析 (75)24.1 初始地应力平衡 (75)24.2 基坑开挖 (77)24.3 钢筋混凝土(Rebar Layer和Embedded Element) (77)24.4 实体单元的截面力/弯矩/转角 (78)24.5 软土固结 (80)25.热分析 (81)26.动态分析 (83)26.1 Explicit分析 (83)26.2 分析结果与amplitude不一致 (84)26.3 固有频率 (84)26.4 *DYNAMIC分析 (85)27.屈曲分析 (86)28.裂纹 (87)29.连接单元(CONNECTOR) (88)30.惯性释放(INERTIA RELIEF) (88)31.非线性问题的算法 (89)32.ABAQUS和其它软件的比较 (89)33.使用ABAQUS帮助手册 (90)34.论坛的“全文搜索”功能 (90)35.关于找枪手 (91)1. 论坛提问要诀在论坛上的提问是否能够得到解答,在很大程度上取决于提问的方式。
ABAQUS学习零碎笔记(转自Simwe)

1.接触中设置Adjust的理解:这个命令主要还是用来初始化接触的。
在分析开始之前,调整接触面中节点的初始位置,且不产生任何应力和应变。
在分析过程中,由于残留的初始过盈引起的应变将被施加在接触面上。
模型的尺寸往往会存在数值误差,所以设置一个位置误差限度,用来调整从面节点的初始坐标,ADJUST=位置误差限度,其含义是:如果从面节点与主面的距离小于此限度,ABAQUS将调整这些节点的初始坐标,使其与主面的距离为0.这种调整不产生任何压力、应力、应变。
Explicit不允许接触表面的初始过盈,分析开始前,接触面上的节点将被自动调整,以删除任何初始过盈,在随后的分析中,这样的调整将引起应变。
2.使用INTERFERENCE(干涉)来定义过盈接触:Edit Interaction》底部Interference fit负值表示过盈量,正值表示间隙量。
类似于载荷,只能在后续分析步中定义,不能在初始分析步中定义。
3.CLERENCE(间隙)可以定义两个接触面之间的初始过盈量和间隙量,它只适用于小滑移,并且不需要使用ADJUST来调整从面节点的初始位置。
4.特征:记录了设计目的,并包含几何信息,同时也是管理几何体的行为的规则。
ABAQUS中导入的几何体是没用特征的,要删除不重要的细节。
5.View=》ODB Display Options =》Sweep and Extrude6.CPRESS接触压强7.COPEN从面上节点与主面的距离8.ALE自适应网格:Step=>Other=>Adaptive Mesh Domain9.计算代价估算:隐式:自由度数目的平方显式:自由度正比10.软接触:用指数或者表格形式表达的应力-距离关系11.传说ABAQUS默认的幅值曲线是从1下降到0的。
是吗?我觉得6.9的版本好像不是这样。
给一个棱柱施加扭转力矩,载荷采用Ramp,变形是逐步增大的。
12.Visualization》Tools》Job Diagnostics13.修改严重不连续迭代尝试次数:Step>Other>General Solution Controls>Edit>Specify>Time Incrementation>More>Is>1214.接触问题中,90度圆角至少划分是个单元。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
【在 luxz (panda) 的大作中提到: 】: 哪位有什么好办法?: 感觉abaqus自己的前处理用得很不爽: patran可以么?我感觉abaqus/cae不错的呀,实体建模颇有pro/e的风格感觉patran也好不到哪去,太麻烦,也许patran功能更强一些(要不然也对不起它那硕大的身躯呀), 但对于不是很庞大的模型,根本体现不出来什么优势: air1大侠,本人给你作广告,为何不可?: 请问:弹塑性矩阵【D]与ddsdde有何联系,: 你用过板壳单元吗?stress=D*stran?d(stress)=ddsdde*d(stran)--那应该就是一样的,因为全量理论,Sij=DijklEkl(满足张量求和约定)即Stress=D*Strain;而在增量理论中,△S=D*△E(在有限变形中,△其实应该为应力的客观率)--似乎不对吧大变形下此D非彼D你看过黄克智的固体本构关系这本书么如果你从全量理论和增量理论的角度上讲那似乎第一个Digkl就不对你有第一个式子么如果有,求导不久完了?: 那应该就是一样的,因为全量理论,: Sij=DijklEkl(满足张量求和约定): 即Stress=D*Strain;: 而在增量理论中,: △S=D*△E(在有限变形中,△其实应该为应力的客观率)是啊,大变形下的[D]与普通意义下的[D]在构型上是不一样的,毕竟[D]大是变形历史的函数,而[D]小则不是,我推导一种新的本构关系,△Sij=Dijkl△Ekl (其中△为Jaumann率)假设材料一开始就屈服(即屈服面为0)想用壳单元,: 似乎不对吧: 大变形下此D非彼D: 你看过黄克智的固体本构关系这本书么: 如果你从全量理论和增量理论的角度上讲: 那似乎第一个Digkl就不对: 你有第一个式子么: 如果有,求导不久完了?: 是啊,大变形下的[D]与普通意义下的[D]在构型上是不一样的,: 毕竟[D]大是变形历史的函数,而[D]小则不是,: 我推导一种新的本构关系,: △Sij=Dijkl△Ekl (其中△为Jaumann率): 假设材料一开始就屈服(即屈服面为0): 想用壳单元,唉,别提了,问题就出在,在abaqus中,明明写着可以考虑剪切效应,可我打印出剪切力个数是,nshr=1,即只有S12,那我的S13,S23就不知怎么计算,(DDSDDE(5,5)无法计算,因为ntens=3,最多只能计算DDSDDE(3,3))你编umat编进去不久行了他让用NDI,NSHR,NTENS表示变量,你就用这些表示变量这样他就可以任意的计算了呀,而不在意实际计算的变量数: 唉,别提了,问题就出在,在abaqus中,明明写着可以考虑剪切效应,: 可我打印出剪切力个数是,nshr=1,即只有S12,: 那我的S13,S23就不知怎么计算,: (DDSDDE(5,5)无法计算,因为ntens=3,最多只能计算DDSDDE(3,3))因为我的UMAT从abaqus传来的变量(当我选用壳单元时)ntens=3, ndi=2,nshr=1,这样的话,STRESS为3个,STRESS(3),不可能计算STRESS(4),STRESS(5),同理,STRAIN,DDSDDE也存在同样的情况在中厚度板壳元中(MINDLIN)中,DDSDDE为5×5你的FOR文件收到,可惜研究的对象相差太大,看不懂!不过你在文件中定义的变量有的根本就没有用到,还有有的地方似乎是毫无用处的代码,比如:SMISES一段我觉得你不应该太急,第一步应该保证代码的正确性。
另外看了你上面的讨论,我觉得你应该换一种单元试一试。
比如用梁单元。
很有可能NDI和NSHR会不一样。
不知道你是不是一定要用到壳单元上?如果必须用在壳单元上,可能S23,S31就必须自己在UAMT中输出了。
具体的做法我也不清楚。
还有对DDSDDE,我的理解也是: dS=DDSDDE*dE我的意思是不管他是几乘几的矩阵一般的D矩阵就是6*6你编的umat需要适应于任何单元所以当然6*6的矩阵应该给完全当算体的时候如果是壳单元,他只有ntens=3那就等于三呗,他用哪个就是哪个反正你的D6*6的矩阵放在哪了如果是三维实体单元,ntens=6所以你的D矩阵就全用上啦记住你编的umat应该适应于所有的单元,所以不用考虑哪几个参数的值而且这个stress(3)也许是人家只用到了你D6*6的第一行,第二行,和的四行哪sigh不知道我说明白了没有: 因为我的UMAT从abaqus传来的变量(当我选用壳单元时)ntens=3,: ndi=2,nshr=1,这样的话,STRESS为3个,STRESS(3),不可能计算: STRESS(4),STRESS(5),同理,STRAIN,DDSDDE也存在同样的情况: 在中厚度板壳元中(MINDLIN)中,DDSDDE为5×5对于DDSDDE,其实就是给了一个应力应变的斜率,我感觉真正计算的是利用更新的应力,DDSDDE我觉得就是为了确保收敛真开心有这么多人讨论ABAQUS,特别是umat我国外的师兄说Umaterial在国外应用得也很广: 对于DDSDDE,其实就是给了一个应力应变的斜率,我感觉: 真正计算的是利用更新的应力,DDSDDE我觉得就是为了确保收敛: 真开心有这么多人讨论ABAQUS,特别是umat: 我国外的师兄说Umaterial在国外应用得也很广各位大侠,看到我提出的uamt,及statev有这么多人感兴趣,实在很高兴,希望大家能把摸索到的东西介绍给大家,现在我的程序能通了,(因没有屈服面的概念),虽然结果是错误的,但总可以静下心来,不像以前一运行自己的umat程序就standard.exe error.(并且程序.dat.msg.中无任何错误信息,log说error see msg,but msg中无)。
现在我明白了,在用户程序中,WRITE(*,*)则写入log,write(6,*)则写入dat,等,在监控程序时,发现,statev(),是每次迭代和增量运行它,他就为0,还是为上一步的值,因为我每次都为0,怀疑有误还望大侠提醒!: dat,等,: 在监控程序时,发现,statev(),是每次迭代和增量运行它,他就为0,应该不是0,如果在每个增量步的最后你重新更新过他输入文件*.inp中,*depvar不要忘了写statev()的维数哦!: 还是为上一步的值,因为我每次都为0,怀疑有误: 还望大侠提醒!--你只有一个单元么?【在 saturn (好好工作) 的大作中提到: 】: ~!~~~~~~~~~~~~~~~~~~~~~~~~~~~~这我以前还不知道: 应该不是0,如果在每个增量步的最后你重新更新过他: 输入文件*.inp中,*depvar不要忘了写statev()的维数哦!--【在 air1 (无影如风※勤奋羊羊※课题在即) 的大作中提到: 】: 可是这个写的命令有用么: 对于输出而言: 你只有一个单元么?已经写了,定义了statev的维数,*depvar20,看来我的错误不在statev,因为我的输出显示在第三增量步中,statev不为0,但我还是有些不清楚uamt程序的执行过程,比如,一板一次壳元s4r,面内采用缩减积分,即1×1,厚度方向为5点simpson 积分,按道理,没一增量步的迭代步,对每一积分点都会运行一次umat,即上问题,每一迭代该运行5次,那上面的statev,是每次迭代都会改变(不是每次运行)?请air1,beauty_life,saturn,......等各位相助看过书上例子,如果定义statev为(nblock,*)的数组,应该对每个积分点都进行迭代计算,从而更新变量值(写stateNew(nblock,*)请问Mikejwg,变量statev怎么输出?可以象应力应变那样进行绘图、动画等后处理吗?不好意思,我只在log文件中输出,还没有在odb中输出,想同element output等那样输出,只能在UVARM中定义,但同statev是不同的,老兄你可以试试。
发信人: Mikejwg (mikejwg), 信区: FEA标题: 用abaqus中的UMAT的大侠看过来。
发信站: BBS 水木清华站 (Tue Dec 25 15:36:27 2001)各位大侠,在加入自己弹塑性本构模型时,如何加入区分弹性部分与塑性部分(或非弹性部分)。
也就是说,在输出时,EE,LE,IE([PE]),因为在umat中,我们只发现dstran,stress,除此并没有发现其它有关应力应变得变量。
你所说的区分弹性部分和塑性部分是指应变的弹塑性部分:E=EE+PE吗?还是指加载过程的弹塑性?E=EE+PE我觉得想从umat的输入参数里面区分是不可能的可不可以你先算出弹性的,然后用stran减去弹性的,得到塑性的我猜的哦我自己是明白的,但不知怎么让程序明白比如,在一定条件下可解出位移增量,abaqus得到应变增量dstran,stran,而弹性部分,dEEij=dSij/(2G),dEPij=dstranij-dEEij但怎么控制程序了?默认得情况又是怎样计算的谢谢我不清楚你的本构,我大概觉得你如果是用屈服面的话你是不是可以用statev()记录每一步的EE,EP然后通过应力偏量来计算DEE,DEP,然后自己更新EE,EP,就不与stran扯上关系我以前见过用Umat算J2流动理论的时候,是这么做的首先我的本构不能采用屈服面的概念(一种新型的弹塑性本构模型),我也看了那个采用j2流动法则的例子,我可以在umat中的statev重定义ee,pe,但statev不能像EE,PE,IE那样在odb中输出。
再说在umat中的ee,pe与inp中的ee,pe是不同的。
谢谢看来你只能试试uvarm了呵呵,发信人: Mikejwg (mikejwg), 信区: FEA标题: Re: ABAQUS中的弹塑性应变的计算问题??发信站: BBS 水木清华站 (Thu Dec 27 14:19:27 2001)用uvar()勉强成功标题: 在abaqus中,DSTRAN,STRAN为工程剪应变吗?Sat Dec 29 09:44:03 2001)同题,这涉及到ddsdde,peeq的计算对,我也是最近才发现的peeq怎么计算?在umat中计算peeq,(因用umat后,系统缺省peeq=0)然后再uvarm输出uvarm可以输出到哪里?.odb可以么?另外那个strav??就是自己定义用于umat的那个数组里的数可以输出到.odb里么?谢了,你这个成长中的大侠在umat中,statev是不能用在output中的,statev只是作为一个解的状态变量,说来惭愧,我是在umat中定义peeq,(peeq)的求解一般在弹塑性力学书上有(等效塑性应变),用write()写入一个临时文件,((切记:这个文件unit号不要与abaqus中的重合,因为他有一些系统默认的文件号,))然后在uvarm中读取,以uvarm输出,因为uvarm可以以odb的形式输出,支持output,field,output,history不知谁还有更好的方法。