各位大佬,麻烦 返回小木虫查看更多
程序如下,热源形状参数abc和焊接电流、电压、焊接速度以及关键点的坐标和时间可以根据你的条件修改。 SUBROUTINE DFLUX(FLUX,SOL,JSTEP,JINC,TIME,NOEL,NPT,COORDS,JLTYP, 1 TEMP,PRESS,SNAME) C INCLUDE 'ABA_PARAM.INC' DIMENSION COORDS(3),FLUX(2),TIME(2) CHARACTER*80 SNAME x=COORDS(1) y=COORDS(2) z=COORDS(3) PI=3.1415926 !焊接工艺参数,使用同一热源 wu=60.0 wi=1.0 effi=1.0 v=0.1 q=wu*wi*effi !焊接热源形状参数(球热源) a=0.0005 b=0.0005 c=0.0005 !各个关键点坐标及焊枪经过时间(相对总时间累计shijian) x1=-0.00255 y1=0.00095 z1=0.0002 t1=0.0 x2=0.00245 y2=0.00095 z2=0.0002 t2=0.05 !热源分布 heat=6*sqrt(3.0)*q/(a*b*c*PI*sqrt(PI)) !第一段直线 if(TIME(2).lt.t2) then d=v*TIME(2) !热源中心在总体坐标系的坐标 xd=x1+d yd=y1 zd=z1 !热源局部坐标 xx=x-xd yy=y-yd zz=z-zd shape=exp(-3.0*xx**2/a**2-3.0*yy**2/b**2-3.0*zz**2/c**2) end if C JLTYP=1,表示为体热源 JLTYP=1 FLUX(1)=heat*shape RETURN END,
程序如下,热源形状参数abc和焊接电流、电压、焊接速度以及关键点的坐标和时间可以根据你的条件修改。
SUBROUTINE DFLUX(FLUX,SOL,JSTEP,JINC,TIME,NOEL,NPT,COORDS,JLTYP,
1 TEMP,PRESS,SNAME)
C
INCLUDE 'ABA_PARAM.INC'
DIMENSION COORDS(3),FLUX(2),TIME(2)
CHARACTER*80 SNAME
x=COORDS(1)
y=COORDS(2)
z=COORDS(3)
PI=3.1415926
!焊接工艺参数,使用同一热源
wu=60.0
wi=1.0
effi=1.0
v=0.1
q=wu*wi*effi
!焊接热源形状参数(球热源)
a=0.0005
b=0.0005
c=0.0005
!各个关键点坐标及焊枪经过时间(相对总时间累计shijian)
x1=-0.00255
y1=0.00095
z1=0.0002
t1=0.0
x2=0.00245
y2=0.00095
z2=0.0002
t2=0.05
!热源分布
heat=6*sqrt(3.0)*q/(a*b*c*PI*sqrt(PI))
!第一段直线
if(TIME(2).lt.t2) then
d=v*TIME(2)
!热源中心在总体坐标系的坐标
xd=x1+d
yd=y1
zd=z1
!热源局部坐标
xx=x-xd
yy=y-yd
zz=z-zd
shape=exp(-3.0*xx**2/a**2-3.0*yy**2/b**2-3.0*zz**2/c**2)
end if
C JLTYP=1,表示为体热源
JLTYP=1
FLUX(1)=heat*shape
RETURN
END,