- 积分
- 0
- 注册时间
- 2016-8-3
- 仿真币
-
- 最后登录
- 1970-1-1
|
一条焊缝分为四段,设四个分析步,只有第一段有热源,剩下的三段都没有热源,试了各种修改的程序都不对,哪位大神能给指点一下,感激不尽。附上我的程序:
SUBROUTINE DFLUX(FLUX,SOL,JSTEP,JINC,TIME,NOEL,NPT,COORDS,JLTYP,
TEMP,PRESS,SNAME)
INCLUDE 'ABA_PARAM.INC'
DIMENSION COORDS(3),FLUX(2),TIME(2)
CHARACTER*80 SNAME
wu=380.0 !电流
wi=2.0 !电压
effi=0.8 !焊接热效率
v=0.01 !焊接速度
q=wu*wi*effi
d=v*TIME(2) !位移
x=COORDS(1)
y=COORDS(2)
z=COORDS(3)
x0=0 !热源1原点坐标
y0=0
z0=0.002
x1=0 !热源2原点坐标
y1=-0.01
z1=0.002
x2=0 !热源2原点坐标
y2=-0.02
z2=0.002
x3=0 !热源2原点坐标
y3=-0.03
z3=0.002
a=0.002 !热源形状参数
b=0.002
c=0.002
PI=3.1415926
heat=6.0*sqrt(3.0)*q/(a*b*c*PI*sqrt(PI)) !热源公式
shape1=exp(-3.0*(x-x0)**2/a**2-3.0*(y-y0+d)**2/b**2
$ -3.0*(z-z0)**2/c**2)
Shape2=exp(-3.0*(x-x1)**2/a**2-3.0*(y-y1+d)**2/b**2
$ -3.0*(z-z1)**2/c**2)
Shape3=exp(-3.0*(x-x2)**2/a**2-3.0*(y-y2+d)**2/b**2
$ -3.0*(z-z2)**2/c**2)
Shape4=exp(-3.0*(x-x3)**2/a**2-3.0*(y-y3+d)**2/b**2
$ -3.0*(z-z3)**2/c**2)
C JLTYP=1,表示为体热源
JLTYP=1
IF(JSTEP .EQ.3) THEN !3:分析步编号
FLUX(1)=heat*shape1
ENDIF
IF(JSTEP .EQ.4) THEN !4:分析步编号
FLUX(1)=heat*shape2+0.04
ENDIF
IF(JSTEP .EQ.5) THEN !5:分析步编号
FLUX(1)=heat*shape2
END IF
IF(JSTEP .EQ.6) THEN !6:分析步编号
FLUX(1)=heat*shape3+0.04
ENDIF
IF(JSTEP .EQ.7) THEN !7:分析步编号
FLUX(1)=heat*shape3
END IF
IF(JSTEP .EQ.8) THEN !8:分析步编号
FLUX(1)=heat*shape4+0.04
ENDIF
IF(JSTEP .EQ.9) THEN !9:分析步编号
FLUX(1)=heat*shape4
END IF
RETURN
END |
|