zhnllxy 发表于 2011-1-7 13:24:46

请教shell57,solid70的耦合

小弟最近在弄激光弯曲模型,计划用shell-solid耦合来模拟(扫描区域solid,其他区域用shell)具体见命令流,我的问题是,扫描结束后,温度正确(和全部用实体差2°),可是冷却100s后温度明显错误。求大侠指点迷津,思索几天实在不得要领才上来请教的。
FINI
/CLEAR
/FILNAME,Analysis of Laser Bending
/UNITS,MPA   !国际单位
/PREP7
length=0.08   !长宽高
width=0.08
hight=0.002
h=20    !对流系数
T0=25    !室温
A=0.55    !表面吸收系数
P=1000    !激光功率1000W
R=0.003    !光斑半径3mm
nclng=2
*dim,airclng,array,nclng
airclng(1)=50,100
!单元定义
ET,1,SOLID70   !3D热分析单元
ET,2,SHELL57   !面单元热分析单元
R,2,0.002
ET,3,SURF152   !表面效应单元
KEYOPT,3,3,0      !单元152属性设置
KEYOPT,3,4,1      !solid70 不带中间节点,所以为exclude 1
KEYOPT,3,5,0   !因为surf152施加对流,可以为1,或0,但要在surf152上同时施加辐射,必须为Include 1。若施加热流必须为exclude 0
KEYOPT,3,6,0      !又因为若surf152施加热流时K5必须为exclued 0 。本模型把热流施加在surf152上,对流和辐射在solid70
KEYOPT,3,7,0
KEYOPT,3,8,1      !表面效应单元上加载热流,忽略对流。
KEYOPT,3,9,0   !定义单元关键字(辐射用到),这里的surf152没有施加辐射!

!材料定义
MP,DENS,1,7850
MPTEMP,1,20,300,600,900
MPDATA,C,1,,438,570,720,580
MPDATA,KXX,1,,53,44.1,34.2,27
MP,DENS,2,7850
MPDATA,C,2,,438,570,720,580
MPDATA,KXX,2,,53,44.1,34.2,27

!建模划网
/VIEW,1,1,1,1
block,0,0.08,width/2-0.006,width/2+0.006,0,0.002!体
/PNUM,VOLU,ON
TYPE,1
ESIZE,0.0005
VMESH,all
wpoffs,0,0,0.001   !面
RECT,0,0.08,0,width/2-0.005
RECT,0,0.08,width/2+0.005,0.08
TYPE,2
REAL,2
ESIZE,0.0005
/PNUM,AREA,ON
AMESH,7,8,1
ALLS
R,4
type,3      !SURF152
REAL,4   
asel,s,AREA,,2   !选中间的面2
AMESH,all   !面单元SURF152网格划分,其上加热流,忽略对流
ALLS
   
nummrg,node    !合并节点
***********************************************************************************************************
LSIZE=length/40   !单步长度
!以下部分为变速度修改   
*DIM,totalt,array,51
!计算匀速的前个单元步长时间t1(1-5)
*DIM,t1,array,11   
*DIM,velo1,array,12
*DO,I,0,11,1
velo1(I+1)=0.045
*ENDDO
*DO,n,1,11,1   !计算每小步时间
t1(n)=2*LSIZE/(velo1(n)+velo1(n+1))
*ENDDO

*DIM,t2,array,11   
*DIM,velo2,array,12
*DO,I,0,11,1
velo2(I+1)=0.045
*ENDDO
*DO,n,1,11,1   !计算每小步时间
t2(n)=2*LSIZE/(velo2(n)+velo2(n+1))
*ENDDO

*DIM,t3,array,9   
*DIM,velo3,array,10
*DO,I,0,9,1
velo3(I+1)=0.045
*ENDDO
*DO,n,1,9,1   !计算每小步时间
t3(n)=2*LSIZE/(velo3(n)+velo3(n+1))
*ENDDO

*DIM,t4,array,9   
*DIM,velo4,array,10
*DO,I,0,9,1
velo4(I+1)=0.045
*ENDDO
*DO,n,1,9,1   !计算每小步时间
t4(n)=2*LSIZE/(velo4(n)+velo4(n+1))
*ENDDO

