首页/文章/ 详情

ABAQUS单元-节点排布规律

2月前浏览594
  1. 概述

    在ABAQUS 二次开发、或者研究界面问题的时候,比如cohsive单元界面问题,会涉及到单元-节点的排布顺序。ABAQUS inp文件中的单元-节点顺序排布很有讲究,不能搞错,这是因为有限元程序编写与节点顺序有关,内部的程序我们不得而知,但是节点顺序的规律可以从inp文件中看到,再对比cae节点中的节点编号可以总结规律。以下内容介绍一些经典的实体单元-节点排布顺序。

  2. 三角形单元

    以一个10x10(无单位)的挖孔板为例,划分的网格为:(注意到被单元为30、138和23包围的三角形没有编号,这是因为那个三角形不是单元,我在那里挖了个孔,因为背景显示的问题,网格颜色和背景一样,故没有区分。作此说明)

    这里我们首先查看节点的排布方式。分别以单元1、123为例。

    编号为“1”的单元,在inp文件中,单元-节点的编号为:

     1, 61,  1,  2
     

    在cae界面中,我们只显示编号为“1”的单元为:

    发现节点排布的方式是“逆时针”顺序。

    编号为“123”的单元,在inp文件中,单元-节点的编号为:

    123, 83, 34, 33
     

    在cae界面中,我们只显示编号为“123”的单元为:

    发现节点排布的方式是“逆时针”顺序。

    至此我们可以得出结论,在一阶三角形单元中,单元-节点的索引方式遵循“逆时针”顺序,即按照节点顺序弯曲右手四个手指,大拇指指向屏幕外 。  
    接下来查看定义surface的线-节点索引方式。我们采用“gemerty”的方式定义surface,将挖空板的左边界定义为surface,查看上面的网格图,可以发现这个surface涉及到的单元有“18、46、45、17、43”,涉及到的单元节点编号为:  
    17, 55, 42, 41 18, 44, 23, 28 43, 41, 26, 32 45, 43, 42, 22 46, 44, 43, 22
     
    在cae界面中把这些单元显示为:  

    在inp文件中,将左边界定义为surface的代码为:

    *Elset, elset=_left-bc_S1, internal 43, 45, 46*Elset, elset=_left-bc_S2, internal 17,*Elset, elset=_left-bc_S3, internal 18,*Surface, type=ELEMENT, name=left-bc_left-bc_S1, S1_left-bc_S2, S2_left-bc_S3, S3
     
    这里的关键字有点儿陌生,我们逐行解释:  

    关键字“elset”能定义单元集 合,后面的参数“elset”为该单元集 合的名称,最后的参数“internal”这个帖子不涉及,不做过多解释。关键字“elset”的数据行为该单元集 合包括的单元编号。


    关键字“surface”能定义面,后面的参数“type”为该面是基于什么定义的,该参数的数值有:element、node等等,我在cae界面做过测试,采用“gemerty”和“mesh”方式定义的时候,“type”参数的取值都是“element”,这个取值的意思是采用边标识(二维问题中,三维问题中为面标识)的形式定义surface。关键字“surface”的数据行中,第一个参数为单元集 合名称,第二的参数就是边标识,这个边标识是定义surface的关键,下面我们看s1、s2、s3到底是什么意思。


    这里我们需要做一些猜测,基于有限元离散的理论。我们知道在有限元计算中,如果一个边或面有荷载,就需要把荷载根据等效原理换算到节点相应的维度上,如(fx,fy)(二维问题中),那么软件定义面或者边标识的目的肯定与提取节点有关,而在二维问题中,一个边可能是两节点,或者三节点。好了有了这个猜测,继续往下看

    查看上面的inp文件信息,可以得到如下信息:单元集 合“_left-bc_S1”包括单元“43、45和46”,在关键字“surface”中,选择这个单元集 合的边标识为“S1”的边节点定义“surface”,我们看看这个S1代表的到底是什么,首先将这三个单元的节点编号从inp文件中提取出来为:

     43, 41, 26, 32 45, 43, 42, 22 46, 44, 43, 22
     

    再把这三个单元的单元-节点编号在cae界面中显示出来:

    定义的是左边界,所以,与单元“43”有关的节点为26和41,与单元“45”有关的节点为42和43,与单元“46”有关的节点为43和44,这里就可以发现一些规律了:边标识S1对应的节点都是inp文件的单元-节点编号中的前两个节点

    这里还需要进行一些猜测:三个节点来组成的边只可能有三种可能,对于a、b和c,只可能有:ab、bc和ca三种可能(不考虑顺序,先给自己挖个坑),这有没有可能正好对应着S1、S2和S3呢

    我们继续看,“_left-bc_S2”单元集 合对应的边标识为S2,这个单元集 合包括了单元”17“,对应的节点编号为:

    17, 55, 42, 41
     

    在cae界面中显示该单元为:

    定义的是左边界,涉及到的节点为42和41,这里初步验证了我们的猜测,S2确实对应了第二条边:42和41。

    我们继续看,“_left-bc_S3”单元集 合对应的边标识为S2,这个单元集 合包括了单元”18“,对应的节点编号为:

     18, 44, 23, 28
     

    在cae界面中显示该单元为:

    定义的是左边界,涉及到的节点为28和44,这里又一次验证了我们的猜测,S3确实对应了第三条边:28和44。

    至此我们可以得出结论:在一阶三角形单元中,采用“gemerty”和“mesh”定义的surface中,ABAQUS的设计机制是首先定义与我们目标边界线节点( 二维问题中,三位问题为目标面节点)相关的单元 集 合,然后利用三角形边标识提取边界线节点。

    一阶三角形单元的边标识有三个:S1、S2和S3。例如,inp文件中某个单元-节点的排布顺序为:element,n1,n2,n3(element为单元编号,后面三个元素为节点编号),那么 S1代表的边为:n1和n2组成的边、 S2代表的边为:n2和n3组成的边、S3代表的边为:n3和n1组成的边。

    再来说顺序的事情,这部分我没做过测试,不过推测来看,与inp文件中的排布顺序保持一致的可能性很大。读者要想深入探究,可以具体推导一下公式,就是那个荷载换算的公式。

    这个问题可能是二维中 特有的,因为仅仅靠两点,很难判断出来顺时针或者逆时针,没有参照,在三维问题中,这个问题就不存在,详情请看三维单元的解析。























  3. 六面体单元

    几何模型为三拱桥,如图:

    相应的网格图为:

    这里我们首先查看节点的排布方式。分别以单元1、12、123、1234和12345为例。

    编号为“1”的单元,在inp文件中,单元-节点的编号为:

      1,   801,   962,   496,   497,  3190,  3351,  2885,  2886
     

    在cae界面中,我们只显示编号为“1”的单元为:

    可以发现,前四个节点组成了一个面,后四个节点组成的面与前四个节点组成的面位置是相对的。且前四个节点按照右手法则,大拇指指向单元内部,后四个节点按照右手法则,大拇指指向单元的外部。且这两个对面四个节点开始的位置是相同的 ,如:

    801,   962,   496,   4973190,  3351,  2885,  2886
     

    可以发现,节点801与3190共线,后面的三对节点仍然有相应的规律。

    后面四个单元这里就不重复码字了,我做过验证,是满足这个规律的,下面来看更重要的面定义,这部分更有意思!

    我在cae界面采用“gemerty”将三拱桥的桥面定义为一个面,详细的inp代码如下:

    *Elset, elset=_top_S6, internal6,    14,    15,     ......*Elset, elset=_top_S5, internal12,   267,   296,         ......*Elset, elset=_top_S4, internal 13,    16,    28,     ......*Elset, elset=_top_S3, internal 61,   140,   303,      ......*Surface, type=ELEMENT, name=top_top_S6, S6_top_S5, S5_top_S4, S4_top_S3, S3
     

    这部分涉及的单元比较多,没有写全,其余的省略。下面提取上面这些单元的单元-节点信息:

    S6--------------|6,        2,    495,   965,   498,  2391,  2884,  3354,  2887   14,       502,  1221,  1114,   503,  2891,  3610,  3503,  2892 15,     6,  1107,  1220,   504,  2395,  3496,  3609,  2893S5--------------|12,  1003,   983,   501,   500,  3392,  3372,  2890,  2889267,   404,  2158,   612,    61,  2793,  4547,  3001,  2450296,   985,  1061,   615,   614,  3374,  3450,  3004,  3003  S4--------------|  13,  1221,   502,     5,   165,  3610,  2891,  2394,  2554 16,   169,   505,   504,  1220,  2558,  2894,  2893,  3609  28,  1087,   510,     9,   799,  3476,  2899,  2398,  3188 S3--------------|61,    31,   552,   381,  1082,  2420,  2941,  2770,  3471140,    19,   529,  1092,   981,  2408,  2918,  3481,  3370303,   617,   616,  1716,  1010,  3006,  3005,  4105,  3399
     
     

    有了之前的经验,我们知道了这里的S6、S5、S4和S3是六面体的面标识,还有两个S1和S2没涉及到,因为六面体嘛,肯定有六个面。我们只要把S3~S6的规律搞清楚了,其余的可以按照一样的思路整出来。

    下面开整,首先以S6开始。在cae界面中把单元6、14和15显示出来:

    下面把三拱桥调整到顶面的视图,即从上往下看的视图,截取包含这三个单元的一部分图:

    可以看到单元15、14和6分别在底层单元从左往右数第1、3和倒数第一个。

    其中这三个单元涉及到的节点编号为:

    15,     6,  1107,  1220,   504,  2395,  3496,  3609,  289314,   502,  1221,  1114,   503,  2891,  3610,  3503,  28926,     2,   495,   965,   498,  2391,  2884,  3354,  2887
     

    可以发现,单元15采用的面标识S6涉及到的四个节点为:

    2395 2893 504 6
     

    六面体一共八个节点,加入我们给这八个节点分别1~8的编号,我们发现这四个节点对应的编号为:5 8 4 1,

    这个规律正不正确呢,再来看单元14对应的四个节点:

    2891 2892 503 502
     

    经过验证,我们发现面标识S6就是对应分别了八个节点中第5 8 4 1个编号

    按照这种思路,我们可以得出如下规律:

    S1-----1 4 3 2S2-----5 6 7 8S3-----1 2 6 5S4-----6 2 3 7S5-----4 8 7 3S6-----5 8 4 1
     

    注意:并不是所有的模型都会涉及到S1~S6,视模型的复杂程度而定,像几何拓扑关系简单的几何模型,如长方体,可能只会涉及其中的一个面标识


  4. 总结

    把问题的结果整出来并不是终点,重点是在得出结论的过程中有没有得出一些这一类问题的方法论。  

    在探索节点排布顺序规律和面节点索引规律的过程中,我们将inp文件与cae界面相结合,再加上自己现有的知识进行猜测和验证,最终得出结论。

    在使用商软ABAQUS过程中,很多我们看似简单,甚至注意不到的非常小的细节,都是一大堆工程师的头发换回来的,也有些我们看不懂的设计,感觉莫名其妙,其背后都有非常复杂的原因,最终形成了现在的形式,当我们学习到一定深度的时候,自然会恍然大悟,茅塞顿开!

    永远保持好奇心!!

    欢迎对内容有兴趣的朋友私信交流!    


