ABAQUS DISP二次开发实践

1. 简介

  • 定义复杂位移条件的子程序,可用于定义例如随时间和空间(坐标)同时变化的位移,随节点编号变化的位移等。
  • 用于定义使用了User-defined的边界条件或连接运动的大小;
  • 用户子程序定义的边界条件或连接运动定义中定义的所有自由度均会调用该子程序;

2. 子程序接口

      SUBROUTINE  DISP(U,KSTEP,KINC,TIME,NODE,NOEL,JDOF,COORDS)C      INCLUDE 'ABA_PARAM.INC'C      DIMENSION U(3),TIME(3),COORDS(3)C      user coding to define U      RETURN      END

说明:

子程序在执行的过程中,遍历边界条件上的每个节点,遍历每个节点上的自由度约束,每个约束均执行一次子程序。变量NODE用于辨识节点、JDOF用于辨识自由度编号。

如果在边界条件定义时,输入了预定义值,那个程序执行过程中会将该值传入子程序。如果子程序不修改该值,那么abaqus会按照默认方式处理该约束条件。如果没有输入预定义值,那么子程序必须对其赋值,否则报错或者赋0值。

ABAQUS DISP二次开发(一)的图1

3. 变量

需要被定义的变量:

U(1)

  • 需要定义的荷载变量,包括位移、孔隙压力、温度等。U(1)被传入时可以是预先在荷载设置中定义好的值,也可以是默认值(一般情况下默认为0)。如果荷载定义中多个变量使用了User-defined,那么程序会按照自由度的编号顺序,编列每一个自由度,每一次遍历都执行一次子程序,U(1)即代表该自由度。
  • 如果程序需要规定变量的偏微分,例如在动态分析中的速度、加速度等,du/dt必须在U(2)中定义,d2u/dt2在U(3)中定义。执行过程与U(1)类似。

被传入的变量

名称描述
KSTEP分析步编号
KINC增量步编号
TIME(1)当前分析步值中的时间
TIME(2)当前总的分析时间
TIME(3)当前时间增量
NODE节点编号

      如果子程序被用于描述连接运动或者接触运动,该变量不可用
NOEL单元编号

      如果子程序被用于描述边界条件,该变量不可用
JDOF当前传入变量的自由度编号
COORDS荷载点当前坐标;如果考虑几何非线性,该值是上一个增量步结束时的值;否则是原始的节点坐标值;如果子程序被用于描述连接运动或接触运动,该变量不可用

4. 实例

建立一个长为10,横截面为矩形的梁,截面高宽均为0.1,材料属性为线弹性,E=2.06e5,v=0.3。梁两端均施加全约束,梁体本身采用DISP定义约束。划分100个单元。模型如下图所示:

使用如下代码实现,一个三角波传输的过程。


      SUBROUTINE  DISP(U,KSTEP,KINC,TIME,NODE,NOEL,JDOF,COORDS)C      INCLUDE 'ABA_PARAM.INC'C      DIMENSION U(3),TIME(3),COORDS(3)      Real*8 xxC      xx = KINC * 0.07      IF (COORDS(1)>=xx) then      U(1) = 0      else if ( COORDS(1)<xx .AND. COORDS(1)>= xx-1 ) then      U(1) = 0.5 * (xx-COORDS(1))      else if (COORDS(1)< xx-1 .and. COORDS(1)>=xx-2) then      U(1) = 0.5 * (COORDS(1)-xx+2)      else       U(1) = 0.0      end if      if (NODE == 1 .or. NODE == 101) then      U(1) = 0      end if       RETURN      END

计算结果如下:

ABAQUS DISP二次开发(一)的图3



免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空