【讨论】移动热源的热应力计算
计算移动热源的温度分布,代码如下/CLEAR,NOSTART
/FILNAM,sample
/TITLE,RESIDUAL STRESS ANALYSIS
/UNITS,SI
/CONFIG,NRES,10000
/PREP7
ET,1,SOLID70
MP,DENS,1,5250
MP,C,1,650
MP,KXX,1,5
/VIEW,1,1,1,1
BLOCK,0,0.04,0,0.04,0,0.004
SAVE
LESIZE,1,,,40
LESIZE,4,,,40
LESIZE,9,,,4
MSHKEY,1
VATT,1,1,1
VMESH,1
/PNUM,DEFA
EPLOT
FINISH
/SOLU
LSIZE=0.001
V=0.4 !速度
TINC=LSIZE/V !单步时间长度
KK=1 !能量集中系数
Qmax=1800000
R=0.012
MAX_TIME=41
MAX_X=41
MAX_Y=41
*DIM,FLUX2,TABLE,MAX_X,MAX_Y,MAX_TIME,X,Y,TIME
*DO,K,1,MAX_TIME,1
*DO,I,1,MAX_X,1
FLUX2(I,0,K)=(I-1)*LSIZE
*ENDDO
*DO,J,1,MAX_Y,1
FLUX2(0,J,K)=(J-1)*LSIZE
*ENDDO
*DO,I,1,MAX_X,1
*DO,J,1,MAX_Y,1
XCENTER=V*(K-1)*TINC
YCENTER=0.02
DISTANCE=SQRT(((I-1)*LSIZE-XCENTER)**2+((J-1)*LSIZE-YCENTER)**2)
*IF,DISTANCE,LE,R,THEN
FLUX2(I,J,K)=Qmax/EXP(KK*DISTANCE**2/(2*0.004**2))
*ELSE
FLUX2(I,J,K)=0
*ENDIF
*ENDDO
*ENDDO
FLUX2(0,0,K)=(K-1)*TINC
*ENDDO
!开始计算
ANTYPE,TRANS
TUNIF,150 !初始温度150度
KBC,1
*SET,DELT,1
TIMINT,ON
AUTOTS,OFF
TT=0.1
*DO,TM,1E-6,TT,TINC
/VIEW,1,1,1,1
/ANG,1
/REP,FAST
FLST,2,1,5,ORDE,1
FITEM,2,2
/GO
!*
TIME,TM
AUTOTS,0
DELTIM, , , ,1
KBC,0
!*
TSRES,ERASE
FLST,2,1,5,ORDE,1
FITEM,2,2
/GO
!*
!*
SFA,P51X,1,HFLUX,%FLUX2%
/STATUS,SOLU
SOLVE
OUTRES,ALL,ALL,
/PSF,HFLUX,,2
/REPLOT
*ENDDO
OUTRES,ALL,ALL,
FINISH
最后,t=0.1s的温度分布如下图
回复: 【讨论】移动热源的热应力计算
应力计算的代码如下/SOLU
LSCLEAR,SOLID
/PREP7
ETCHG,TTS
MP,EX,1,3.66E11
MP,ALPX,1,7.962E-6
MP,NUXY,1,0.25
FINISH
/SOLU
DK,1,UX,0,,UY,UZ !固定底面左上角的顶点
*DO,tm,0.025,0.1,0.0025 !设置时间步长和区间
TIME,tm !当前时间为tm
LDREAD,TEMP,,,TIME,0,'stress','RTH' !读入时间tm时的温度分布
DELTIM,,,,1 !初始步长
SOLVE
*ENDDO
FINISH
但是得到的应力分布图从始至终都如下图所示,不知道是什么原因,请高手指教!!!
回复: 【讨论】移动热源的热应力计算
但是没有采用循环的方式计算,而采用分步计算,如下:/SOLU
LSCLEAR,SOLID
/PREP7
ETCHG,TTS
MP,EX,1,3.66E11
MP,ALPX,1,7.962E-6
MP,NUXY,1,0.25
FINISH
/SOLU
DK,1,UX,0,,UY,UZ !固定底面左上角的顶点
TIME,0.05 !当前时间为tm
LDREAD,TEMP,,,TIME,0,'stress','RTH' !读入时间tm时的温度分布
DELTIM,,,,1 !初始步长
SOLVE
FINISH
分别算得0.05s和0.1s时的应力图如下,不知道为什么会出现这样的结果?
回复: 【讨论】移动热源的热应力计算
0.1s的图回复: 【讨论】移动热源的热应力计算
一口气看完你的原创,感觉很不一般。进步飞快啊!我想高斯热源定义已经解决了。现在没空运行程序,只提1个小疑问:
温度场计算时
*DO,TM,1E-6,TT,TINC
应力分析时*DO,tm,0.025,0.1,0.0025 !
为什么不一致?
回复: 【讨论】移动热源的热应力计算
风之子,你好,说到高斯热源的东东,那还要非常感谢你的帮助哟,看到最近的帖子中,问道这方面的问题还很多,真希望他们都能从你提供的例子中受益。温度场计算时
*DO,TM,1E-6,TT,TINC
应力分析时*DO,tm,0.025,0.1,0.0025 !
为什么不一致?/red
这是因为我在用循环计算应力时,当第一步初值为0或者小于0的极小值时,系统会报错,说计算过程中遇到不合理的温度参数,从而出现极小的负数,然后计算就停止了。把初始值取道第2步时,就没有这个问题。但是整个循环得到的应力值都是一个相同的值,如以上所述,不知道问题出在哪里,还要请你多多指教哟,谢谢!
回复: 【讨论】移动热源的热应力计算
对了,我输入有点问题,如果是循环,应该是:从第2步到第41步*DO,tm,0.0025,0.1,0.0025 ! /red
回复: 【讨论】移动热源的热应力计算
我觉得你不对,时间从多会开始扫描就是从多会开始。没有说截取一段的。那相当于有的初始的载荷根本就没加上去。回复: 【讨论】移动热源的热应力计算
我又计算过,当tm取0时的确会报警,但改为1E-6就可以了,但是整个循环的结果总是不变,不知道为什么,是不是差一个restar的命令,我也不清楚,请指教!回复: 【讨论】移动热源的热应力计算
这一段主要的功能是选择一个面准备进行热源的加载,至于那几个命令,看看帮助会更明白一些。
回复: 【讨论】移动热源的热应力计算
我又计算过,当tm取0时的确会报警,但改为1E-6就可以了,但是整个循环的结果总是不变,不知道为什么,是不是差一个restar的命令,我也不清楚,请指教!我的机子这几天每天算东西,实在没空试。我想应该用1E-6,因为ANSYS非线性分析就要求时间开始点不能为0,可以取一个很小的正数。
从命令流看是绝热条件,且导热性不强。最高温度也就174C,你再分析一下。关于restar的命令,我想用不着,耦合分析读入温度载荷即可。用不上重启动啊。
回复: 【讨论】移动热源的热应力计算
瞬态温度场的计算时,循环是在上一步的计算结果上叠加,每一步的计算结果都受到前面的温度场的影响。但是在进行应力场的计算时,不知道采用循环时,每一步之间是否相互有影响?按说应该没有,因为每一步都是读取的每一瞬时的温度场来计算。但是我计算得到的应力场,采用循环计算和单步计算时,得到的应力结果却不一样。如前所述,不知道是为什么,请指教! 好贴,收藏了,呵呵 mark一下 . :victory::victory: mark一下
页:
[1]