来源:有限元先生
Abaqus二次开发理论
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-09-29
最近编辑:2月前
外太空土豆儿
硕士 我们穷极一生,究竟在追寻什么?
获赞 16粉丝 1文章 56课程 0
点赞
收藏
作者推荐

UEL如何与接触非线性模型结合

零概述分别采用经典有限元法和比例边界有限法在abaqus中编制了C3D8单元的UEL程序,计算结果均与abaqus保持同样精度。在此基础上将用户自定义单元与abaqus自带的接触非线性模型相结合,并完成了单元的位移、速度和加速度的可视化。壹算例介绍计算了滑块在斜面滑落算例。滑块分两个运动过程,分别为受重力和摩擦力沿着斜面作直线匀加速运动离开斜面受重力作用作斜抛加速运动采用三种方法计算,分别为ABAQUS自带的C3D8单元采用UEL子程序,自编C3D8UEL单元,且考虑B-BAR修正采用UEL子程序,依据比例边界有限元法自编C3D8UEL单元关于方法1,直接在ABAQUS中建立模型,给滑块施加重力荷载,在滑块和斜面之间建立接触即可。关于方法2,首先编写C3D8UEL程序,然后再给自定义单元世界重力荷载,并且在滑块和斜面之间建立接触。但是给用户自定义单元施加重力荷载不可以直接施加,需要借助虚假单元。在滑块的斜面建立接触过程中,因为用户自定义单元无法定义面,定义接触更无从谈起,所以也需要借助虚假单元才能定义SURFACE,最终完成SURFACETOSURFACE接触定义。关于方法3,同方法2,首先依据SBFEM在UEL中完成程序编写,后面同样的操作,采用虚假单元给用户自定义单元施加重力荷载与定义接触。帖子涉及到的内容:UEL二次开发、基于ABAUQS的SBFEM、用户自定义单元体力的施加、用户自定义单元面定义、用户自定义单元接触非线性分析贰计算模型信息滑块与斜面的几何尺寸滑块与斜面的网格该算例中的三种方法均采用动力隐式算法,计算总时长为10s,设置固定增量步长为0.01s,增量步数共计1000。重力加速度为9.81m/s²。具体参数见附件。滑块两个运动过程受力分析为上面左图为斜面内的受力分析,右图为斜面外的受力分析。可知滑块沿斜面的分力与摩擦力大小比值有两种情况:当滑块在斜面内运动的时,遵循如下控制方程:当滑块做出斜面运动时,遵循如下控制方程:通过上式,可求得位移和速度的解析解。滑块运动水平向位移时程对比如下图:滑块运动竖直向位移时程对比如下图:滑块运动水平向位速度时程对比如下图:滑块运动竖直向速度时程对比如下图:误差分析:观察四个时程曲线,发现滑块在斜面上运动的过程中,四种计算结果均吻合良好。而在滑块离开斜面的第二运动过程中,三个数值解吻合较好,但均与解析解有一定的差别。这是因为解析求解是建立在质点的假设上,但是数值解是一个小方块,因此方块第一个角点离开斜面的时候,方块并未完全离开斜面,所以误差会从方块的第一个角点离开斜面开始。叁基于虚假单元的UEL可视化在该算例中,完成荷载和接触定义的同时,附加的虚假单元兼具用户自定义单元的位移、速度和加速度可视化功能。当虚假单元和用户自定义单元共存时,ABAQUS显示为当只显示用户自定义单元的时候,ABAQUS显示如下图:当只显示虚假单元的时候,ABAQUS显示为可见虚假单元能够非常完美的完成单元位移、速度和加速度的可视化。在一定程度上解决了用户自定义单元在abaqus中无法可视化的问题。来源:有限元先生

未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