Abaqus的热源程序的接口是DFLUX,可以定义非均匀的与位置、时间、温度、单元和积分点相关的热源方程。调用计算过程中,每一个单元积分点都会从这个子程序得到。当单元为一次单元时,不管是热传导分析、温度-结构耦合分析或者温度-电场-结构耦合分析时,将节点作为flux积分点进行计算。
基本格式如下:
最主要的就是定义FLUX().
FLUX(1):流经模型某点的热流。对于面热源,单位是JT–1L–2,对于体热源是JT–1L–3。
FLUX(2):热量对温度的变化率。
SOL:此时此刻求解变量的估算值(传热分析中的温度,质量扩散分析中的浓度)。
KSTEP:分析步
KINC:增量步
TIME(1):(瞬态分析中)当前分析步时间
TIME(2):(瞬态分析中)当前总时间
NOEL:单元号。
NPT:单元积分点号。单元或单元表面上的积分点编号,具体取决于表面还是体。
COORDS:包含点坐标的数组。如果考虑分析步中几何非线性,则这些坐标是当前坐标。否则是原始坐标。
JLTYP:表征热源形式,对于如下:
JLTYP Flux type
0 Surface-based flux
1 BFNU
11 S1NU (SNEGNU for heat transfer shells)
12 S2NU (SPOSNU for heat transfer shells)
13 S3NU
14 S4NU
15 S5NU
16 S6NU
TEMP:当前温度
PRESS:当前的等效应力
SNAME:对于面热源时适用,表示surface的名称。
解释:
parameter(one=1.d0) !定义一个常数
DIMENSION COORDS(3),FLUX(2),TIME(2) !定义数组,都是一维数组,元素分别为3,2,2个
CHARACTER 80 SNAME 定义字符型,长度为80
q=633 2.27 0.75 !变量赋值
v=0.00227
d=v TIME(2) !TIME(2)代表第二个元素
x=COORDS(1)
y=COORDS(2)
z=COORDS(3)!将COORDS的三个元素分别赋值于,x,y,z.
x0=0
y0=0
z0=0
a=0.0019
b=0.0032
c=0.0028
PI=3.1415 !
heat=6 sqrt(3.0) q/(a b c PI sqrt(PI))!
shape=exp(-3 (x-x0) 2/b 2-3 (y-y0) 2/c 2-3 (z-z0-d) 2/a 2)!
C JLTYP=1,表示为体热源
JLTYP=1
if (JSTEP. eq. one) then!注意one是一个变量,在一开头就赋值了.
C FLUX(1)=heat shape-1100000 !C表示注解,这个一般在FORTRAN77中常常用这个符号,现在人多用!来注解.或者说注释行.
FLUX(1)=heat*shape
endif
RETURN
END
(1)高斯面热源
(2)半椭球体热源
请将xx.inp和xx.for都放在abaqus工作目录中,启动abaqus的command窗口,输入命令:abaqus job=xx.inp user=xx.for int
后回车即可。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)