虚假单元在UEL二次开发中的应用(二)


虚假单元在UEL二次开发中的应用(二):采用虚假单元给ABAQUS用户自定义单元施加广义力


(一)概述

一个不能施加力的单元是一个残废的单元,一个没有右端项的线性代数方程组是一个无法求解方程组,准确说都不能算是方程组。数学意义上,广义力便是方程组的右端项,如何给用户自定义单元施加广义力,是ABAQUS中UEL二次开发必须思考的问题。

给用户自定义单元施加广义力,可大致分为三种方案:

(1)采用UEL接口提供的功能。这么重要的东西,ABAQUS提供的UEL接口里面肯定是有交代的,如UEL接口里面的参数:JTYPE、NDLOAD等等参数,因为个人能力问题,这部分内容我没试过,如果有大佬带带我,万分感谢。

(2)以节点力的形式施加广义力。

从有限元最基本的理论最容易理解这个方法,有限元本质是一种微分方程数值求解算法,从数学意义上讲,其将连续的微分方程离散为计算机可以求解的线性代数方程组;从几何意义上讲,其将问题域离散为大量的简单几何元素,然后针对这些小几何元素进行研究、求解,最终以节点为载体,将简单元素的结果进行整合,形成方程组求解。

这就是说,方程是依靠节点存在的,那么广义力,也是要归结到节点上的,其实,有限元中最简单的力就是节点力,然后是均布压强、常体力等等,不过除了节点力可以直接形成方程的右端量,其他的广义力都需要进行插值,将力按照一定的原则等效到节点上面,再形成方程右端量。

那这就提供了一种思路,直接在外部将复杂的广义力插值到相应的节点位置,然后通过幅值曲线等手段施加到用户自定义单元的节点上。

(3)采用虚假单元来实现。

使用虚假单元给用户自定义单元施加广义力可大致分为两种思路:

1、施加简单的广义力。如均布压强、体力等等,这种广义力可以直接施加在虚假单元上面。

2、施加复杂的广义力。如岁空间位置变化的表面力、体力等等,这些复杂广义力则需要通过子程序DLOAD等将力施加到虚假单元上。

(二)虚假单元施加复杂广义力的原理

添加虚假单元以后,整个计算模型相当于有了两套单元,对于施加的不同广义力,虚假单元和用户自定义单元对刚度、质量、阻尼和右端量分别有不同的贡献。具体的公式表达如下:

虚假单元在UEL二次开发中的应用(二)的图1

对以上公式,下标“A”为ABAQUS自带的内部单元,下标“uel”为用户自定义单元。

当采用虚假单元给用户自定义单元施加重力的时候,用户自定义单元的密度为无穷小量,即Muel为无穷小量,这时候只给虚假单元密度,ABAQUS内部自动将质量和重力施加到相应的节点自由度上面。

当采用虚假单元给用户自定义单元施加表面力的时候,Fuel为无穷小量,真正的表面力则为FA,同样的,ABAQUS内部自动将表面力插值到相应的节点上面。

(三)给用户自定义单元施加体力(以Koyna混凝土坝重力计算为例)

(1)材料信息

坝体弹性模量:E = 31027 MPa,泊松比:0.15,密度:2643 kg/m3

虚假单元在UEL二次开发中的应用(二)的图2

(2)网格信息

虚假单元在UEL二次开发中的应用(二)的图3

采用四节点单元离散坝体,共计1891个节点,1800个单元。

(3)计算信息

计算坝体在重力作用下的位移,采用静力通用分析步即可计算,这里纯粹是为了验证编写的UEL可采用动力隐式算法,因此采用的分析步类型是“Dyanmic,implicit”。需注意,ABAQUS无论是针对静力问题还是动力问题,其内部求解采用的都是增量迭代法,只不过对于静力问题的增量迭代时间只在数学上有意义,因此这里采用动力分析步求解的计算结果与静力通用计算结果相同。计算设置时长为1,固定增量步0.01,一共100个增量步。

(4)结果云图

虚假单元在UEL二次开发中的应用(二)的图4

上图为竖直向位移云图。其中,左边为UEL计算结果,右边cps4计算结果,二者的相对误差为:0.8%,误差可以接受。

注意到左边便是采用虚假单元以后的可视化效果,为cps4单元和用户自定义单元共同显示的效果,其中“x”符号为用户自定义单元,下图为隐藏用户自定义单元以后的可视化效果。

虚假单元在UEL二次开发中的应用(二)的图5

可见,位移的可视化效果与cps4单元保持一致。


虚假单元在UEL二次开发中的应用(二)的图6

上图为竖直向支反力云图,计算结果同样与cps4单元保持一致。

(三)给用户自定义单元施加面力(以Koyna混凝土坝上游坝面受静水压力为例)

材料信息、网格信息,计算信息均与上面保持一致,上游坝面所受静水压力如下图:

注:帖子不定时更新,也可能永远不更新,慎重参考,如给您带来误导,深感抱歉。

注:帖子不定时更新,也可能永远不更新,慎重参考,如给您带来误导,深感抱歉。

注:帖子不定时更新,也可能永远不更新,慎重参考,如给您带来误导,深感抱歉。

abaqus面力和压强abaqus体力载荷ABAQUS二次开发

虚假单元在UEL二次开发中的应用(二)的评论0条

    暂无评论

    虚假单元在UEL二次开发中的应用(二)的相关案例教程

    关于UEL动力隐式计算部分的程序讲解:以平面线性四节点等参单元为例 
    摘要:以平面线性四节点单元为例,分别采用FE和SBFE算法在ABAQUS提供的UEL子程序接口进行二次开发,UEL采用HHT动力隐式算法编写,将SBFEM嵌入到ABAQUS中。将ABAQUS自带的CPS4单元、自编FEM的UEL和自编SBFEM的UEL三者进行对比。模态对比和动力时程分析验证了三者吻合良好。 (一)平面板自由振动模态分析 (二)平面板动力时程分析 几何信息: 材料信息: 边界条件:
    挖孔板在简谐荷载作用下动力响应分析。 尺寸:尺寸为15x40,内部挖孔尺寸记不得了,当时是随意画的。 材料属性:弹性模量为1e10,泊松比0.25,密度2000。 边界条件:简谐荷载幅值为10,板左端约束xy向位移。 计算信息:计算总时长10s,积分步长0.01s,采用瑞丽阻尼,alpha=0.25(随意设置,仅用作验证),beta=0.1(随意设置,仅用作验证)。 单元类型:线性四节点等参单元,
    首先选择3D Weave模块下的weave type为Layer to Layer点击Next进入一下界面,如图所示:
    影响力
    粉丝
    内容
    获赞
    收藏
      项目客服
      培训客服
      0 0