1、,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,#,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,ABAQUS,的用户子程序,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,用户子程序,用户子程序为分析提供了一个非常强大、灵活的工具。,用户子程序:,可以提高几个,ABAQUS,选项的功能,仅用数据行的方式使用这些选项可能太过严格;,用,FORTRAN,语言写成;,在某些情况下可以利用,ABAQUS,的功能程序。,ABAQUS,6.
2、1版本发布会暨99中国地区用户会议,清华大学工程力学系,ABAQUS,中的用户子程序:,CREEP,定义时间相关的粘塑性行为(蠕变和膨胀)的用户子程序,DFLOW,在压实分析中定义非均匀孔隙 流体速度的用户子程序,DFLUX,在热传导或质量扩散分析中定义非均匀分布流的用户子程序,DISP,定义边界条件的用户子程序,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,DLOAD,定义非均匀分布载荷的用户子程序,FILM,在热传导分析中定义非均匀膜系数和相关的下沉温度的用户子程序,FLOW,在压实分析中定义非均匀渗流系数和相关的下沉孔隙压力的用户子程序,FRIC,定义接触面摩
3、擦行为的用户子程序,GAPCON,在温度位移耦合或者纯热传导分析中定义接触面或节点之间的热传导系数的用户子程序,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,GAPELECTR,在热电耦合分析中定义表面间导电系数的用户子程序,HARDINI,定义初始等效塑性应变和初始背应力张量的用户子程序,HETVAL,在热传导分析中定义内部热产生的用户子程序,MPC,定义多点约束的用户子程序,ORIENT,为运动耦合约束定义局部方向或者定义局部材料取向的用户子程序,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,RSURFU,定义刚性表面的用户子程序,S
4、DVINI,定义依赖于解的状态变量场初始值的用户子程序,SIGINI,定义初应力场的用户子程序,UCORR,定义随机响应载荷的交叉 相关属性的用户子程序,UEL,定义单元的用户子程序,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,非线性用户单元的开发,动机,定义用户单元,UEL,接口,例:具有非线性截面行为的平面梁单元,例:新开发的两种用户单元,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,概要,ABAQUS/Standard,提供接口,允许用户实现线性和非线性有限单元。,非线性有限单元在用户子程序,UEL,中实现。,接口允许定义任意复杂
5、的单元。,如果编写适当,用户单元可以在,ABAQUS/Standard,的大部分程序中应用。,可以在一个,UEL,子程序中实现多个用户单元,这些单元可以同时使用。,这里只讨论非线性用户单元的实现,并采用实例说明。,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,动机,ABAQUS/Standard,是一个功能强大的分析工具,拥有一个大单元库,有500多种单元可以进行绝大部分复杂结构问题的分析。,然而,在有些情况下需要开发用户单元来补充,ABAQUS,的单元库:,所需的单元几何信息与,ABAQUS,已有的单元不同,模拟与结构行为耦合的非结构物理过程,施加依赖于解的载荷,
6、模拟主动控制机理,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,在分析程序如,ABAQUS,中开发用户单元而不是编写一个完全的分析程序的,优点,是很明显的:,ABAQUS,提供大量的结构单元、分析程序和建模工具。,ABAQUS提供前处理和后处理。,许多第三方软件提供带有,ABAQUS,接口的前后处理器。,维护和移植子程序比维护和移植一个完全的有限元程序容易的多。,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,定义用户单元,用户单元的主要特征,在编写,UEL,子程序前,必须先定义单元的以下主要特征:,单元的节点数,节点的坐标数,每一个节点处
7、的自由度数,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,其它重要的单元性质,另外,必须定义下面的单元性质:,需要在,UEL,外定义的单元性质数目,每一个单元需要存储的依赖于解的状态变量数目(,SDVs),可能会作用于单元上的(分布)载荷类型数目,这些数目不必立即定义:它们可以很容易地在完成基本的,UEL,子程序后加入。,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,定义用户单元行为,在一般的分析步中单元对模型的主要贡献是提供作用于节点上的“力”,F,N,依赖于节点的自由度,u,N,的值。,如果自由度是位移,那么相关的“力”为节点力。类似
8、地,旋转对应于转矩,温度对应于热流。,在非线性用户单元中“力”常常依赖于自由度的增量,u,N,和内部状态变量,H,。,状态变量必须在用户子程序中进行更新。,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,在一般分析步中求解(非线性)方程组需要你定义单元的刚度矩阵:,刚度矩阵应包含,F,N,对,u,N,所有的直接和间接的依赖性,例如,在一般分析步中刚度矩阵定义的越精确,收敛性就越好。,刚度矩阵确定线性扰动分析步的解,所以其定义必须精确。,刚度矩阵可以为对称或非对称。,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,用户单元的复杂程度可以变化很大
9、。,在由常规单元构成的分析中可以采用简单的用户单元来达到“控制”和“反馈”的功能。,复杂的非线性结构单元的编制常常需要很大的工作量。,如果单元由非线性材料构成,你最好用单独的子程序描述材料行为。,如果材料模型是在子程序,UMAT,中实现的,那么可以在,UEL,中包含对,UMAT,的调用。,前面对,UMAT,中积分的讨论同样适用于,UEL,中的材料模型。,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,UEL,接口,ABAQUS,选项,用户单元是用,*,USER ELEMENT,选项定义的。在输入文件中这个选项必须出现在引用用户单元的*,ELEMENT,选项的前面。,输
10、入文件中用于,UEL,的语法如下:,*,USER ELEMENT,TYPE=U,n,NODES=,COORDINATES=,PROPERTIES=,I PROPERTIES=,VARIABLES=,UNSYMM,Data lines(s),*ELEMENT,TYPE=U,n,ELSET=UEL,Data line(s),*UEL PROPERTY,ELSET=UEL,Data line(s),*USER SUBROUTINE,(INPUT=file_name),*,USER SUBROUTINE,选项在,ABAQUS 6.1,版本中将不再用。,ABAQUS,6.1版本发布会暨99中国地区用户会
11、议,清华大学工程力学系,UEL,接口,用户子程序,UEL,的接口如下:,SUBROUTINE UEL(RHS,AMATRX,SVARS,ENERGY,NDOFEL,NRHS,NSVARS,1 PROPS,NPROPS,COORDS,MCRD,NNODE,U,DU,V,A,JTYPE,TIME,DTIME,2 KSTEP,KINC,JELEM,PARAMS,NDLOAD,JDLTYP,ADLMAG,PREDEF,3 NPREDF,LFLAGS,MLVARX,DDLMAG,MDLOAD,PNEWDT,JPROPS,NJPROP,4 PERIOD),C,INCLUDE ABA_PARAM.INC,C
12、,DIMENSION RHS(MLVARX,*),AMATRX(NDOFEL,NDOFEL),1 SVARS(NSVARS),ENERGY(8),PROPS(*),COORDS(MCRD,NNODE),2 U(NDOFEL),DU(MLVARX,*),V(NDOFEL),A(NDOFEL),TIME(2),3 PARAMS(3),JDLTYP(MDLOAD,*),ADLMAG(MDLOAD,*),4 DDLMAG(MDLOAD,*),PREDEF(2,NPREDF,NNODE),LFLAGS(*),JPROPS(*),“,INCLUDE”,声明语句为浮点变量设置合适的精度(大部分机器上为,RE
13、AL*8)。,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,UEL,变量,ABAQUS,为用户单元,UEL,提供下面的变量:,坐标、位移、增量位移,对于动态,还有速度和加速度,增量开始时刻的状态变量,SDVs,总时间和增量时间、温度以及用户定义的场变量,用户单元性质,载荷类型及当前总载荷值和载荷增量值,单元类型和用户定义的单元号,分析类型标志,对于动态,积分算子值,当前所在的分析步数和增量步数,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,必须定义下面的变量:,右手端矢量(节点流或力),刚度矩阵,依赖于解的状态变量,可以定义下面的变量:,
14、单元的能量(应变能、塑性耗散、动能等),建议的新时间增量,所有参数的详细描述请参见,ABAQUS/Standard,用户手册的第6.2.18节。,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,编写和测试,UEL,编写,ABAQUS,用户子程序的基本规则:,遵从,FORTRAN 77,或,C,的语法。,确保所有的变量都定义和初始化过。,为状态变量分配足够的存储空间。,ABAQUS 5.8-10,版本要求,FORTRAN,编译器的版本为5.0;从,ABAQUS 5.8-14,开始,要求,FORTRAN,编译器的版本为6.0。,ABAQUS,6.1版本发布会暨99中国地区
15、用户会议,清华大学工程力学系,复杂的,UELs,可能会存在很多潜在的问题,调试一个不收敛的包含,UEL,的大模型会带来不必要的困难。,用只有一个单元的输入文件验证,UEL:,首先,用一般分析步进行测试将所有的解变量都赋值,用来验证总流(力)。,其次,用线性扰动步进行测试将所有的载荷都赋值,用来验证单元的刚度矩阵。,最后,用一般分析步进行测试将所有的载荷都赋值,用来验证刚度矩阵和流矢量的匹配。,逐渐增大测试问题的复杂程度。如果可能,与标准,ABAQUS,单元的结果进行比较。,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,例1:具有非线性截面行为的平面梁单元,目标,分析
16、一个平面混凝土框架结构。,这个框架所受载荷很大,混凝土内已有明显的非线性,但位移仍然很小,可以不考虑几何非线性。,建立一个模型:直接用轴向力和弯矩描述非线性截面行为。,这与选项*,BEAM SECTION,SECTION=NONLINEAR GENERAL,类似,但是允许轴向和弯曲项之间的耦合。,忽略横向剪切变形。,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,编程要求,单元采用数值积分;因此,需要在,UEL,中定义下面的量:,单元,B,矩阵,用于联系轴向应变,、曲率,与单元位移,u,e,:,本构律矩阵,D,,用于联系轴向力,F,、,弯矩,M,与轴向应变、曲率:,A
17、BAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,单元刚度矩阵:,单元力矢量:,采用数值积分:,其中,n,为积分点数,,l,i,为与积分点,i,相关联的长度。,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,评论,这个,UEL,所采用的描述和简单的,B23,单元用于几何线性分析时所采用的描述基本相同。,这个程序可以和*,TRANSFORM,一起使用。,这个程序可以比较简单地推广到三维分析。,将这个程序发展应用于几何非线性分析要复杂的多。,即使是线性分析,每一个增量步至少调用这个程序两次(对于每一个单元):一次用于组集,一次用于恢复。然后,每一次迭
18、代至少调用一次:组集和恢复同时进行。,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,EPZ,单元,界面单元,用于裂纹自主扩展,起裂、加速、减速、止裂都是计算的结果,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,MSG,和,TNT,应变梯度塑性单元,引入高阶应变应变的梯度,需要,形函数对坐标的二阶导数,在经典的单元中只有形函数对坐标的一阶导数,非局部,加权积分,ABAQUS,6.1版本发布会暨99中国地区用户会议,清华大学工程力学系,ABAQUS/explicit,的用户子程序,1、,VDLOAD:,非均匀分布的荷载,2、VFRIC:定义接触表面的摩擦性质,3、VUMAT:定义材料本构,没有用户单元接口,谢谢!,THE END,
©2010-2025 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100