24小时热门版块排行榜    

查看: 2811  |  回复: 11
【悬赏金币】回答本帖问题,作者ywq741将赠送您 9 个金币

ywq741

新虫 (初入文坛)

[求助] ANSYS焊接生死单元问题,为什么死单元会有温度,该怎么解决问题? 已有2人参与

最近正在做ANSYS焊接温度场模拟,运用生死单元,模拟每层焊接运动。试过用d还进行约束,激活后解除约束ddele,但是发现最后温度会有负的温度。请问有什么方法可以实现啊!!!谢谢!
/PREP7
ET,1,SOLID70
MP,DENS,1,7930
MP,C,1,502
mptemp,1,24,40,60,80,110,150
mpdata,kxx,1,1,9.33,10.42,11.58,12.7,14,18
/VIEW,1,1,1,1
!*************定义基板尺寸***********
lx=0.080
lz=0.060
ly=0.005
!*************定义焊接参数***********
weld=0.012                       !每道焊道宽度
wheight=0.003                    !焊道的高度

LSIZE=0.002   
V=0.004         !速度
tinc=LSIZE/V    !每小段的时间间隔      
pi=3.1415926
U=25
I=180
Q=U*I         !电源有效功率
effect=0.8
f1=0.6
f2=1.4
ah=0.003
chf=2*ah
chb=8*ah
bh=0.003
Qmax11=6*effect*3**(1/2)*f1*q/(pi*pi**(1/2)*ah*bh*chf)
Qmax12=6*effect*3**(1/2)*f2*q/(pi*pi**(1/2)*ah*bh*chb)

!*****************建立模型,生成网格**************
block,0,lx,0,ly,0,lz
wpoff,0,ly,lz/2
block,0,lx,0,wheight*5,-weld/2,weld/2
wpoff,0,0,-weld/2
vsbw,all,,delete
wpoff,0,0,weld
vsbw,all,,delete
wpoff,0,-ly,-weld/2
block,-0.02,0,0,ly,-lz/2,lz/2
block,lx,lx+0.02,0,ly,-lz/2,lz/2
wpoff,0,ly,weld/2
vglue,all

FLST,5,4,4,ORDE,4   
FITEM,5,14  
FITEM,5,16  
FITEM,5,19  
FITEM,5,39  
CM,_Y,LINE  
LSEL, , , ,P51X
CM,_Y1,LINE
CMSEL,,_Y   
!*  
LESIZE,_Y1, , ,40, , , , ,1
!*  
FLST,5,4,4,ORDE,4   
FITEM,5,23  
FITEM,5,-24
FITEM,5,69  
FITEM,5,71  
CM,_Y,LINE  
LSEL, , , ,P51X
CM,_Y1,LINE
CMSEL,,_Y   
!*  
LESIZE,_Y1, , ,6, , , , ,1  
!*  
FLST,5,4,4,ORDE,4   
FITEM,5,13  
FITEM,5,15  
FITEM,5,70  
FITEM,5,72  
CM,_Y,LINE  
LSEL, , , ,P51X
CM,_Y1,LINE
CMSEL,,_Y   
!*  
LESIZE,_Y1, , ,10, , , , ,1
!*  
MSHAPE,0,3D
MSHKEY,1
!*  
CM,_Y,VOLU  
VSEL, , , ,       8
CM,_Y1,VOLU
CHKMSH,'VOLU'   
CMSEL,S,_Y  
!*  
VMESH,_Y1   
!*  
CMDELE,_Y   
CMDELE,_Y1  
CMDELE,_Y2  
!*  
ESIZE,2e-3,0,   
/DIST,1,1.08222638492,1
/REP,FAST   
/DIST,1,1.08222638492,1
/REP,FAST   
/DIST,1,1.08222638492,1
/REP,FAST   
/DIST,1,1.08222638492,1
/REP,FAST   
/DIST,1,1.08222638492,1
/REP,FAST   
/DIST,1,1.08222638492,1
/REP,FAST   
/DIST,1,1.08222638492,1
/REP,FAST   
/DIST,1,1.08222638492,1
/REP,FAST   
/DIST,1,1.08222638492,1
/REP,FAST   
/DIST,1,1.08222638492,1
/REP,FAST   
/DIST,1,1.08222638492,1
/REP,FAST   
/DIST,1,1.08222638492,1
/REP,FAST   
FLST,5,3,6,ORDE,3   
FITEM,5,1   
FITEM,5,7   
FITEM,5,9   
CM,_Y,VOLU  
VSEL, , , ,P51X
CM,_Y1,VOLU
CHKMSH,'VOLU'   
CMSEL,S,_Y  
!*  
VMESH,_Y1   
!*  
CMDELE,_Y   
CMDELE,_Y1  
CMDELE,_Y2  
!*  
FLST,5,2,6,ORDE,2   
FITEM,5,10  
FITEM,5,-11
CM,_Y,VOLU  
VSEL, , , ,P51X
CM,_Y1,VOLU
CHKMSH,'VOLU'   
CMSEL,S,_Y  
!*  
VSWEEP,_Y1  
!*  
CMDELE,_Y   
CMDELE,_Y1  
CMDELE,_Y2  
!*  
/UI,MESH,OFF


