Abaqus子程序之UTEMP

1.简介

用户子程序 UTEMP :

允许您规定模型节点的温度;

每当用户定义的温度场定义下列出的节点需要当前温度值时,将被调用;

忽略为用户子程序之外的关联温度场定义提供的任何温度;和

可用于修改从结果文件中读取的任何温度。

 

2.本文讨论:

用户子程序接口

要定义的变量

传递信息的变量

 

3.调用方法

产品Abaqus/Standard

 

 

 

 

4.用户子程序接口

SUBROUTINE UTEMP(TEMP,NSECPT,KSTEP,KINC,TIME,NODE,COORDS)
C
INCLUDE 'ABA_PARAM.INC'
C
DIMENSION TEMP(NSECPT), TIME(2), COORDS(3)
C
user coding to define TEMP
RETURN
END

 

5.要定义的变量

TEMP(NSECPT)

节点号 NODE 处的温度值数组。如果节点未连接到梁或壳单元,则仅需返回一个温度值 (NSECPT=1)。否则,要返回的温度数取决于为梁或壳截面选择的温度模式和场变量输入。以下情况是可能出现的:

  1. ​梁截面的温度和场变量作为梁截面描述中显示的点处的值给出。所需值的数量 NSECPT 由指定的特定截面类型确定,如梁截面库中所述。

  2. 温度和场变量作为壳截面每一层的 n 个等距点的值给出。所需值的数量 NSECPT 等于 n。

  3. 梁截面的温度和场变量以截面原点处的值以及相对于 2 方向的梯度给出,对于三维梁,截面的 1 方向;或壳截面的温度和场变量作为参考表面的值以及相对于厚度的梯度给出。所需值的数量 NSECPT 对于三维梁为 3,对于二维梁为 2,对于壳为 2。如梁单元和壳单元中所述,首先给出中间曲面值,然后是第一个和(如果需要的话)第二个梯度。

  4. 还可以请求以其他两种方式之一设置温度:从先前生成的结果文件或通过直接数据输入。当数组 TEMP 被传递到用户子程序 UTEMP 时,它将仅包含从结果文件中获得的温度。您可以在此例程中修改这些值。任何作为直接数据输入给出的值都将被忽略。

 

6.传递信息的变量

NSECPT

模型中任何节点所需的最大截面值数。

KSTEP

分析步号

KINC

增量步号

TIME(1)

步骤时间的当前值。

TIME(2)

总时间的当前值。

NODE

节点号

COORDS

包含该点当前坐标的数组。

 

7.案例

这里为了便于学习理解,给出一个小案例吧,首先UTEMP子程序自定义了节点温度,接着使用UFIELD子程序定义了与温度有关的三个场变量。

C     UTEMP子程序
      SUBROUTINE UTEMP(TEMP,NSECPT,KSTEP,KINC,TIME,NODE,COORDS)
C
      INCLUDE 'ABA_PARAM.INC'
C     数组声明
      DIMENSION TEMP(NSECPT),COORDS(3),TIME(2)
      
C  定义节点处的温度值(与时间有关,下面是关系式,可以根据具体问题自定义)      
      TEMP(1)=100.*(TIME(1)+1.)
      RETURN
      END
      
C     UFIELD子程序    
      SUBROUTINE UFIELD(FIELD,KFIELD,NSECPT,KSTEP,KINC,TIME,NODE,COORDS,
     1                  TEMP,DTEMP,NFIELD)
C
      INCLUDE 'ABA_PARAM.INC'
C    数组声明
      DIMENSION FIELD(NSECPT,NFIELD),COORDS(3),TIME(2),TEMP(NSECPT),
     1          DTEMP(NSECPT)
C     这里定义了三个场变量,它们都与温度有关,通过分支语句定义每个场变量
C     下面是三个场变量与温度的关系式
      IF(KFIELD.EQ.1) THEN
        FIELD(1,1)= TEMP(1)
C 第2个场变量
      ELSE IF(KFIELD.EQ.2) THEN
        FIELD(1,1)=200+50.*TIME(1)
C 第3个场变量
      ELSE IF(KFIELD.EQ.3) THEN
        FIELD(1,1)=100.*(TIME(1)+1.)
      ENDIF        
      RETURN
      END

结语

前段时间太忙,所以更新的很慢,看到有同学私信我写个Vufield的教程,实际上V开头的子程序是提供给显式动力分析求解器用的,也就是说ufield和Vufield差异性很小,如果有问题欢迎私信一起交流学习(有空的话一定会回复的)。需要案例的公众号回复UTEMP 即可。(获取更多资料和学习交流欢迎大家关注公众号冬生亦东生,分享旨在本人复习和交流

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冬生亦东生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值