*DO,n,1,6,1
totalt(n)=n*t1(1)   !光斑中心到达薄板前的三个时间点定为t1(1)
*ENDDO
   
*DO,n,1,11
totalt(n+6)=totalt(n+5)+t1(n)!存入总时间数组
*ENDDo
*Do,n,1,11
totalt(n+17)=totalt(n+16)+t2(n)!存入总时间数组
*ENDDo

*Do,n,1,9
totalt(n+28)=totalt(n+27)+t3(n)!存入总时间数组
*ENDDo
*DO,n,1,9
totalt(n+37)=totalt(n+36)+t4(n)!存入总时间数组
*ENDDo
*DO,n,1,5,1
totalt(n+46)=totalt(n+45)+t4(1)!光斑中心离开薄板前的三个时间点定为t1(1)
*ENDDO
!************************************************************************************************************
KK=1       !能量集中系数
MAX_TIME=41+10      !扫描起始和结束处各加五个时间点
MAX_X=41+10
MAX_Y=11
x1=0      !遍历单元时x的坐标
*DIM,FLUX2,TABLE,MAX_X,MAX_Y,MAX_TIME,X,Y,TIME
*DO,K,1,MAX_TIME,1
    *DO,I,1,5,1   !进入扫描前的三个坐标
   FLUX2(I,0,K)= -(6-I)*0.001   
    *ENDDO
   
    *DO,I,6,MAX_X-5,1   !扫描期间的坐标
   FLUX2(I,0,K)=(I-6)*LSIZE   
    *ENDDO
    *DO,I,47,MAX_X,1   !扫描结束的坐标
   FLUX2(I,0,K)=(I-46)*0.001+0.08      
    *ENDDO   
    *DO,J,1,MAX_Y,1
   FLUX2(0,J,K)=(J-1)*0.001+0.035!y方向只存储10个坐标y∈(0.035,0.045),因为光斑直径是0.006,扫描线位置是0.04
    *ENDDO

    *IF,K,LE,5,THEN      !光斑中心未到达薄板之前的三步      
   *DO,I,1,MAX_X,1   
      *DO,J,1,MAX_Y,1   !遍历所有单元
            XCENTER=-(6-K)*0.001
            YCENTER=width/2

            *IF,I,LE,5,THEN
         x1=-(6-I)*0.001
       *ELSEIF,I,LE,46,THEN
    x1=(I-6)*LSIZE
       *ELSE
    x1=(I-46)*0.001+0.08
       *ENDIF
            DISTANCE=SQRT((x1 -XCENTER)**2+((J-1)*0.001+0.035-YCENTER)**2)
            *IF,DISTANCE,LE,R,THEN      
      FLUX2(I,J,K)=(2*P*A)/(3.14*R*R)/EXP(2*kk*DISTANCE**2/(R**2))
            *ELSE
      FLUX2(I,J,K)=0    !其他区域为0
            *ENDIF
         *ENDDO
      *ENDDO
   *ELSEIF,K,LE,46,THEN    !光斑中心到达薄板   
   *DO,I,1,MAX_X,1   
      *DO,J,1,MAX_Y,1   !遍历所有单元
            XCENTER=(K-6)*LSIZE
            YCENTER=width/2
            *IF,I,LE,5,THEN
         x1=-(6-I)*0.001
       *ELSEIF,I,LE,46,THEN
    x1=(I-6)*LSIZE
       *ELSE
    x1=(I-46)*0.001+0.08
       *ENDIF
            DISTANCE=SQRT((x1 -XCENTER)**2+((J-1)*0.001+0.035-YCENTER)**2)
            *IF,DISTANCE,LE,R,THEN      
      FLUX2(I,J,K)=(2*P*A)/(3.14*R*R)/EXP(2*kk*DISTANCE**2/(R**2))
            *ELSE
      FLUX2(I,J,K)=0    !其他区域为0
            *ENDIF
         *ENDDO
      *ENDDO
    *ELSE      !光斑中心离开薄板之后的三步
   *DO,I,1,MAX_X,1   
      *DO,J,1,MAX_Y,1   !遍历所有单元
            XCENTER=(K-46)*0.001+0.08
            YCENTER=width/2
            *IF,I,LE,5,THEN
         x1=-(6-I)*0.001
       *ELSEIF,I,LE,46,THEN
    x1=(I-6)*LSIZE
       *ELSE
    x1=(I-46)*0.001+0.08
       *ENDIF
            DISTANCE=SQRT((x1 -XCENTER)**2+((J-1)*0.001+0.035-YCENTER)**2)
            *IF,DISTANCE,LE,R,THEN      
      FLUX2(I,J,K)=(2*P*A)/(3.14*R*R)/EXP(2*kk*DISTANCE**2/(R**2))
            *ELSE
      FLUX2(I,J,K)=0    !其他区域为0
            *ENDIF
         *ENDDO
      *ENDDO   
    *ENDIF
    FLUX2(0,0,K)=totalt(k)         !换页(时间)