/solu
antype,trans
trnopt,full
nropt,full,,on
AUTOTS,on
lnsrch,on
tunif,25
!**************杀死焊缝单元********************
nsel,s,loc,y,ly,ly+wheight*5
esln,s,1
CM,weld_elem,ELEM
ekill,all
esel,s,elem,,weld_elem
nsle,s
cm,weld_node,node
ALLSEL,ALL
esel,s,live
eplot
!**********施加对流载荷*************
! 熔积层暴露空气,辐射和对流
ALLSEL,ALL  
NSEL,S,LOC,y,0,0.020
NSEL,R,EXT
SF,ALL,CONV,rad,25  !空气
!**********约束杀死单元的温度约束*************
nsel,s,node,,weld_node
D,ALL,temp,298
!************定义数组维数**********
*do,j,1,5,1
MAX_X=1+lx/LSIZE
!*************定义table数组******************************************
*do,i,1,MAX_X,1
XX=(I-1)*LSIZE

CSYS,0
nsel,s,loc,y,ly+wheight*(j-1),ly+wheight*j
nsel,r,loc,z,lz/2-weld/2,lz/2+weld/2
esln,s,1
DDELE,ALL
allsel,all

!!!!!!!生死单元的处理
csys,0
nsel,s,loc,y,ly+wheight*(j-1),ly+wheight*j
nsel,r,loc,z,lz/2-weld/2,lz/2+weld/2
nsel,r,loc,x,XX-chf/2,XX+chf/2
esln,s,1
ealive,all
eplot
!!!!!!双椭球体热源的加载         
ALLSEL,ALL
!!!双椭球热源的加载
!!!前半球节点的选取
local,11,2,XX,ly+wheight*j,lz/2,,,,bh/chf,ah/chf,
NSEL,S,LOC,X,0,chf
NSEL,R,LOC,Y,270,360
NSEL,R,LOC,Z,0,180
CM,FRONT,NODE
ALLSEL,ALL
!!!!!!!!!!!!!!!!!!!!!!!!!!!
LOCAL,13,0,XX,ly+wheight*j,lz/2, , , ,1,1,

