编辑代码

SUBROUTINE DFLUX(FLUX, SOL, KSTEP, KINC, TIME, NOEL, NPT, COORDS, JLTYP, TEMP, PRESS, SNAME)
C
INCLUDE 'ABA_PARAM.INC'
DIMENSION COORDS(3), FLUX(2), TIME(2)
CHARACTER*80 SNAME
C
W_U = 18.0
W_I = 60.0
EFFI = 0.5
Q = W_U * W_I * EFFI
v = 0.002 * TIME(2) ! 2*t mm/s 的速度向z正方向移动
x = COORDS(1)
y = COORDS(2)
z = COORDS(3)

C
x0 = 0
y0 = 0
C
HALF_WIDTH = 7.5
C
JLTYP = 0

IF (ABS(x) <= HALF_WIDTH .AND. ABS(y) <= HALF_WIDTH .AND. z = vt) THEN
    ! 在正方形区域内且z方向匹配时提供热通量
    FLUX(1) = 1.5 ! 热通量为1.5 W/mm^2
ELSE
    ! 在正方形区域外或z方向不匹配时热通量为0
    FLUX(1) = 0.0
ENDIF


RETURN
END