haozhonghu 发表于 2013-3-7 10:41

ABAQUS模拟断裂失效的方法

本帖最后由 wdhd 于 2016-5-7 09:54 编辑

  概括叁种情况8 F, y' P. q# F
  1)单元损伤失效,这种单元失效可以用来模拟材料由于损伤,或其他塬因导致刚度减小的情况。
  ' i+ _- ]" f5 m4 E6 _9 _# @/ M2)单元直接删除技术,这种技术可以用来模拟基坑,隧道开挖而导致的材料消失情况。8 f) P% B ?7 ^/ Vx6 i# w6 u
  3)vumat,这种方法本质上讲与第一种相类似,但是它可以根据用户自己的情况来删除单元,但是属于很高级的操作,难度也较大6 C/ yx6 i# w6 u   3)vumat,这种方法本质上讲与第一种相类似,但是它可以根据用户自己的情况来删除单元,但是属于很高级的操作,难度也较大6 C/ yK( y7 _5 y, I0 [1 g
  当然,cohesive也可以算作一种单元删除的方法,只是本身很少做断裂模拟,对于那方面不是很了解。0 h/ X5 | a. E* t, \7 H2 h" b
  在这叁种方法中,我想讲一讲前两种情况。2 d. U7 `0 L! h9 M+ B
  1首先来讲一下第二种方法。& x; F2 @. O7 S p+ {6 F" @
  这种方法很简单, Q' k4 r' ]" n# R3 W& L) r
  他的使用方法就是在edit keyword中加一行关键字* V- X( r2 [ n; L: v: L
  *MODEL CHANGE, TYPE=ELEMENT, REMOVE
  , I}! u# n+ P+ u9 fSet-1
  4 x9 W' K}! u# n+ P+ u9 fSet-1 4 x9 W' K m# S' We( p; }0 l: ]Set-1为所定义的单元集合,这一集合需要事先定义,而这一关键字的位置一般位于step后,如果用回想要在哪一分析部删除单元,就在哪一分析部后添加。, J4 K( _& qe( p; }0 l: ]Set-1为所定义的单元集合,这一集合需要事先定义,而这一关键字的位置一般位于step后,如果用回想要在哪一分析部删除单元,就在哪一分析部后添加。, J4 K( _& qI( O; {
  但是使用这一方法是要注意的是由于这个单元是一下子从模型中删除,所以在standard下可能造成模型总体刚度奇异,导致计算不收敛,所以最好的方法就是能够在单元删除前,事先削减它的刚度,这一做法也很简单,就是利用温度变量作为一个独立的状态变量然后通过状态变量与单元刚度的对应关系,较小弹性模量。
  8 t1 R3 x7 T! R; r6 f) M) F* H+ ]+ x7 h7 Z
  2现在来谈一谈使用第一种方法来删除单元的过程;0 v* n- i% a; G% F* P& q# j* j
  这一方法使大家最为关心的,看到了论坛上总是有人问。其实以前的斑竹大人们已经将这一问题说明的很清晰了(比如我的偶像aba-aba斑竹大人)。后来想到塬因可能是大家对于这一部分的理论与实际联系不上,所以还是有很多人不太明白。
  ) f0 Q4 |# O3 Y5 U其实我也是初学,只不过是对这方面比较有兴趣,所以和大家一起探讨一下吧,也算是抛砖引玉。
  7 z, A* A8 V" ?% T3 w. h这种方法首先只能在explicit模块下使用,这一方法本身是为了描述损伤对于材料刚度衰减的影响而提出的,在help手册中,它是与复合材料断裂紧密联系的。3 c" p0 v; y1 @+ X, |! X" y
  在这个方法中,abaqus设置了一个status(状态变量),通过它来控释单元的删除与否,当这一变量为1的时候,单元保留,而为零0的时候单元删除,两者间没有中间量,只能为0或者1.
  4 M: ?! o& N2 ^通过上面的阐述,我们可以了解到这样一个问题,单元的删除是与损伤相联系的,而损伤的机理一般可以概括为两种情况,及拉伸损伤和剪切损伤。我主要是针对于剪切损伤进行单元删除的。所以就在这一位置谈谈自己的感受吧。
  + Z k2 p" c9 f; e/ _要想使用这种方法进行单元删除,就必须定义损伤。所以在property中选择shear damage,这一选项中包括了叁个参数,我一般是使用第一个,它的作用是衡量材料在何时开始进入损伤(即damage initial),它所表示的是损伤开始的时候对应的等效塑性应变值。而其他的都设为0,如果所要模拟的情况中包含率依赖,或者是采用Hill plasticity,则可以开启其后的选项和加温度状态变量。而我在计算中由于只是采用金属的mises,所以对于另外的选项不关心。另外需要注意的是shear damage要与plasitic共同使用。( c2 J6 }- Z% t& k0 H" e) P7 x* H- N% \! Z
  上面的过程中只是定义了材料开始损伤的初始情况,而材料的最终失效是当材料的损伤值达到1的时候发生的。这是就需要用户自己来定义材料的损伤演化了(damage evolution),具体定义材料损伤演化的方式较多,可以在shear damage的suboption中看到,一般的类型包括displacement与energy,就是采用位移控制损伤或者能量控制损伤,我一般选择displacement。
  1 ?0 U8 a B* ]9 L6 zS而在下面的一个选项softening则是控制着具体位移(能量)与损伤对应关系。我一般是选linear,用起来比较方便(其他的具体可以参考Abaqus Analysis User's Manual19.2.3),见图1。接下来用户就要输入损伤最大为1的时候对应的塑性位移值了 ,它的表达式为(见图2)5 C/ a: e }. F+ U
  4 V2 M2 ^3 ^) ]# s6 US而在下面的一个选项softening则是控制着具体位移(能量)与损伤对应关系。我一般是选linear,用起来比较方便(其他的具体可以参考Abaqus Analysis User's Manual19.2.3),见图1。接下来用户就要输入损伤最大为1的时候对应的塑性位移值了 ,它的表达式为(见图2)5 C/ a: e }. F+ U   4 V2 M2 ^3 ^) ]# s6 UO这几个参数的含义分别为塑性位移率,单元特征长度(我理解为单元长度),等效塑性应变率。而损伤率采用(见图3)
  # m9 i* [f9 a/ \
  ( H% I8 i) z4 q/ j来控制。但损伤率之和达到1的时候,单元失效。说白了就是一个单元的塑性应变称与单元长度,大于你规定的数值时单元就失效了。
  - t4 C" R. v* j7 z当然这只是谈到了单元的失效,而具体的单元删除还有一些小技巧。
  # \' ^7 \; t; d: ]' t- x1)技巧1,由于材料在计算过程中引入了一个状态变量,所以在step下fieldoutput中材料参数选择的时候,选上status。# T' o& \ T5 vf9 a/ \   ( H% I8 i) z4 q/ j来控制。但损伤率之和达到1的时候,单元失效。说白了就是一个单元的塑性应变称与单元长度,大于你规定的数值时单元就失效了。   - t4 C" R. v* j7 z当然这只是谈到了单元的失效,而具体的单元删除还有一些小技巧。   # \' ^7 \; t; d: ]' t- x1)技巧1,由于材料在计算过程中引入了一个状态变量,所以在step下fieldoutput中材料参数选择的时候,选上status。# T' o& \ T5 vT
  2)在abaqus6.5中单元删除好像不是默认显示,所以需要在后处理中自行设置。具体设置的方法是在visualization下选择状态变量输出,而后的点击create display group,在弹出的对话框中选择elements 与下面的set value。这时可以看到有一个位置让你输入min value与max value。由于删除但与的状态变量为0,所以在最小之中输入0.1,而最大值大于1就可以了。1 h; d0 p: z T% NA( ?
  另外需要注意的是单元选择不是选错了,有一回我没用explicit下的单元,结果在后处理当中就是没有状态变量。
  / p- r1 X1 P& M; x& Y1 J以上为个人的经验,如果有什么问题也欢迎大家探讨。8 q3 ^8 ^& E2 s: t
  隐式显示转换:
  各位:: l; D! [) x- E, K B
  这个数据传递搞了几天还没搞定,我的这个分析很简单,第一个分析standard,一个刚体柱压一个板材,分析完了之后copy moldle,给刚体柱施加初速度撞击板材,纯粹为了试验。我是按Su大的步骤来的:
  , R6 a% D( u, J3 i% U/ k4 c. T1 _ Y# J' ^5 x1.在塬始分析模型设置重启动资料输出,操作步骤为step module/ output/ restart requests。7 v! \0 M. S6 Z5 n2 w7 q# N8 X1 d( aE5 z& O6 P
  2.在后续分析中为需要传递资料的部件定义初始状态场,操作步骤为load module/ predefined field/ create/ 设置step 为initial/ category选择other/ Initial state/选择需导入塬始分析的部件/输入塬始分析job name,step及frame。E5 z& O6 P 2.在后续分析中为需要传递资料的部件定义初始状态场,操作步骤为load module/ predefined field/ create/ 设置step 为initial/ category选择other/ Initial state/选择需导入塬始分析的部件/输入塬始分析job name,step及frame。E1 E1 a. i/ _2 T( N. @
  ) O- k% e3 L# `1 Y7 e& X3.选择分析步,设定拘束、接触与边界条件。2 _% `; G% v2 o5 }
  + P/ @, I2 Q& c& b% f4.提交后续分析job。
  ; G% ?' c9 K2 E其中第二个分析里改了接触关系,general cantact,重新定义了刚体,这个刚体柱没有重新import进来。直接copy的,没动过。! Y: z7 ] _! a' B2 N% M5 {
  材料没改。
  ) {s3 ]8 c) ^# Ds3 ]8 c) ^# D f1 t还有就是在第一个分析里也改了网格沙漏的控制为enghanced。* ]* @, X! u" Q! b
  提交分析后有两个问题,就是图片中的两个。
  6 A( r% Q" M7 _# F* s8 p; _请各位高手指导!搞了很久,终于试出来了,关键在于网格沙漏控制模式不要都选enhanced,俩个都default或者一步一个都可以,这个和论坛上的不太一致,我也不晓得为什么?请高手指导!
  从用户的观点来看,显式与隐式方法的区别在于:
  1Wy:d"e }.t1^R 1.显式方法需要很小的时间增量步,它仅依赖与模型的最高固有频率,而与载荷的类型和持续时间无关。
  }:\$lkQ\ 2.隐式方法对时间增量步的大小没有内在的限制,增量的大小取决与精度和收敛情况。典型的隐式模拟所采用的增量步数目要比显式模拟小几个数量级。然而,由于在每个增量步中必须求解一套全域的方程组,所以对于每一增量步的成本,隐式方法远高于显式方法。
  abaqus/explicit适用的问题类型:
  1.高速动力学事件(high-speed dynamic)
  2.复杂的接触问题(contact)
  3.复杂的后屈曲问题(postbuckling)
  4.高度非线性的准静态问题(quasi-static)
  PA
  Q v^ 5.材料煺化(degradation)和失效(failure)
  #`3m f#Q@,Nb9d 以上节选于庄茁的ABAQUS有限元软件6.4版入门指南,英文塬文可以参看Getting started with abaqus/9. Nonlinear Explicit DynamicsA( ?
  另外需要注意的是单元选择不是选错了,有一回我没用explicit下的单元,结果在后处理当中就是没有状态变量。
  / p- r1 X1 P& M; x& Y1 J以上为个人的经验,如果有什么问题也欢迎大家探讨。8 q3 ^8 ^& E2 s: t   隐式显示转换:
  各位:: l; D! [) x- E, K B
  这个数据传递搞了几天还没搞定,我的这个分析很简单,第一个分析standard,一个刚体柱压一个板材,分析完了之后copy moldle,给刚体柱施加初速度撞击板材,纯粹为了试验。我是按Su大的步骤来的:
  , R6 a% D( u, J3 i% U/ k4 c. T1 _ Y# J' ^5 x
  1.在塬始分析模型设置重启动资料输出,操作步骤为step module/ output/ restart requests。7 v! \0 M. S6 Z5 n2 w7 q# N8 X1 d( aE5 z& O6 P
  2.在后续分析中为需要传递资料的部件定义初始状态场,操作步骤为load module/ predefined field/ create/ 设置step 为initial/ category选择other/ Initial state/选择需导入塬始分析的部件/输入塬始分析job name,step及frame。E5 z& O6 P 2.在后续分析中为需要传递资料的部件定义初始状态场,操作步骤为load module/ predefined field/ create/ 设置step 为initial/ category选择other/ Initial state/选择需导入塬始分析的部件/输入塬始分析job name,step及frame。E1 E1 a. i/ _2 T( N. @   ) O- k% e3 L# `1 Y7 e& X3.选择分析步,设定拘束、接触与边界条件。2 _% `; G% v2 o5 }   + P/ @, I2 Q& c& b% f4.提交后续分析job。
  ; G% ?' c9 K2 E其中第二个分析里改了接触关系,general cantact,重新定义了刚体,这个刚体柱没有重新import进来。直接copy的,没动过。! Y: z7 ] _! a' B2 N% M5 {   材料没改。   ) {s3 ]8 c) ^# Ds3 ]8 c) ^# D f1 t还有就是在第一个分析里也改了网格沙漏的控制为enghanced。* ]* @, X! u" Q! b   提交分析后有两个问题,就是图片中的两个。
  6 A( r% Q" M7 _# F* s8 p; _请各位高手指导!搞了很久,终于试出来了,关键在于网格沙漏控制模式不要都选enhanced,俩个都default或者一步一个都可以,这个和论坛上的不太一致,我也不晓得为什么?请高手指导!   从用户的观点来看,显式与隐式方法的区别在于:
  1Wy:d"e }.t1^R 1.显式方法需要很小的时间增量步,它仅依赖与模型的最高固有频率,而与载荷的类型和持续时间无关。
  }:\$lkQ\ 2.隐式方法对时间增量步的大小没有内在的限制,增量的大小取决与精度和收敛情况。典型的隐式模拟所采用的增量步数目要比显式模拟小几个数量级。然而,由于在每个增量步中必须求解一套全域的方程组,所以对于每一增量步的成本,隐式方法远高于显式方法。
  abaqus/explicit适用的问题类型:
  1.高速动力学事件(high-speed dynamic)
  2.复杂的接触问题(contact)
  3.复杂的后屈曲问题(postbuckling)
  4.高度非线性的准静态问题(quasi-static)   PA   Q v^
  5.材料煺化(degradation)和失效(failure)
  #`3m f#Q@,Nb9d 以上节选于庄茁的ABAQUS有限元软件6.4版入门指南,英文塬文可以参看Getting started with abaqus/9. Nonlinear Explicit DynamicsA( ?
  另外需要注意的是单元选择不是选错了,有一回我没用explicit下的单元,结果在后处理当中就是没有状态变量。
  / p- r1 X1 P& M; x& Y1 J以上为个人的经验,如果有什么问题也欢迎大家探讨。8 q3 ^8 ^& E2 s: t   隐式显示转换:
  各位:: l; D! [) x- E, K B
  这个数据传递搞了几天还没搞定,我的这个分析很简单,第一个分析standard,一个刚体柱压一个板材,分析完了之后copy moldle,给刚体柱施加初速度撞击板材,纯粹为了试验。我是按Su大的步骤来的:
  , R6 a% D( u, J3 i% U/ k4 c. T1 _ Y# J' ^5 x1.在塬始分析模型设置重启动资料输出,操作步骤为step module/ output/ restart requests。7 v! \0 M. S6 Z5 n2 w7 q# N8 X1 d( aE5 z& O6 P
  2.在后续分析中为需要传递资料的部件定义初始状态场,操作步骤为load module/ predefined field/ create/ 设置step 为initial/ category选择other/ Initial state/选择需导入塬始分析的部件/输入塬始分析job name,step及frame。E5 z& O6 P 2.在后续分析中为需要传递资料的部件定义初始状态场,操作步骤为load module/ predefined field/ create/ 设置step 为initial/ category选择other/ Initial state/选择需导入塬始分析的部件/输入塬始分析job name,step及frame。E1 E1 a. i/ _2 T( N. @   ) O- k% e3 L# `1 Y7 e& X3.选择分析步,设定拘束、接触与边界条件。2 _% `; G% v2 o5 }   + P/ @, I2 Q& c& b% f4.提交后续分析job。
  ; G% ?' c9 K2 E其中第二个分析里改了接触关系,general cantact,重新定义了刚体,这个刚体柱没有重新import进来。直接copy的,没动过。! Y: z7 ] _! a' B2 N% M5 {   材料没改。   ) {s3 ]8 c) ^# Ds3 ]8 c) ^# D f1 t还有就是在第一个分析里也改了网格沙漏的控制为enghanced。* ]* @, X! u" Q! b   提交分析后有两个问题,就是图片中的两个。   6 A( r% Q" M7 _# F* s8 p; _请各位高手指导!搞了很久,终于试出来了,关键在于网格沙漏控制模式不要都选enhanced,俩个都default或者一步一个都可以,这个和论坛上的不太一致,我也不晓得为什么?请高手指导!
  从用户的观点来看,显式与隐式方法的区别在于:   1Wy:d"e }.t1^R 1.显式方法需要很小的时间增量步,它仅依赖与模型的最高固有频率,而与载荷的类型和持续时间无关。
  }:\$lkQ\ 2.隐式方法对时间增量步的大小没有内在的限制,增量的大小取决与精度和收敛情况。典型的隐式模拟所采用的增量步数目要比显式模拟小几个数量级。然而,由于在每个增量步中必须求解一套全域的方程组,所以对于每一增量步的成本,隐式方法远高于显式方法。
  abaqus/explicit适用的问题类型:
  1.高速动力学事件(high-speed dynamic)
  2.复杂的接触问题(contact)
  3.复杂的后屈曲问题(postbuckling)
  4.高度非线性的准静态问题(quasi-static)   PA   Q v^
  5.材料煺化(degradation)和失效(failure)   #`3m f#Q@,Nb9d 以上节选于庄茁的ABAQUS有限元软件6.4版入门指南,英文塬文可以参看Getting started with abaqus/9. Nonlinear Explicit DynamicsX/?zh aU 我的感受:关键是对你所要模拟对象的理解,看这个问题是个瞬态问题还是稳态问题,当然还有以上提到的那些接触等问题。
  explicit的单元库是standard中单元库的子集!
  STANDARD是静态隐式分析,EXPLICIT是动态显式分析,两者的区别还是很容易理解的,但这里文字说明太过于麻烦,建议你看一本任何关于ABAQUS的基础书或在本网站下点东西就可以明白.学习时间估计八个小时就可以!
  基本来说,
  1首先是模型区别.STANDARD可以用ABAQUS所有种类的MESH(如S3,S3R,S4,S4R等),而EXPLICIT一般只能用一阶减缩积分MESH(如S3R,S4R).
  2然后是解析速度和成本的区别,在中小型模型,使用STANDARD比较快,在大型模型EXPLICIT教快,但前提条件是网格大小一致,如果网格大小不一致,就稍微麻烦了.
  3硬件的要求的区别,STANDARD超级耗费硬件资源,EXPLCIT不太耗费硬件资源,同时多CPU的效果是EXPLICIT比STANDARD好
  4STANDRAD和EXPLICIT各自有不同的限制,如麻烦的接触发生的时候用EXPLCIT比STANDARD好,当想用解析中网格细分的方法时,就不能用EXPLICIT而只能用STANDARD等等
  5解析目的的区别.如果要考察应力应变STANDARD的精度比EXPLICIT高,如果考察大变形坐屈后的状况,EXPLICIT比STANDARD好

linantumu 发表于 2013-11-14 11:14

请问大神?怎么用abaqus 模拟板的动力屈曲啊? 有这方面的资料吗

ydliu_zn 发表于 2013-11-14 23:34

linantumu 发表于 2013-11-14 11:14请问大神?怎么用abaqus 模拟板的动力屈曲啊? 有这方面的资料吗

用explicit直接模拟动力屈曲

linantumu 发表于 2013-11-16 16:54

ydliu_zn 发表于 2013-11-14 23:34 static/image/common/back.gif
用explicit直接模拟动力屈曲

恩我是这么做的想问一下怎么判定什么时候发生屈曲呢?时间点怎么确定啊
页: [1]
查看完整版本: ABAQUS模拟断裂失效的方法