*DEL,_FNCNAME   
*DEL,_FNCMTID   
*DEL,_FNC_C1
*DEL,_FNC_C2
*DEL,_FNC_C3
*DEL,_FNC_C4
*DEL,_FNCCSYS
*DEL,'front'
*SET,_FNCNAME,'front'   
*DIM,_FNC_C1,,1
*DIM,_FNC_C2,,1
*DIM,_FNC_C3,,1
*DIM,_FNC_C4,,1
*SET,_FNC_C1(1),qmax11  
*SET,_FNC_C2(1),chf
*SET,_FNC_C3(1),bh  
*SET,_FNC_C4(1),ah  
*SET,_FNCCSYS,13
! /INPUT,front.func,,,1
*DIM,%_FNCNAME%,TABLE,6,20,1,,,,%_FNCCSYS%  
!   
! Begin of equation: Qmax11*exp(-3(({x}/chf)^2+({y}/bh)^2+({z}/ah)^2))  
*SET,%_FNCNAME%(0,0,1), 0.0, -999   
*SET,%_FNCNAME%(2,0,1), 0.0
*SET,%_FNCNAME%(3,0,1), %_FNC_C1(1)%
*SET,%_FNCNAME%(4,0,1), %_FNC_C2(1)%
*SET,%_FNCNAME%(5,0,1), %_FNC_C3(1)%
*SET,%_FNCNAME%(6,0,1), %_FNC_C4(1)%
*SET,%_FNCNAME%(0,1,1), 1.0, -1, 0, 0, 0, 0, 0  
*SET,%_FNCNAME%(0,2,1), 0.0, -2, 0, 1, 0, 0, -1
*SET,%_FNCNAME%(0,3,1),   0, -3, 0, 1, -1, 2, -2
*SET,%_FNCNAME%(0,4,1), 0.0, -1, 0, 1, 2, 4, 18
*SET,%_FNCNAME%(0,5,1), 0.0, -2, 0, 2, 0, 0, -1
*SET,%_FNCNAME%(0,6,1), 0.0, -4, 0, 1, -1, 17, -2   
*SET,%_FNCNAME%(0,7,1), 0.0, -1, 0, 1, 3, 4, 19
*SET,%_FNCNAME%(0,8,1), 0.0, -2, 0, 2, 0, 0, -1
*SET,%_FNCNAME%(0,9,1), 0.0, -5, 0, 1, -1, 17, -2   
*SET,%_FNCNAME%(0,10,1), 0.0, -1, 0, 1, -4, 1, -5   
*SET,%_FNCNAME%(0,11,1), 0.0, -2, 0, 1, 4, 4, 20
*SET,%_FNCNAME%(0,12,1), 0.0, -4, 0, 2, 0, 0, -2
*SET,%_FNCNAME%(0,13,1), 0.0, -5, 0, 1, -2, 17, -4  
*SET,%_FNCNAME%(0,14,1), 0.0, -2, 0, 1, -1, 1, -5   
*SET,%_FNCNAME%(0,15,1), 0.0, -1, 0, 3, 0, 0, -2
*SET,%_FNCNAME%(0,16,1), 0.0, -4, 0, 1, -1, 3, -2   
*SET,%_FNCNAME%(0,17,1), 0.0, -1, 0, 1, -3, 3, -4   
*SET,%_FNCNAME%(0,18,1), 0.0, -1, 7, 1, -1, 0, 0
*SET,%_FNCNAME%(0,19,1), 0.0, -2, 0, 1, 17, 3, -1   
*SET,%_FNCNAME%(0,20,1), 0.0, 99, 0, 1, -2, 0, 0
! End of equation: Qmax11*exp(-3(({x}/chf)^2+({y}/bh)^2+({z}/ah)^2))
!-->
BF,FRONT,HGEN,%front%     
CMDELE,FRONT   
ALLSEL,ALL
!!!后半球节点的选取
local,12,2,XX,ly+wheight*j,lz/2,,,,bh/chb,ah/chb,
NSEL,S,LOC,X,0,chb
NSEL,R,LOC,Y,180,270
NSEL,R,LOC,Z,0,180
CM,BEHIND,NODE
ALLSEL,ALL
!!!!!!!!!!!!!!!!!!!!!!!!!!!
LOCAL,14,0,XX,ly+wheight*j,lz/2, , , ,1,1,
*DEL,_FNCNAME   
*DEL,_FNCMTID   
*DEL,_FNC_C1
*DEL,_FNC_C2
*DEL,_FNC_C3
*DEL,_FNC_C4
*DEL,_FNCCSYS
*DEL,'back'
*SET,_FNCNAME,'back'
*DIM,_FNC_C1,,1
*DIM,_FNC_C2,,1
*DIM,_FNC_C3,,1
*DIM,_FNC_C4,,1
*SET,_FNC_C1(1),qmax12  
*SET,_FNC_C2(1),chb
*SET,_FNC_C3(1),bh  
*SET,_FNC_C4(1),ah  
*SET,_FNCCSYS,0
! /INPUT,back.func,,,1  
*DIM,%_FNCNAME%,TABLE,6,20,1,,,,%_FNCCSYS%  
!   
! Begin of equation: Qmax12*exp(-3(({x}/chb)^2+({y}/bh)^2+({z}/ah)^2))  
*SET,%_FNCNAME%(0,0,1), 0.0, -999   
*SET,%_FNCNAME%(2,0,1), 0.0
*SET,%_FNCNAME%(3,0,1), %_FNC_C1(1)%
*SET,%_FNCNAME%(4,0,1), %_FNC_C2(1)%
*SET,%_FNCNAME%(5,0,1), %_FNC_C3(1)%
*SET,%_FNCNAME%(6,0,1), %_FNC_C4(1)%
*SET,%_FNCNAME%(0,1,1), 1.0, -1, 0, 0, 0, 0, 0  
*SET,%_FNCNAME%(0,2,1), 0.0, -2, 0, 1, 0, 0, -1
*SET,%_FNCNAME%(0,3,1),   0, -3, 0, 1, -1, 2, -2
*SET,%_FNCNAME%(0,4,1), 0.0, -1, 0, 1, 2, 4, 18
*SET,%_FNCNAME%(0,5,1), 0.0, -2, 0, 2, 0, 0, -1
*SET,%_FNCNAME%(0,6,1), 0.0, -4, 0, 1, -1, 17, -2   
*SET,%_FNCNAME%(0,7,1), 0.0, -1, 0, 1, 3, 4, 19
*SET,%_FNCNAME%(0,8,1), 0.0, -2, 0, 2, 0, 0, -1
*SET,%_FNCNAME%(0,9,1), 0.0, -5, 0, 1, -1, 17, -2   
*SET,%_FNCNAME%(0,10,1), 0.0, -1, 0, 1, -4, 1, -5   
*SET,%_FNCNAME%(0,11,1), 0.0, -2, 0, 1, 4, 4, 20
*SET,%_FNCNAME%(0,12,1), 0.0, -4, 0, 2, 0, 0, -2
*SET,%_FNCNAME%(0,13,1), 0.0, -5, 0, 1, -2, 17, -4  
*SET,%_FNCNAME%(0,14,1), 0.0, -2, 0, 1, -1, 1, -5   
*SET,%_FNCNAME%(0,15,1), 0.0, -1, 0, 3, 0, 0, -2
*SET,%_FNCNAME%(0,16,1), 0.0, -4, 0, 1, -1, 3, -2   
*SET,%_FNCNAME%(0,17,1), 0.0, -1, 0, 1, -3, 3, -4   
*SET,%_FNCNAME%(0,18,1), 0.0, -1, 7, 1, -1, 0, 0
*SET,%_FNCNAME%(0,19,1), 0.0, -2, 0, 1, 17, 3, -1   
*SET,%_FNCNAME%(0,20,1), 0.0, 99, 0, 1, -2, 0, 0
! End of equation: Qmax12*exp(-3(({x}/chb)^2+({y}/bh)^2+({z}/ah)^2))
!-->
BF,BEHIND,HGEN,%back%   
CMDELE,BEHIND
ALLSEL,ALL

        
time,i*tinc+50*(j-1)
nsubst,10
SOLVE
BFDELE,all,HGEN

