虚竹但觉伤口处阵阵麻痒,又是针刺般的疼痛,直如万蚁咬啮,说道:“自然知道。”童姥冷笑道:“你可知道这是什么暗器?这是「生死符」!”
虚竹耳朵中嗡的一声,登时想起了乌老大等一干人一提到「生死符」便吓得魂不附体的情状。他只道「生死符」是一张能制人死命的文件之类,哪想到竟是一种暗器。
生死符,金庸武学暗器之一,为逍遥派灵鹫宫天山童姥所使用的一种暗器,被植入者曾经说过中此招者“求生不能,求死不能”,而会受制于他人。生死符威力极强,如果被植入而未取出来,则必须定期服用“镇痒丸”,否则麻痒难当,天龙八部小说里中了生死符的人有三十六洞主、七十二岛主、虚竹(在冰窖内被植入)、丁春秋(在少室山被虚竹植入)。发作之时,一日比一日厉害,其痒剧痛约81日后会逐步散退,但在81日后又会再增加。
生死符算是武林中第一等的暗器,利用酒、水等液体逆运真气,将刚阳之气转为阴柔,使掌心中发出来的真气冷于寒冰数倍,手中液体自然凝结成冰。生死符除了搭配天山六阳掌加上灵鹫宫医典以便掌握到阴、阳、虚、实才可以化解体内的生死符外,没有其他办法可以取出。为天下第一等暗器。
这是天龙八部中的片段,令人闻风丧胆的生死符与今天我们要聊的生死单元有异曲同工之妙之妙。生死单元不是凭空出现的单元,而是在建模时候就存在的单元(一种被植入的暗器),在需要的时候生(发作),在不需要的时候死(不发作),想想看,还真是挺有意思的。
一、 什么时候是生死单元
生死单元其实是我们常用的一种称呼,在abaqus中有专门的称呼,就是model change。我们有必要借助帮助文档了解下这个命令都说了什么
modelchange具有两重功能,即Element and contact pair removal and reactivation,也就是“单元和接触对的删除和再激活”。他们的主要应用场景是:
1、可以用来仿真模型的一部分的删除,临时的或者为剩余部分的分析;
2、允许单元无应变或者有应变的再激活;
3、可以用来在不需要一个接触对时节省计算时间;
4、只能用于通用分析步,热传导,热力耦合等分析步,不是所有的分析步都可以使用
5、只有在原始分析中使用或者再激活时,才能用于重启动分析。
我们这次是涉及单元的删除和激活,其他内容作为了解。
二、对于单元的删除,有着如下的约定
可以在通用分析步中从模型删除指定的单元。就在删除之前,Abaqus/Standard保存所删除区域的力/热通量,将其施加在剩余模型部分与删除区域之间的节点上,这些力在删除步中线性降低到零。这样,被删除区域对剩余模型的影响仅在删除步结束时,才完全不存在。力逐渐线性降低,确保单元删除对模型具有一个平顺的影响。同时对被删除的单元不再做进一步的计算,被删除的单元再后续部中保持无效,直到他们被重新激活。
单元删除对于的inp语法:
*MODEL CHANGE, TYPE=ELEMENT, REMOVE
对应的 cae GUI操作:
三、在瞬态分析中需要注意的问题
在瞬态过程中删除单元必须谨慎,被删除的单元施加在剩余模型边界上的节点通量,在步中线性下降。在瞬态热传导中,完全耦合的温度-位移,或者完全耦合的热-电-结构分析中,如果通量高并且计算步很长,则线性下降对剩下的物体有冷却的影响,或者加热的影响。在动态分析中,如果力很大并且计算步很长,动能可能传递给模型的剩余部分。可以在剩下的分析之前,通过一个非常短的瞬态步中删除单元来避免此问题,可以在一个单独的增量步中完成。如这么操作:
四、再激活单元
对于应力/位移单元有两种不同类型的再激活(包括子结构):无应变再激活和具有应变的再激活。无应变再激活可以重构初始构型,具有应变的再激活不能重置构型。本文涉及的都是无应变激活,因此只讨论无应变激活下的情况。
当在一个无应变的状态中再激活应力/位移单元时,它们在再激活的一刻(再激活他们的步开始的时刻),立刻变得完全有效。在再激活步的开始时刻,在包含有再激活单元的构型中,讲他们重置成一个“退火”状态(零应力,零应变,零塑性应变等)。此构型取决于是否进行一个小位移的或者大位移的分析。另外可以指定费原值状态的未激活。
在焊接过程中,通常我们认为是小位移状态,所以属于生死单元应用较为简单的一种。同时在完全耦合的温度位移分析中,连续单元再无应变再激活时,立即达到他们的完全力学刚度。然而,要确保求解的平顺,步中的热传导性是中零线性上升的。
单元删除对于的inp语法:
*MODEL CHANGE,ADD=STRAIN FREE (default)
对应的 cae GUI操作:
五、输出
已经删除的单元的输出是不可得的。
六、完整的inp语法结构
Input file template
*HEADING
…
*STEP
*STATIC
…
** Remove all elements in element set SIDE
*MODEL CHANGE, REMOVE
SIDE,
** Remove contact pair (SLAVE1, MASTER1)
*MODEL CHANGE,TYPE=CONTACT PAIR, REMOVE
SLAVE1, MASTER1
…
*END STEP
**
*STEP
*STATIC
…
** Reactivate elements in element set SIDE
*MODEL CHANGE, ADD=STRAIN FREE
SIDE,
** Reactivate contact pair (SLAVE1, MASTER1)
*MODEL CHANGE,TYPE=CONTACT PAIR, ADD
SLAVE1, MASTER1
…
*END STEP
七、使用python进行焊接生死单元定义的方法
通过上面的帮助文档解析,我想大部分人已经充分了解了生死单元的功能。想了解更多信息,继续查看帮助文档。那么接下来的事有点意思,就是生死单元如何使用python定义。
我们都知道,定义生死单元是个苦差事,使用python可以很好的完成这个操作。对于编程而言,不同人不同的思路,有不同的方法,各有优缺点。这里介绍的是一种通用的方法,供大家参考:
我们从6中可以看出,modelchangge必须存在于step里面,因此我们第一个步是通过python完成所有分析步的创建,主要思路如下图。
接下来就要完成生死单元的定义。在abaqus6.10版本之前,是没有办法通过GUI操作来建立生死单元的,只能通过关键字做。那我们的思路就是利用python实现关键字的插入,利用insert函数实现。
虽然这样的方法略微麻烦,但是基本可以适用于所有版本的abaqus,非常的适用,并可以适当修改,使用于其他场景。
八、总结
生死单元是一个即简单又复杂的技巧。本文起了一个开篇作用,更多的需要朋友们自行发掘和交流(私信联系,邀请加入仿真交流群),详细的step by step的方式演示了GUI和pyhton两种方法的焊接生死单元的定义,具有很强的指导意义。
讲师介绍幻想飞翔,仿真秀专栏作者,高级工程师,硕士学历,高级工艺仿真主管,中车集体培训道场首批内训师,高级讲师。长期从事轨道车辆工艺仿真工作,截止目前共完成近百项仿真内容,仿真内容广泛,涉及焊接仿真(接头,大部件,涉及软件:abaqus、marc、simufactwelding、weldplanner),公差仿真(西门子VSA),物流仿真(西门子PLANT simulation),装配仿真(catia DMU,开目 3D AST),强度分析,螺栓分析,冲压分析,橡胶密封分析等(abaqus)。尤其擅长对结构分析的简化,对解决实际工程问题有非常丰富的经验。
声明:原创文章,首发仿真秀,部分图片源自网络,如有不当请联系我们,欢迎分享,禁止私自转载,转载请联系我们。