*ENDDO
SAVE
allsel,all
WPOFFS,0,0,-0.001
/SOLU
ANTYPE,TRANS
TUNIF,25 !初始温度25度    !uniform temperature =25
      
esel,s,type,,1      !确定对流边界条件 加于solid70和plane13上
esel,a,type,,2
sf,all,conv,h,T0
!开始计算
nsubst,2,5,1
   TIMINT,ON
   AUTOTS,OFF
*DO,i,1,51,1
/VIEW,1,1,1,1
/ANG,1
/REP,FAST
TIME,totalt(i)
AUTOTS,0
KBC,0
TSRES,ERASE
nsel,s,loc,x,(i-1)*LSIZE-R,(i-1)*LSIZE+R    !选择要加载的单元
nsel,r,loc,y,width/2-R,width/2+R
nsel,r,loc,z,hight
ESLN
ESEL,R,TYPE,,3
sfe,all,,hflux,,%FLUX2%
allsel,all
SOLVE
OUTRES,ALL,ALL
/PSF,HFLUX,,3
/REPLOT
*ENDDO
!冷却100s******************************************
*do,nc,1,nclng,1
AUTOS,OFF
NSUBST,30,40,1
time,totalt(51)+airclng(nc)   
ESEL,S,TYPE,,3
sfe,all,,hflux,,0
allsel,all
solve
*enddo
OUTRES,ALL,ALL
/contour,all,30,auto
/replot

zhnllxy 发表于 2011-1-7 13:29:19

抱歉,上面有些注释没有更新,辐射由于对弯曲角度影响不大,已去掉。考虑热流,对流。奇怪的是我用shell63,solid45进行结构分析误差也很小。耦合的方法用尝试了三种:1)MPC(用shsd命令自动接触);2)嵌入两层(本贴的方法);3)在实体接触面上esurf一个壳,再和shell单元tie,也存在冷却后温度场错误的问题。
忘大侠及时出手相助啊,在线等。

zhnllxy 发表于 2011-1-10 16:24:42

没人顶啊~大家共同进步嘛!

tl123456 发表于 2011-1-11 08:30:28

为什么没有人奥?我的那个也是啊。。。很愁人啊:'(

zhnllxy 发表于 2011-1-12 21:23:16

我找到原因了,对流加载的问题,实体加载在solid70外表面,壳体加载在中间位置,加对流后厚度方向导致温度不均匀了!壳体明显散热快!但是还没有解决,4楼,有空我们探讨下啊

zhnllxy 发表于 2011-1-16 22:21:42

问题已解决,这一板块,人气也忒不旺,不过通过这次经历,觉得很多问题别人是帮不了你的,最多能给你点启发,解决还得靠自己多动动脑子!

守护蓝天 发表于 2011-3-22 10:09:17

谢谢楼主的启发!收藏了!

蓝沙 发表于 2011-11-12 14:03:11

自己动手丰衣足食呀~

小明12 发表于 2011-11-15 10:15:47

感谢楼主

bcd420 发表于 2012-11-22 21:11:15

又学习了
页: [1]
查看完整版本: 请教shell57,solid70的耦合