esel,s,live
eplot
OUTRES,ALL,ALL,
*ENDDO
*enddo

*DO,ii,1,120
csys,0
nsel,s,ext
sf,all,conv,30,25
ALLSEL,ALL
TIME,5*ii+250
solve
*ENDDO
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

346507037

铁虫 (正式写手)

【答案】应助回帖


感谢参与,应助指数 +1
ywq741: 金币+1 2022-05-16 20:39:50
这个问题 应该好解决 ,具体的看是怎么传热的
2楼2022-05-16 08:33:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

htbbzzg

铁杆木虫 (著名写手)

【答案】应助回帖

使用生死单元时不要对死单元设置温度载荷,否则就相当于在生死单元边界处给活单元设置了固定温度载荷,会导致计算结果不正确。
  由于死单元也参与计算,因此死单元也会有温度,但是软件对死单元做了一些处理,因此死单元对计算结构的影响很小,可以忽略。
7楼2022-05-22 09:31:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

ywq741

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by 346507037 at 2022-05-16 08:33:12
这个问题 应该好解决 ,具体的看是怎么传热的

你好,我这个是利用位置依次激活每层单元,从而达到每层椭球热源的传递

发自小木虫Android客户端
3楼2022-05-16 09:32:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ywq741

新虫 (初入文坛)

4楼2022-05-16 09:49:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ywq741

新虫 (初入文坛)

5楼2022-05-16 09:49:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

346507037

铁虫 (正式写手)

【答案】应助回帖

引用回帖:
5楼: Originally posted by ywq741 at 2022-05-16 09:49:47

私信联系一下 ,我帮你 算一下,好解决
6楼2022-05-16 22:31:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hjkkjbbkh

铁虫 (初入文坛)

引用回帖:
7楼: Originally posted by htbbzzg at 2022-05-22 09:31:43
使用生死单元时不要对死单元设置温度载荷,否则就相当于在生死单元边界处给活单元设置了固定温度载荷,会导致计算结果不正确。
  由于死单元也参与计算,因此死单元也会有温度,但是软件对死单元做了一些处理,因此 ...

请问用d约束死单元温度为0,然后激活时候再ddelete删除相应需要激活的单元温度可以吗,最近做的时候发现带着死单元显示的时候有负的温度,所以考虑如此做。
8楼2023-11-21 20:35:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

htbbzzg

铁杆木虫 (著名写手)

【答案】应助回帖

这样做是可以的,但是会导致活单元与死单元相邻部位的温度结果不正确:因为你设置死单元的温度为 0,实际上是设置死单元的所有节点的温度为 0,而死单元的边界节点同时又属于相邻的活单元,那么就相当于给相邻活单元的节点施加了一个固定的 0 温度条件,从而导致活单元的计算结果不正确。
计算时需要死单元也参加计算,但是显示结果是可以不显示死单元的结果,方法很简单:显示结果前,先选择所有活单元以及属于活单元的所有节点,然后在显示结果时就只有活单元的结果了。如果这种情况仍然有负的温度,那就是模型中有问题了。可以先激活全部单元,算一次看看。
9楼2023-11-30 09:11:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hjkkjbbkh

铁虫 (初入文坛)

引用回帖:
9楼: Originally posted by htbbzzg at 2023-11-30 09:11:04
这样做是可以的,但是会导致活单元与死单元相邻部位的温度结果不正确:因为你设置死单元的温度为 0,实际上是设置死单元的所有节点的温度为 0,而死单元的边界节点同时又属于相邻的活单元,那么就相当于给相邻活单元 ...

感谢您的回复,祝您学业顺利,我想的是显示结果的时候也加上死单元进行显示,但是这样会有负的温度,仅选择活单元显示是没有负的温度的。在其他帖子中看到有说可以仅选择活单元计算,即esel,s,live   solve,但这样会导致程序秒退,因此还是想着约束温度计算然后删除。所以想请问您在计算的时候有没有好的解决方式。
10楼2023-12-08 11:33:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 ywq741 的主题更新
不应助 确定回帖应助 (注意:应助才可能被奖励,但不允许灌水,必须填写15个字符以上)
信息提示
请填处理意见